Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrschnekenbu2010-12-15 19:20:04 +0000
committerrschnekenbu2010-12-15 19:20:04 +0000
commitbd9b7c1a92492d122a83cde5f17a526aa5e17bf8 (patch)
tree78c3afe7a10fa98595d74c39f09ecc80a3603ba9 /plugins/developer
parenta20113be395f6df38c427c2c4490f6a0138f0775 (diff)
downloadorg.eclipse.papyrus-bd9b7c1a92492d122a83cde5f17a526aa5e17bf8.tar.gz
org.eclipse.papyrus-bd9b7c1a92492d122a83cde5f17a526aa5e17bf8.tar.xz
org.eclipse.papyrus-bd9b7c1a92492d122a83cde5f17a526aa5e17bf8.zip
Merged branch 0.7.X changes r3519:3548 into the trunk
Diffstat (limited to 'plugins/developer')
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/.classpath2
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateCommandDeclaration_commands_Command.gifbin0 -> 223 bytes
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateDomainContext_advices_Advice.gifbin0 -> 223 bytes
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateDomainContext_bindings_ElementTypeBindings.gifbin0 -> 223 bytes
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateDomainContext_command_CommandDeclaration.gifbin0 -> 223 bytes
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateDomainContext_menu_MenuDeclaration.gifbin0 -> 223 bytes
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateElementTypeBindings_bindings_AdviceBinding.gifbin0 -> 223 bytes
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateElementTypeBindings_bindings_ElementTypeBinding.gifbin0 -> 223 bytes
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateElementTypes_types_MetaClassType.gifbin0 -> 223 bytes
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateElementTypes_types_SpecializationType.gifbin0 -> 223 bytes
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateSpecializationType_genHelper_StereotypedElementHelper.gifbin0 -> 223 bytes
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateSpecializationType_genMatcher_StereotypedElementMatcher.gifbin0 -> 223 bytes
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/Advice.gifbin0 -> 129 bytes
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/Command.gifbin0 -> 129 bytes
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/CommandDeclaration.gifbin0 -> 129 bytes
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/ElementTypeBinding.gifbin0 -> 129 bytes
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/ElementTypeBindings.gifbin0 -> 129 bytes
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/MenuDeclaration.gifbin0 -> 129 bytes
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/MetaClassType.gifbin0 -> 129 bytes
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/SpecializationType.gifbin0 -> 129 bytes
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/StereotypedElementHelper.gifbin0 -> 129 bytes
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/StereotypedElementMatcher.gifbin0 -> 129 bytes
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/plugin.properties57
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/AdviceBindingItemProvider.java97
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/AdviceItemProvider.java184
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/BindingItemProvider.java50
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/CommandDeclarationItemProvider.java167
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/CommandItemProvider.java158
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/DomainContextItemProvider.java30
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/DomaincontextcodegenItemProviderAdapterFactory.java266
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/ElementTypeBindingItemProvider.java131
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/ElementTypeBindingsItemProvider.java187
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/ElementTypeItemProvider.java70
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/ElementTypesItemProvider.java5
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/GenHandlersItemProvider.java38
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/GenHelperItemProvider.java134
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/GenMatcherItemProvider.java134
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/MenuDeclarationItemProvider.java158
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/MetaClassTypeItemProvider.java124
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/SpecializationTypeItemProvider.java187
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/StereotypedElementHelperItemProvider.java171
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/StereotypedElementMatcherItemProvider.java171
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.editor/.classpath2
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.editor/src/org/eclipse/papyrus/domaincontextcodegen/presentation/DomainContextEditorPlugin.java26
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.editor/src/org/eclipse/papyrus/domaincontextcodegen/presentation/DomaincontextcodegenActionBarContributor.java144
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.editor/src/org/eclipse/papyrus/domaincontextcodegen/presentation/DomaincontextcodegenEditor.java1088
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen.editor/src/org/eclipse/papyrus/domaincontextcodegen/presentation/DomaincontextcodegenModelWizard.java269
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/actionsrc/org/eclipse/papyrus/domaincontextcodegen/AddBindingsAction.java57
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/actionsrc/org/eclipse/papyrus/domaincontextcodegen/AddVisibleCommandForChildrenAction.java60
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/actionsrc/org/eclipse/papyrus/domaincontextcodegen/ElementTypeComparator.java4
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/actionsrc/org/eclipse/papyrus/domaincontextcodegen/GenerateElementTypeModelAction.java19
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/actionsrc/org/eclipse/papyrus/domaincontextcodegen/SetUMLIconInElementTypesAction.java55
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/build.properties5
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/plugin.xml28
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/resource/DomainContext.ecore110
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/resource/DomainContext.genmodel80
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/Advice.java147
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/AdviceBinding.java146
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/Binding.java79
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/Command.java86
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/CommandDeclaration.java46
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/DomainContext.java85
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/DomaincontextcodegenFactory.java98
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/DomaincontextcodegenPackage.java1827
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/ElementType.java155
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/ElementTypeBinding.java55
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/ElementTypeBindings.java78
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/ElementTypes.java36
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/GenHandlers.java65
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/GenHelper.java57
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/GenMatcher.java57
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/MenuDeclaration.java75
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/MetaClassType.java57
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/SpecializationType.java144
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/StereotypedElementHelper.java146
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/StereotypedElementMatcher.java146
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/AdviceBindingImpl.java306
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/AdviceImpl.java361
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/BindingImpl.java192
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/CommandDeclarationImpl.java161
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/CommandImpl.java244
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/DomainContextImpl.java207
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/DomaincontextcodegenFactoryImpl.java142
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/DomaincontextcodegenPackageImpl.java742
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/ElementTypeBindingImpl.java169
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/ElementTypeBindingsImpl.java253
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/ElementTypeImpl.java337
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/ElementTypesImpl.java101
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/GenHandlersImpl.java136
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/GenHelperImpl.java177
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/GenMatcherImpl.java177
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/MenuDeclarationImpl.java219
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/MetaClassTypeImpl.java168
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/SpecializationTypeImpl.java405
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/StereotypedElementHelperImpl.java350
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/StereotypedElementMatcherImpl.java350
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/util/DomaincontextcodegenAdapterFactory.java263
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/util/DomaincontextcodegenSwitch.java330
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/ModelUtils.mtl13
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/generateElementHandler.mtl53
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/generateElementTypeClass.mtl134
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/generateHandlers.mtl1
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/generateXMLElementHandler.mtl42
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/generateXMLElementType.mtl79
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/utils/ModelUtils.java51
-rw-r--r--plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/utils/StringUtils.java19
106 files changed, 11855 insertions, 2380 deletions
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/.classpath b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/.classpath
index 2d1a4302f04..45f024e850e 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/.classpath
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/.classpath
@@ -1,7 +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="src" path="src"/>
<classpathentry kind="output" path="bin"/>
</classpath>
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateCommandDeclaration_commands_Command.gif b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateCommandDeclaration_commands_Command.gif
new file mode 100644
index 00000000000..1b2d814f92e
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateCommandDeclaration_commands_Command.gif
Binary files differ
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateDomainContext_advices_Advice.gif b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateDomainContext_advices_Advice.gif
new file mode 100644
index 00000000000..55ee60b02ec
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateDomainContext_advices_Advice.gif
Binary files differ
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateDomainContext_bindings_ElementTypeBindings.gif b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateDomainContext_bindings_ElementTypeBindings.gif
new file mode 100644
index 00000000000..2a3bcb38980
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateDomainContext_bindings_ElementTypeBindings.gif
Binary files differ
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateDomainContext_command_CommandDeclaration.gif b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateDomainContext_command_CommandDeclaration.gif
new file mode 100644
index 00000000000..be37fbc7077
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateDomainContext_command_CommandDeclaration.gif
Binary files differ
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateDomainContext_menu_MenuDeclaration.gif b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateDomainContext_menu_MenuDeclaration.gif
new file mode 100644
index 00000000000..91619bc626b
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateDomainContext_menu_MenuDeclaration.gif
Binary files differ
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateElementTypeBindings_bindings_AdviceBinding.gif b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateElementTypeBindings_bindings_AdviceBinding.gif
new file mode 100644
index 00000000000..e2efc630b97
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateElementTypeBindings_bindings_AdviceBinding.gif
Binary files differ
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateElementTypeBindings_bindings_ElementTypeBinding.gif b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateElementTypeBindings_bindings_ElementTypeBinding.gif
new file mode 100644
index 00000000000..3ed52d7309b
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateElementTypeBindings_bindings_ElementTypeBinding.gif
Binary files differ
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateElementTypes_types_MetaClassType.gif b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateElementTypes_types_MetaClassType.gif
new file mode 100644
index 00000000000..0cf5f67ddb4
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateElementTypes_types_MetaClassType.gif
Binary files differ
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateElementTypes_types_SpecializationType.gif b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateElementTypes_types_SpecializationType.gif
new file mode 100644
index 00000000000..de440818fe2
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateElementTypes_types_SpecializationType.gif
Binary files differ
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateSpecializationType_genHelper_StereotypedElementHelper.gif b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateSpecializationType_genHelper_StereotypedElementHelper.gif
new file mode 100644
index 00000000000..2833425da49
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateSpecializationType_genHelper_StereotypedElementHelper.gif
Binary files differ
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateSpecializationType_genMatcher_StereotypedElementMatcher.gif b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateSpecializationType_genMatcher_StereotypedElementMatcher.gif
new file mode 100644
index 00000000000..a8269f3ea60
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/ctool16/CreateSpecializationType_genMatcher_StereotypedElementMatcher.gif
Binary files differ
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/Advice.gif b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/Advice.gif
new file mode 100644
index 00000000000..be22463d291
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/Advice.gif
Binary files differ
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/Command.gif b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/Command.gif
new file mode 100644
index 00000000000..904159880b3
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/Command.gif
Binary files differ
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/CommandDeclaration.gif b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/CommandDeclaration.gif
new file mode 100644
index 00000000000..c00aedf4135
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/CommandDeclaration.gif
Binary files differ
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/ElementTypeBinding.gif b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/ElementTypeBinding.gif
new file mode 100644
index 00000000000..338fb8d9a72
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/ElementTypeBinding.gif
Binary files differ
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/ElementTypeBindings.gif b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/ElementTypeBindings.gif
new file mode 100644
index 00000000000..53500daf98e
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/ElementTypeBindings.gif
Binary files differ
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/MenuDeclaration.gif b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/MenuDeclaration.gif
new file mode 100644
index 00000000000..2b692560297
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/MenuDeclaration.gif
Binary files differ
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/MetaClassType.gif b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/MetaClassType.gif
new file mode 100644
index 00000000000..ed874747401
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/MetaClassType.gif
Binary files differ
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/SpecializationType.gif b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/SpecializationType.gif
new file mode 100644
index 00000000000..33a997a1606
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/SpecializationType.gif
Binary files differ
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/StereotypedElementHelper.gif b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/StereotypedElementHelper.gif
new file mode 100644
index 00000000000..14af8aaee9f
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/StereotypedElementHelper.gif
Binary files differ
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/StereotypedElementMatcher.gif b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/StereotypedElementMatcher.gif
new file mode 100644
index 00000000000..badaab0664a
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/icons/full/obj16/StereotypedElementMatcher.gif
Binary files differ
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/plugin.properties b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/plugin.properties
index 0e70274c653..688975d357e 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/plugin.properties
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/plugin.properties
@@ -78,3 +78,60 @@ _UI_ElementTypes_types_feature = Types
_UI_DomainContext_typeProjectName_feature = Type Project Name
_UI_DomainContext_handlerProjectName_feature = Handler Project Name
_UI_DomainContext_generatedSourceFolder_feature = Generated Source Folder
+_UI_MetaClassType_type = Meta Class Type
+_UI_SpecializationType_type = Specialization Type
+_UI_Advice_type = Advice
+_UI_ElementTypeBindings_type = Element Type Bindings
+_UI_ElementTypeBinding_type = Element Type Binding
+_UI_DomainContext_advices_feature = Advices
+_UI_ElementType_name_feature = Name
+_UI_ElementType_helper_feature = Helper
+_UI_MetaClassType_metaClass_feature = Meta Class
+_UI_SpecializationType_ref_feature = Ref
+_UI_Advice_adviceID_feature = Advice ID
+_UI_Advice_ref_feature = Ref
+_UI_Advice_advicePath_feature = Advice Path
+_UI_Advice_inheritance_feature = Inheritance
+_UI_ElementTypeBindings_clientContextID_feature = Client Context ID
+_UI_ElementTypeBindings_bindings_feature = Bindings
+_UI_Binding_owner_feature = Owner
+_UI_Binding_pattern_feature = Pattern
+_UI_ElementTypeBinding_ref_feature = Ref
+_UI_AdviceBinding_ref_feature = Ref
+_UI_SpecializationType_matcher_feature = Matcher
+_UI_ElementTypes_domain_feature = Domain
+_UI_ElementType_owner_feature = Owner
+_UI_GenMatcher_type = Gen Matcher
+_UI_GenHelper_type = Gen Helper
+_UI_StereotypedElementMatcher_type = Stereotyped Element Matcher
+_UI_StereotypedElementHelper_type = Stereotyped Element Helper
+_UI_SpecializationType_genMatcher_feature = Gen Matcher
+_UI_SpecializationType_genHelper_feature = Gen Helper
+_UI_GenMatcher_name_feature = Name
+_UI_GenHelper_name_feature = Name
+_UI_StereotypedElementMatcher_stereotype_feature = Stereotype
+_UI_StereotypedElementHelper_stereotype_feature = Stereotype
+_UI_StereotypedElementMatcher_stereotypeBase_feature = Stereotype Base
+_UI_StereotypedElementHelper_stereotypeBase_feature = Stereotype Base
+_UI_StereotypedElementMatcher_stereotypeName_feature = Stereotype Name
+_UI_StereotypedElementMatcher_stereotypePackage_feature = Stereotype Package
+_UI_StereotypedElementMatcher_baseElementName_feature = Base Element Name
+_UI_StereotypedElementMatcher_baseElementPackage_feature = Base Element Package
+_UI_StereotypedElementHelper_stereotypeName_feature = Stereotype Name
+_UI_StereotypedElementHelper_stereotypePackage_feature = Stereotype Package
+_UI_StereotypedElementHelper_baseElementName_feature = Base Element Name
+_UI_StereotypedElementHelper_baseElementPackage_feature = Base Element Package
+_UI_GenHandlers_visibleCreateChildHandlers_feature = Visible Create Child Handlers
+_UI_GenHandlers_parentDomainCreateChild_feature = Parent Domain Create Child
+_UI_MenuDeclaration_type = Menu Declaration
+_UI_CommandDeclaration_type = Command Declaration
+_UI_Command_type = Command
+_UI_DomainContext_menu_feature = Menu
+_UI_DomainContext_command_feature = Command
+_UI_ElementType_icon_feature = Icon
+_UI_MenuDeclaration_locationURI_feature = Location URI
+_UI_MenuDeclaration_commands_feature = Commands
+_UI_CommandDeclaration_commands_feature = Commands
+_UI_Command_elementType_feature = Element Type
+_UI_Command_icon_feature = Icon
+_UI_GenHandlers_createChildMenuLocationURI_feature = Create Child Menu Location URI
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/AdviceBindingItemProvider.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/AdviceBindingItemProvider.java
index 5fa21cc4f1d..83f9e704010 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/AdviceBindingItemProvider.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/AdviceBindingItemProvider.java
@@ -6,13 +6,11 @@
*/
package org.eclipse.papyrus.domaincontextcodegen.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;
@@ -20,9 +18,6 @@ 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.domaincontextcodegen.AdviceBinding;
import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage;
@@ -33,7 +28,7 @@ import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage;
*
* @generated
*/
-public class AdviceBindingItemProvider extends ItemProviderAdapter implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource {
+public class AdviceBindingItemProvider extends BindingItemProvider implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource {
/**
* This constructs an instance from a factory and a notifier.
@@ -58,68 +53,20 @@ public class AdviceBindingItemProvider extends ItemProviderAdapter implements IE
if(itemPropertyDescriptors == null) {
super.getPropertyDescriptors(object);
- addAdvicePathPropertyDescriptor(object);
- addAdviceIDPropertyDescriptor(object);
- addInheritancePropertyDescriptor(object);
- addElementTypeRefPropertyDescriptor(object);
- addElementTypeIDrefPropertyDescriptor(object);
+ addRefPropertyDescriptor(object);
}
return itemPropertyDescriptors;
}
/**
- * This adds a property descriptor for the Advice Path feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @generated
- */
- protected void addAdvicePathPropertyDescriptor(Object object) {
- itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_AdviceBinding_advicePath_feature"), getString("_UI_PropertyDescriptor_description", "_UI_AdviceBinding_advicePath_feature", "_UI_AdviceBinding_type"), DomaincontextcodegenPackage.Literals.ADVICE_BINDING__ADVICE_PATH, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
- }
-
- /**
- * This adds a property descriptor for the Advice ID feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @generated
- */
- protected void addAdviceIDPropertyDescriptor(Object object) {
- itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_AdviceBinding_adviceID_feature"), getString("_UI_PropertyDescriptor_description", "_UI_AdviceBinding_adviceID_feature", "_UI_AdviceBinding_type"), DomaincontextcodegenPackage.Literals.ADVICE_BINDING__ADVICE_ID, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
- }
-
- /**
- * This adds a property descriptor for the Inheritance feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @generated
- */
- protected void addInheritancePropertyDescriptor(Object object) {
- itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_AdviceBinding_inheritance_feature"), getString("_UI_PropertyDescriptor_description", "_UI_AdviceBinding_inheritance_feature", "_UI_AdviceBinding_type"), DomaincontextcodegenPackage.Literals.ADVICE_BINDING__INHERITANCE, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
- }
-
- /**
- * This adds a property descriptor for the Element Type Ref feature.
+ * This adds a property descriptor for the Ref feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
*/
- protected void addElementTypeRefPropertyDescriptor(Object object) {
- itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_AdviceBinding_elementTypeRef_feature"), getString("_UI_PropertyDescriptor_description", "_UI_AdviceBinding_elementTypeRef_feature", "_UI_AdviceBinding_type"), DomaincontextcodegenPackage.Literals.ADVICE_BINDING__ELEMENT_TYPE_REF, true, false, true, null, null, null));
- }
-
- /**
- * This adds a property descriptor for the Element Type IDref feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @generated
- */
- protected void addElementTypeIDrefPropertyDescriptor(Object object) {
- itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_AdviceBinding_elementTypeIDref_feature"), getString("_UI_PropertyDescriptor_description", "_UI_AdviceBinding_elementTypeIDref_feature", "_UI_AdviceBinding_type"), DomaincontextcodegenPackage.Literals.ADVICE_BINDING__ELEMENT_TYPE_IDREF, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+ protected void addRefPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_AdviceBinding_ref_feature"), getString("_UI_PropertyDescriptor_description", "_UI_AdviceBinding_ref_feature", "_UI_AdviceBinding_type"), DomaincontextcodegenPackage.Literals.ADVICE_BINDING__REF, true, false, true, null, null, null));
}
/**
@@ -139,12 +86,19 @@ public class AdviceBindingItemProvider extends ItemProviderAdapter implements IE
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @generated
+ * @generated NOT
*/
@Override
public String getText(Object object) {
- String label = ((AdviceBinding)object).getAdvicePath();
- return label == null || label.length() == 0 ? getString("_UI_AdviceBinding_type") : getString("_UI_AdviceBinding_type") + " " + label;
+
+ AdviceBinding binding = (AdviceBinding)object;
+ String label = "pattern : " + binding.getPattern();
+
+ if((binding.getRef() != null) && (binding.getRef().getAdviceID() != null)) {
+ label = "ref. : " + binding.getRef().getAdviceID();
+ }
+
+ return label == null || label.length() == 0 ? getString("_UI_AdviceBinding_type") : label + " (" + getString("_UI_AdviceBinding_type") + ")";
}
/**
@@ -158,15 +112,6 @@ public class AdviceBindingItemProvider extends ItemProviderAdapter implements IE
@Override
public void notifyChanged(Notification notification) {
updateChildren(notification);
-
- switch(notification.getFeatureID(AdviceBinding.class)) {
- case DomaincontextcodegenPackage.ADVICE_BINDING__ADVICE_PATH:
- case DomaincontextcodegenPackage.ADVICE_BINDING__ADVICE_ID:
- case DomaincontextcodegenPackage.ADVICE_BINDING__INHERITANCE:
- case DomaincontextcodegenPackage.ADVICE_BINDING__ELEMENT_TYPE_IDREF:
- fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
- return;
- }
super.notifyChanged(notification);
}
@@ -183,16 +128,4 @@ public class AdviceBindingItemProvider extends ItemProviderAdapter implements IE
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 DomainContextEditPlugin.INSTANCE;
- }
-
}
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/AdviceItemProvider.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/AdviceItemProvider.java
new file mode 100644
index 00000000000..1f9a11e313c
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/AdviceItemProvider.java
@@ -0,0 +1,184 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen.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.domaincontextcodegen.Advice;
+import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.domaincontextcodegen.Advice} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class AdviceItemProvider 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 AdviceItemProvider(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);
+
+ addAdviceIDPropertyDescriptor(object);
+ addRefPropertyDescriptor(object);
+ addAdvicePathPropertyDescriptor(object);
+ addInheritancePropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Advice ID feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected void addAdviceIDPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Advice_adviceID_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Advice_adviceID_feature", "_UI_Advice_type"), DomaincontextcodegenPackage.Literals.ADVICE__ADVICE_ID, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+ }
+
+ /**
+ * This adds a property descriptor for the Ref feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected void addRefPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Advice_ref_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Advice_ref_feature", "_UI_Advice_type"), DomaincontextcodegenPackage.Literals.ADVICE__REF, true, false, true, null, null, null));
+ }
+
+ /**
+ * This adds a property descriptor for the Advice Path feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected void addAdvicePathPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Advice_advicePath_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Advice_advicePath_feature", "_UI_Advice_type"), DomaincontextcodegenPackage.Literals.ADVICE__ADVICE_PATH, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+ }
+
+ /**
+ * This adds a property descriptor for the Inheritance feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected void addInheritancePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Advice_inheritance_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Advice_inheritance_feature", "_UI_Advice_type"), DomaincontextcodegenPackage.Literals.ADVICE__INHERITANCE, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+ }
+
+ /**
+ * This returns Advice.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/Advice"));
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((Advice)object).getAdviceID();
+ return label == null || label.length() == 0 ? getString("_UI_Advice_type") : getString("_UI_Advice_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(Advice.class)) {
+ case DomaincontextcodegenPackage.ADVICE__ADVICE_ID:
+ case DomaincontextcodegenPackage.ADVICE__ADVICE_PATH:
+ case DomaincontextcodegenPackage.ADVICE__INHERITANCE:
+ 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 DomainContextEditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/BindingItemProvider.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/BindingItemProvider.java
index 71f81988cbd..fde7b914462 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/BindingItemProvider.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/BindingItemProvider.java
@@ -6,7 +6,6 @@
*/
package org.eclipse.papyrus.domaincontextcodegen.provider;
-
import java.util.Collection;
import java.util.List;
@@ -58,56 +57,20 @@ public class BindingItemProvider extends ItemProviderAdapter implements IEditing
if(itemPropertyDescriptors == null) {
super.getPropertyDescriptors(object);
- addAdvicePropertyDescriptor(object);
- addElementTypePatternPropertyDescriptor(object);
- addAdviceIDPropertyDescriptor(object);
+ addPatternPropertyDescriptor(object);
}
return itemPropertyDescriptors;
}
/**
- * This adds a property descriptor for the Advice feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @generated
- */
- protected void addAdvicePropertyDescriptor(Object object) {
- itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Binding_advice_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Binding_advice_feature", "_UI_Binding_type"), DomaincontextcodegenPackage.Literals.BINDING__ADVICE, true, false, true, null, null, null));
- }
-
- /**
- * This adds a property descriptor for the Element Type Pattern feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @generated
- */
- protected void addElementTypePatternPropertyDescriptor(Object object) {
- itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Binding_elementTypePattern_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Binding_elementTypePattern_feature", "_UI_Binding_type"), DomaincontextcodegenPackage.Literals.BINDING__ELEMENT_TYPE_PATTERN, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
- }
-
- /**
- * This adds a property descriptor for the Advice ID feature.
+ * This adds a property descriptor for the Pattern feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
*/
- protected void addAdviceIDPropertyDescriptor(Object object) {
- itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Binding_adviceID_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Binding_adviceID_feature", "_UI_Binding_type"), DomaincontextcodegenPackage.Literals.BINDING__ADVICE_ID, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
- }
-
- /**
- * This returns Binding.gif.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @generated
- */
- @Override
- public Object getImage(Object object) {
- return overlayImage(object, getResourceLocator().getImage("full/obj16/Binding"));
+ protected void addPatternPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Binding_pattern_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Binding_pattern_feature", "_UI_Binding_type"), DomaincontextcodegenPackage.Literals.BINDING__PATTERN, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
}
/**
@@ -119,7 +82,7 @@ public class BindingItemProvider extends ItemProviderAdapter implements IEditing
*/
@Override
public String getText(Object object) {
- String label = ((Binding)object).getElementTypePattern();
+ String label = ((Binding)object).getPattern();
return label == null || label.length() == 0 ? getString("_UI_Binding_type") : getString("_UI_Binding_type") + " " + label;
}
@@ -136,8 +99,7 @@ public class BindingItemProvider extends ItemProviderAdapter implements IEditing
updateChildren(notification);
switch(notification.getFeatureID(Binding.class)) {
- case DomaincontextcodegenPackage.BINDING__ELEMENT_TYPE_PATTERN:
- case DomaincontextcodegenPackage.BINDING__ADVICE_ID:
+ case DomaincontextcodegenPackage.BINDING__PATTERN:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
return;
}
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/CommandDeclarationItemProvider.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/CommandDeclarationItemProvider.java
new file mode 100644
index 00000000000..4a9939447f2
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/CommandDeclarationItemProvider.java
@@ -0,0 +1,167 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen.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.ItemProviderAdapter;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.domaincontextcodegen.CommandDeclaration;
+import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenFactory;
+import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.domaincontextcodegen.CommandDeclaration} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class CommandDeclarationItemProvider 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 CommandDeclarationItemProvider(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(DomaincontextcodegenPackage.Literals.COMMAND_DECLARATION__COMMANDS);
+ }
+ 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 CommandDeclaration.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/CommandDeclaration"));
+ }
+
+ /**
+ * 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_CommandDeclaration_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(CommandDeclaration.class)) {
+ case DomaincontextcodegenPackage.COMMAND_DECLARATION__COMMANDS:
+ 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(DomaincontextcodegenPackage.Literals.COMMAND_DECLARATION__COMMANDS, DomaincontextcodegenFactory.eINSTANCE.createCommand()));
+ }
+
+ /**
+ * Return the resource locator for this item provider's resources.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public ResourceLocator getResourceLocator() {
+ return DomainContextEditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/CommandItemProvider.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/CommandItemProvider.java
new file mode 100644
index 00000000000..f4bee249bfe
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/CommandItemProvider.java
@@ -0,0 +1,158 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen.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.domaincontextcodegen.Command;
+import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.domaincontextcodegen.Command} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class CommandItemProvider 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 CommandItemProvider(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);
+
+ addElementTypePropertyDescriptor(object);
+ addIconPropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Element Type feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected void addElementTypePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Command_elementType_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Command_elementType_feature", "_UI_Command_type"), DomaincontextcodegenPackage.Literals.COMMAND__ELEMENT_TYPE, true, false, true, null, null, null));
+ }
+
+ /**
+ * This adds a property descriptor for the Icon feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected void addIconPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_Command_icon_feature"), getString("_UI_PropertyDescriptor_description", "_UI_Command_icon_feature", "_UI_Command_type"), DomaincontextcodegenPackage.Literals.COMMAND__ICON, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+ }
+
+ /**
+ * This returns Command.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/Command"));
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((Command)object).getIcon();
+ return label == null || label.length() == 0 ? getString("_UI_Command_type") : getString("_UI_Command_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(Command.class)) {
+ case DomaincontextcodegenPackage.COMMAND__ICON:
+ 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 DomainContextEditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/DomainContextItemProvider.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/DomainContextItemProvider.java
index ba13f51889b..bc391f9e415 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/DomainContextItemProvider.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/DomainContextItemProvider.java
@@ -6,7 +6,6 @@
*/
package org.eclipse.papyrus.domaincontextcodegen.provider;
-
import java.util.Collection;
import java.util.List;
@@ -67,7 +66,6 @@ public class DomainContextItemProvider extends ItemProviderAdapter implements IE
addSpecializationOfPropertyDescriptor(object);
addElementTypeIDPrefixPropertyDescriptor(object);
addElementTypeNamePrefixPropertyDescriptor(object);
- addMatcherPatchPropertyDescriptor(object);
addDefaultHelperPathPropertyDescriptor(object);
addGeneratedSourceFolderPropertyDescriptor(object);
}
@@ -152,17 +150,6 @@ public class DomainContextItemProvider extends ItemProviderAdapter implements IE
}
/**
- * This adds a property descriptor for the Matcher Patch feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @generated
- */
- protected void addMatcherPatchPropertyDescriptor(Object object) {
- itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_DomainContext_matcherPatch_feature"), getString("_UI_PropertyDescriptor_description", "_UI_DomainContext_matcherPatch_feature", "_UI_DomainContext_type"), DomaincontextcodegenPackage.Literals.DOMAIN_CONTEXT__MATCHER_PATCH, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
- }
-
- /**
* This adds a property descriptor for the Default Helper Path feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -198,9 +185,11 @@ public class DomainContextItemProvider extends ItemProviderAdapter implements IE
if(childrenFeatures == null) {
super.getChildrenFeatures(object);
childrenFeatures.add(DomaincontextcodegenPackage.Literals.DOMAIN_CONTEXT__ELEMENT_TYPES);
- childrenFeatures.add(DomaincontextcodegenPackage.Literals.DOMAIN_CONTEXT__ADVICEBINDINGS);
+ childrenFeatures.add(DomaincontextcodegenPackage.Literals.DOMAIN_CONTEXT__ADVICES);
childrenFeatures.add(DomaincontextcodegenPackage.Literals.DOMAIN_CONTEXT__BINDINGS);
childrenFeatures.add(DomaincontextcodegenPackage.Literals.DOMAIN_CONTEXT__GEN_HANDLERS);
+ childrenFeatures.add(DomaincontextcodegenPackage.Literals.DOMAIN_CONTEXT__MENU);
+ childrenFeatures.add(DomaincontextcodegenPackage.Literals.DOMAIN_CONTEXT__COMMAND);
}
return childrenFeatures;
}
@@ -262,15 +251,16 @@ public class DomainContextItemProvider extends ItemProviderAdapter implements IE
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__ICLIENT_CONTEXT_ID:
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__ELEMENT_TYPE_ID_PREFIX:
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__ELEMENT_TYPE_NAME_PREFIX:
- case DomaincontextcodegenPackage.DOMAIN_CONTEXT__MATCHER_PATCH:
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__DEFAULT_HELPER_PATH:
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__GENERATED_SOURCE_FOLDER:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
return;
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__ELEMENT_TYPES:
- case DomaincontextcodegenPackage.DOMAIN_CONTEXT__ADVICEBINDINGS:
+ case DomaincontextcodegenPackage.DOMAIN_CONTEXT__ADVICES:
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__BINDINGS:
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__GEN_HANDLERS:
+ case DomaincontextcodegenPackage.DOMAIN_CONTEXT__MENU:
+ case DomaincontextcodegenPackage.DOMAIN_CONTEXT__COMMAND:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
return;
}
@@ -291,11 +281,15 @@ public class DomainContextItemProvider extends ItemProviderAdapter implements IE
newChildDescriptors.add(createChildParameter(DomaincontextcodegenPackage.Literals.DOMAIN_CONTEXT__ELEMENT_TYPES, DomaincontextcodegenFactory.eINSTANCE.createElementTypes()));
- newChildDescriptors.add(createChildParameter(DomaincontextcodegenPackage.Literals.DOMAIN_CONTEXT__ADVICEBINDINGS, DomaincontextcodegenFactory.eINSTANCE.createAdviceBinding()));
+ newChildDescriptors.add(createChildParameter(DomaincontextcodegenPackage.Literals.DOMAIN_CONTEXT__ADVICES, DomaincontextcodegenFactory.eINSTANCE.createAdvice()));
- newChildDescriptors.add(createChildParameter(DomaincontextcodegenPackage.Literals.DOMAIN_CONTEXT__BINDINGS, DomaincontextcodegenFactory.eINSTANCE.createBinding()));
+ newChildDescriptors.add(createChildParameter(DomaincontextcodegenPackage.Literals.DOMAIN_CONTEXT__BINDINGS, DomaincontextcodegenFactory.eINSTANCE.createElementTypeBindings()));
newChildDescriptors.add(createChildParameter(DomaincontextcodegenPackage.Literals.DOMAIN_CONTEXT__GEN_HANDLERS, DomaincontextcodegenFactory.eINSTANCE.createGenHandlers()));
+
+ newChildDescriptors.add(createChildParameter(DomaincontextcodegenPackage.Literals.DOMAIN_CONTEXT__MENU, DomaincontextcodegenFactory.eINSTANCE.createMenuDeclaration()));
+
+ newChildDescriptors.add(createChildParameter(DomaincontextcodegenPackage.Literals.DOMAIN_CONTEXT__COMMAND, DomaincontextcodegenFactory.eINSTANCE.createCommandDeclaration()));
}
/**
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/DomaincontextcodegenItemProviderAdapterFactory.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/DomaincontextcodegenItemProviderAdapterFactory.java
index aeb22fcf8a2..b0ecf8cfd1c 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/DomaincontextcodegenItemProviderAdapterFactory.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/DomaincontextcodegenItemProviderAdapterFactory.java
@@ -130,78 +130,153 @@ public class DomaincontextcodegenItemProviderAdapterFactory extends Domaincontex
}
/**
- * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.domaincontextcodegen.ElementType} instances.
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.domaincontextcodegen.MetaClassType} instances.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
*/
- protected ElementTypeItemProvider elementTypeItemProvider;
+ protected MetaClassTypeItemProvider metaClassTypeItemProvider;
/**
- * This creates an adapter for a {@link org.eclipse.papyrus.domaincontextcodegen.ElementType}.
+ * This creates an adapter for a {@link org.eclipse.papyrus.domaincontextcodegen.MetaClassType}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
*/
@Override
- public Adapter createElementTypeAdapter() {
- if(elementTypeItemProvider == null) {
- elementTypeItemProvider = new ElementTypeItemProvider(this);
+ public Adapter createMetaClassTypeAdapter() {
+ if(metaClassTypeItemProvider == null) {
+ metaClassTypeItemProvider = new MetaClassTypeItemProvider(this);
}
- return elementTypeItemProvider;
+ return metaClassTypeItemProvider;
}
/**
- * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.domaincontextcodegen.AdviceBinding} instances.
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.domaincontextcodegen.SpecializationType} instances.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
*/
- protected AdviceBindingItemProvider adviceBindingItemProvider;
+ protected SpecializationTypeItemProvider specializationTypeItemProvider;
/**
- * This creates an adapter for a {@link org.eclipse.papyrus.domaincontextcodegen.AdviceBinding}.
+ * This creates an adapter for a {@link org.eclipse.papyrus.domaincontextcodegen.SpecializationType}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
*/
@Override
- public Adapter createAdviceBindingAdapter() {
- if(adviceBindingItemProvider == null) {
- adviceBindingItemProvider = new AdviceBindingItemProvider(this);
+ public Adapter createSpecializationTypeAdapter() {
+ if(specializationTypeItemProvider == null) {
+ specializationTypeItemProvider = new SpecializationTypeItemProvider(this);
}
- return adviceBindingItemProvider;
+ return specializationTypeItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.domaincontextcodegen.Advice} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected AdviceItemProvider adviceItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.domaincontextcodegen.Advice}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Adapter createAdviceAdapter() {
+ if(adviceItemProvider == null) {
+ adviceItemProvider = new AdviceItemProvider(this);
+ }
+
+ return adviceItemProvider;
}
/**
- * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.domaincontextcodegen.Binding} instances.
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.domaincontextcodegen.ElementTypeBindings} instances.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
*/
- protected BindingItemProvider bindingItemProvider;
+ protected ElementTypeBindingsItemProvider elementTypeBindingsItemProvider;
/**
- * This creates an adapter for a {@link org.eclipse.papyrus.domaincontextcodegen.Binding}.
+ * This creates an adapter for a {@link org.eclipse.papyrus.domaincontextcodegen.ElementTypeBindings}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
*/
@Override
- public Adapter createBindingAdapter() {
- if(bindingItemProvider == null) {
- bindingItemProvider = new BindingItemProvider(this);
+ public Adapter createElementTypeBindingsAdapter() {
+ if(elementTypeBindingsItemProvider == null) {
+ elementTypeBindingsItemProvider = new ElementTypeBindingsItemProvider(this);
}
- return bindingItemProvider;
+ return elementTypeBindingsItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.domaincontextcodegen.ElementTypeBinding} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected ElementTypeBindingItemProvider elementTypeBindingItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.domaincontextcodegen.ElementTypeBinding}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Adapter createElementTypeBindingAdapter() {
+ if(elementTypeBindingItemProvider == null) {
+ elementTypeBindingItemProvider = new ElementTypeBindingItemProvider(this);
+ }
+
+ return elementTypeBindingItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.domaincontextcodegen.AdviceBinding} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected AdviceBindingItemProvider adviceBindingItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.domaincontextcodegen.AdviceBinding}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Adapter createAdviceBindingAdapter() {
+ if(adviceBindingItemProvider == null) {
+ adviceBindingItemProvider = new AdviceBindingItemProvider(this);
+ }
+
+ return adviceBindingItemProvider;
}
/**
@@ -230,6 +305,131 @@ public class DomaincontextcodegenItemProviderAdapterFactory extends Domaincontex
}
/**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementMatcher} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected StereotypedElementMatcherItemProvider stereotypedElementMatcherItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementMatcher}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Adapter createStereotypedElementMatcherAdapter() {
+ if(stereotypedElementMatcherItemProvider == null) {
+ stereotypedElementMatcherItemProvider = new StereotypedElementMatcherItemProvider(this);
+ }
+
+ return stereotypedElementMatcherItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementHelper} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected StereotypedElementHelperItemProvider stereotypedElementHelperItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementHelper}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Adapter createStereotypedElementHelperAdapter() {
+ if(stereotypedElementHelperItemProvider == null) {
+ stereotypedElementHelperItemProvider = new StereotypedElementHelperItemProvider(this);
+ }
+
+ return stereotypedElementHelperItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.domaincontextcodegen.MenuDeclaration} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected MenuDeclarationItemProvider menuDeclarationItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.domaincontextcodegen.MenuDeclaration}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Adapter createMenuDeclarationAdapter() {
+ if(menuDeclarationItemProvider == null) {
+ menuDeclarationItemProvider = new MenuDeclarationItemProvider(this);
+ }
+
+ return menuDeclarationItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.domaincontextcodegen.CommandDeclaration} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected CommandDeclarationItemProvider commandDeclarationItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.domaincontextcodegen.CommandDeclaration}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Adapter createCommandDeclarationAdapter() {
+ if(commandDeclarationItemProvider == null) {
+ commandDeclarationItemProvider = new CommandDeclarationItemProvider(this);
+ }
+
+ return commandDeclarationItemProvider;
+ }
+
+ /**
+ * This keeps track of the one adapter used for all {@link org.eclipse.papyrus.domaincontextcodegen.Command} instances.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected CommandItemProvider commandItemProvider;
+
+ /**
+ * This creates an adapter for a {@link org.eclipse.papyrus.domaincontextcodegen.Command}.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Adapter createCommandAdapter() {
+ if(commandItemProvider == null) {
+ commandItemProvider = new CommandItemProvider(this);
+ }
+
+ return commandItemProvider;
+ }
+
+ /**
* This returns the root adapter factory that contains this factory.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -341,14 +541,30 @@ public class DomaincontextcodegenItemProviderAdapterFactory extends Domaincontex
domainContextItemProvider.dispose();
if(elementTypesItemProvider != null)
elementTypesItemProvider.dispose();
- if(elementTypeItemProvider != null)
- elementTypeItemProvider.dispose();
+ if(metaClassTypeItemProvider != null)
+ metaClassTypeItemProvider.dispose();
+ if(specializationTypeItemProvider != null)
+ specializationTypeItemProvider.dispose();
+ if(adviceItemProvider != null)
+ adviceItemProvider.dispose();
+ if(elementTypeBindingsItemProvider != null)
+ elementTypeBindingsItemProvider.dispose();
+ if(elementTypeBindingItemProvider != null)
+ elementTypeBindingItemProvider.dispose();
if(adviceBindingItemProvider != null)
adviceBindingItemProvider.dispose();
- if(bindingItemProvider != null)
- bindingItemProvider.dispose();
if(genHandlersItemProvider != null)
genHandlersItemProvider.dispose();
+ if(stereotypedElementMatcherItemProvider != null)
+ stereotypedElementMatcherItemProvider.dispose();
+ if(stereotypedElementHelperItemProvider != null)
+ stereotypedElementHelperItemProvider.dispose();
+ if(menuDeclarationItemProvider != null)
+ menuDeclarationItemProvider.dispose();
+ if(commandDeclarationItemProvider != null)
+ commandDeclarationItemProvider.dispose();
+ if(commandItemProvider != null)
+ commandItemProvider.dispose();
}
}
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/ElementTypeBindingItemProvider.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/ElementTypeBindingItemProvider.java
new file mode 100644
index 00000000000..4404ad0f09c
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/ElementTypeBindingItemProvider.java
@@ -0,0 +1,131 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen.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.domaincontextcodegen.DomaincontextcodegenPackage;
+import org.eclipse.papyrus.domaincontextcodegen.ElementTypeBinding;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.domaincontextcodegen.ElementTypeBinding} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class ElementTypeBindingItemProvider extends BindingItemProvider implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource {
+
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ElementTypeBindingItemProvider(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);
+
+ addRefPropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Ref feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected void addRefPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_ElementTypeBinding_ref_feature"), getString("_UI_PropertyDescriptor_description", "_UI_ElementTypeBinding_ref_feature", "_UI_ElementTypeBinding_type"), DomaincontextcodegenPackage.Literals.ELEMENT_TYPE_BINDING__REF, true, false, true, null, null, null));
+ }
+
+ /**
+ * This returns ElementTypeBinding.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/ElementTypeBinding"));
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated NOT
+ */
+ @Override
+ public String getText(Object object) {
+
+ ElementTypeBinding binding = (ElementTypeBinding)object;
+ String label = "pattern : " + binding.getPattern();
+
+ if((binding.getRef() != null) && (binding.getRef().getName() != null)) {
+ label = "ref. : " + binding.getRef().getName();
+ }
+
+ return label == null || label.length() == 0 ? getString("_UI_ElementTypeBinding_type") : label + " (" + getString("_UI_ElementTypeBinding_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);
+ 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/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/ElementTypeBindingsItemProvider.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/ElementTypeBindingsItemProvider.java
new file mode 100644
index 00000000000..388cd3e0000
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/ElementTypeBindingsItemProvider.java
@@ -0,0 +1,187 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen.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.domaincontextcodegen.DomaincontextcodegenFactory;
+import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage;
+import org.eclipse.papyrus.domaincontextcodegen.ElementTypeBindings;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.domaincontextcodegen.ElementTypeBindings} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class ElementTypeBindingsItemProvider 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 ElementTypeBindingsItemProvider(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);
+
+ addClientContextIDPropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Client Context ID feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected void addClientContextIDPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_ElementTypeBindings_clientContextID_feature"), getString("_UI_PropertyDescriptor_description", "_UI_ElementTypeBindings_clientContextID_feature", "_UI_ElementTypeBindings_type"), DomaincontextcodegenPackage.Literals.ELEMENT_TYPE_BINDINGS__CLIENT_CONTEXT_ID, 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(DomaincontextcodegenPackage.Literals.ELEMENT_TYPE_BINDINGS__BINDINGS);
+ }
+ 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 ElementTypeBindings.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/ElementTypeBindings"));
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((ElementTypeBindings)object).getClientContextID();
+ return label == null || label.length() == 0 ? getString("_UI_ElementTypeBindings_type") : getString("_UI_ElementTypeBindings_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(ElementTypeBindings.class)) {
+ case DomaincontextcodegenPackage.ELEMENT_TYPE_BINDINGS__CLIENT_CONTEXT_ID:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+ return;
+ case DomaincontextcodegenPackage.ELEMENT_TYPE_BINDINGS__BINDINGS:
+ 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(DomaincontextcodegenPackage.Literals.ELEMENT_TYPE_BINDINGS__BINDINGS, DomaincontextcodegenFactory.eINSTANCE.createElementTypeBinding()));
+
+ newChildDescriptors.add(createChildParameter(DomaincontextcodegenPackage.Literals.ELEMENT_TYPE_BINDINGS__BINDINGS, DomaincontextcodegenFactory.eINSTANCE.createAdviceBinding()));
+ }
+
+ /**
+ * Return the resource locator for this item provider's resources.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public ResourceLocator getResourceLocator() {
+ return DomainContextEditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/ElementTypeItemProvider.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/ElementTypeItemProvider.java
index 633ccfe4183..c741e5f9d33 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/ElementTypeItemProvider.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/ElementTypeItemProvider.java
@@ -6,7 +6,6 @@
*/
package org.eclipse.papyrus.domaincontextcodegen.provider;
-
import java.util.Collection;
import java.util.List;
@@ -58,80 +57,44 @@ public class ElementTypeItemProvider extends ItemProviderAdapter implements IEdi
if(itemPropertyDescriptors == null) {
super.getPropertyDescriptors(object);
- addMetaClassPropertyDescriptor(object);
- addSpecificNamePropertyDescriptor(object);
- addEdithelper_EditHelperAdvicePathPropertyDescriptor(object);
- addKindPropertyDescriptor(object);
- addSpecializationofPropertyDescriptor(object);
- addSpecializationIDofPropertyDescriptor(object);
+ addNamePropertyDescriptor(object);
+ addHelperPropertyDescriptor(object);
+ addIconPropertyDescriptor(object);
}
return itemPropertyDescriptors;
}
/**
- * This adds a property descriptor for the Meta Class feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @generated
- */
- protected void addMetaClassPropertyDescriptor(Object object) {
- itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_ElementType_metaClass_feature"), getString("_UI_PropertyDescriptor_description", "_UI_ElementType_metaClass_feature", "_UI_ElementType_type"), DomaincontextcodegenPackage.Literals.ELEMENT_TYPE__META_CLASS, true, false, true, null, null, null));
- }
-
- /**
- * This adds a property descriptor for the Specific Name feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @generated
- */
- protected void addSpecificNamePropertyDescriptor(Object object) {
- itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_ElementType_specificName_feature"), getString("_UI_PropertyDescriptor_description", "_UI_ElementType_specificName_feature", "_UI_ElementType_type"), DomaincontextcodegenPackage.Literals.ELEMENT_TYPE__SPECIFIC_NAME, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
- }
-
- /**
- * This adds a property descriptor for the Edithelper Edit Helper Advice Path feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @generated
- */
- protected void addEdithelper_EditHelperAdvicePathPropertyDescriptor(Object object) {
- itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_ElementType_edithelper_EditHelperAdvicePath_feature"), getString("_UI_PropertyDescriptor_description", "_UI_ElementType_edithelper_EditHelperAdvicePath_feature", "_UI_ElementType_type"), DomaincontextcodegenPackage.Literals.ELEMENT_TYPE__EDITHELPER_EDIT_HELPER_ADVICE_PATH, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
- }
-
- /**
- * This adds a property descriptor for the Kind feature.
+ * This adds a property descriptor for the Name feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
*/
- protected void addKindPropertyDescriptor(Object object) {
- itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_ElementType_kind_feature"), getString("_UI_PropertyDescriptor_description", "_UI_ElementType_kind_feature", "_UI_ElementType_type"), DomaincontextcodegenPackage.Literals.ELEMENT_TYPE__KIND, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+ protected void addNamePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_ElementType_name_feature"), getString("_UI_PropertyDescriptor_description", "_UI_ElementType_name_feature", "_UI_ElementType_type"), DomaincontextcodegenPackage.Literals.ELEMENT_TYPE__NAME, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
}
/**
- * This adds a property descriptor for the Specializationof feature.
+ * This adds a property descriptor for the Helper feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
*/
- protected void addSpecializationofPropertyDescriptor(Object object) {
- itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_ElementType_specializationof_feature"), getString("_UI_PropertyDescriptor_description", "_UI_ElementType_specializationof_feature", "_UI_ElementType_type"), DomaincontextcodegenPackage.Literals.ELEMENT_TYPE__SPECIALIZATIONOF, true, false, true, null, null, null));
+ protected void addHelperPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_ElementType_helper_feature"), getString("_UI_PropertyDescriptor_description", "_UI_ElementType_helper_feature", "_UI_ElementType_type"), DomaincontextcodegenPackage.Literals.ELEMENT_TYPE__HELPER, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
}
/**
- * This adds a property descriptor for the Specialization IDof feature.
+ * This adds a property descriptor for the Icon feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
*/
- protected void addSpecializationIDofPropertyDescriptor(Object object) {
- itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_ElementType_specializationIDof_feature"), getString("_UI_PropertyDescriptor_description", "_UI_ElementType_specializationIDof_feature", "_UI_ElementType_type"), DomaincontextcodegenPackage.Literals.ELEMENT_TYPE__SPECIALIZATION_IDOF, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+ protected void addIconPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_ElementType_icon_feature"), getString("_UI_PropertyDescriptor_description", "_UI_ElementType_icon_feature", "_UI_ElementType_type"), DomaincontextcodegenPackage.Literals.ELEMENT_TYPE__ICON, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
}
/**
@@ -155,7 +118,7 @@ public class ElementTypeItemProvider extends ItemProviderAdapter implements IEdi
*/
@Override
public String getText(Object object) {
- String label = ((ElementType)object).getSpecificName();
+ String label = ((ElementType)object).getName();
return label == null || label.length() == 0 ? getString("_UI_ElementType_type") : getString("_UI_ElementType_type") + " " + label;
}
@@ -172,10 +135,9 @@ public class ElementTypeItemProvider extends ItemProviderAdapter implements IEdi
updateChildren(notification);
switch(notification.getFeatureID(ElementType.class)) {
- case DomaincontextcodegenPackage.ELEMENT_TYPE__SPECIFIC_NAME:
- case DomaincontextcodegenPackage.ELEMENT_TYPE__EDITHELPER_EDIT_HELPER_ADVICE_PATH:
- case DomaincontextcodegenPackage.ELEMENT_TYPE__KIND:
- case DomaincontextcodegenPackage.ELEMENT_TYPE__SPECIALIZATION_IDOF:
+ case DomaincontextcodegenPackage.ELEMENT_TYPE__NAME:
+ case DomaincontextcodegenPackage.ELEMENT_TYPE__HELPER:
+ case DomaincontextcodegenPackage.ELEMENT_TYPE__ICON:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
return;
}
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/ElementTypesItemProvider.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/ElementTypesItemProvider.java
index 6d15ac6ec00..a46619f8300 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/ElementTypesItemProvider.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/ElementTypesItemProvider.java
@@ -6,7 +6,6 @@
*/
package org.eclipse.papyrus.domaincontextcodegen.provider;
-
import java.util.Collection;
import java.util.List;
@@ -150,7 +149,9 @@ public class ElementTypesItemProvider extends ItemProviderAdapter implements IEd
protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
super.collectNewChildDescriptors(newChildDescriptors, object);
- newChildDescriptors.add(createChildParameter(DomaincontextcodegenPackage.Literals.ELEMENT_TYPES__TYPES, DomaincontextcodegenFactory.eINSTANCE.createElementType()));
+ newChildDescriptors.add(createChildParameter(DomaincontextcodegenPackage.Literals.ELEMENT_TYPES__TYPES, DomaincontextcodegenFactory.eINSTANCE.createMetaClassType()));
+
+ newChildDescriptors.add(createChildParameter(DomaincontextcodegenPackage.Literals.ELEMENT_TYPES__TYPES, DomaincontextcodegenFactory.eINSTANCE.createSpecializationType()));
}
/**
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/GenHandlersItemProvider.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/GenHandlersItemProvider.java
index d76f876137a..40861a907c9 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/GenHandlersItemProvider.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/GenHandlersItemProvider.java
@@ -6,7 +6,6 @@
*/
package org.eclipse.papyrus.domaincontextcodegen.provider;
-
import java.util.Collection;
import java.util.List;
@@ -63,6 +62,9 @@ public class GenHandlersItemProvider extends ItemProviderAdapter implements IEdi
addSuperClassPackagePropertyDescriptor(object);
addElementTypeEnumeratorPropertyDescriptor(object);
addElementTypeEnumeratorPackagePropertyDescriptor(object);
+ addVisibleCreateChildHandlersPropertyDescriptor(object);
+ addParentDomainCreateChildPropertyDescriptor(object);
+ addCreateChildMenuLocationURIPropertyDescriptor(object);
}
return itemPropertyDescriptors;
}
@@ -123,6 +125,39 @@ public class GenHandlersItemProvider extends ItemProviderAdapter implements IEdi
}
/**
+ * This adds a property descriptor for the Visible Create Child Handlers feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected void addVisibleCreateChildHandlersPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_GenHandlers_visibleCreateChildHandlers_feature"), getString("_UI_PropertyDescriptor_description", "_UI_GenHandlers_visibleCreateChildHandlers_feature", "_UI_GenHandlers_type"), DomaincontextcodegenPackage.Literals.GEN_HANDLERS__VISIBLE_CREATE_CHILD_HANDLERS, true, false, true, null, null, null));
+ }
+
+ /**
+ * This adds a property descriptor for the Parent Domain Create Child feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected void addParentDomainCreateChildPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_GenHandlers_parentDomainCreateChild_feature"), getString("_UI_PropertyDescriptor_description", "_UI_GenHandlers_parentDomainCreateChild_feature", "_UI_GenHandlers_type"), DomaincontextcodegenPackage.Literals.GEN_HANDLERS__PARENT_DOMAIN_CREATE_CHILD, true, false, true, null, null, null));
+ }
+
+ /**
+ * This adds a property descriptor for the Create Child Menu Location URI feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected void addCreateChildMenuLocationURIPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_GenHandlers_createChildMenuLocationURI_feature"), getString("_UI_PropertyDescriptor_description", "_UI_GenHandlers_createChildMenuLocationURI_feature", "_UI_GenHandlers_type"), DomaincontextcodegenPackage.Literals.GEN_HANDLERS__CREATE_CHILD_MENU_LOCATION_URI, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+ }
+
+ /**
* This returns GenHandlers.gif.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -165,6 +200,7 @@ public class GenHandlersItemProvider extends ItemProviderAdapter implements IEdi
case DomaincontextcodegenPackage.GEN_HANDLERS__SUPER_CLASS_PACKAGE:
case DomaincontextcodegenPackage.GEN_HANDLERS__ELEMENT_TYPE_ENUMERATOR:
case DomaincontextcodegenPackage.GEN_HANDLERS__ELEMENT_TYPE_ENUMERATOR_PACKAGE:
+ case DomaincontextcodegenPackage.GEN_HANDLERS__CREATE_CHILD_MENU_LOCATION_URI:
fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
return;
}
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/GenHelperItemProvider.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/GenHelperItemProvider.java
new file mode 100644
index 00000000000..44a958c8050
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/GenHelperItemProvider.java
@@ -0,0 +1,134 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen.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.domaincontextcodegen.DomaincontextcodegenPackage;
+import org.eclipse.papyrus.domaincontextcodegen.GenHelper;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.domaincontextcodegen.GenHelper} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class GenHelperItemProvider 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 GenHelperItemProvider(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_GenHelper_name_feature"), getString("_UI_PropertyDescriptor_description", "_UI_GenHelper_name_feature", "_UI_GenHelper_type"), DomaincontextcodegenPackage.Literals.GEN_HELPER__NAME, true, false, false, ItemPropertyDescriptor.GENERIC_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) {
+ String label = ((GenHelper)object).getName();
+ return label == null || label.length() == 0 ? getString("_UI_GenHelper_type") : getString("_UI_GenHelper_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(GenHelper.class)) {
+ case DomaincontextcodegenPackage.GEN_HELPER__NAME:
+ 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 DomainContextEditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/GenMatcherItemProvider.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/GenMatcherItemProvider.java
new file mode 100644
index 00000000000..ba7c8f4c6f5
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/GenMatcherItemProvider.java
@@ -0,0 +1,134 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen.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.domaincontextcodegen.DomaincontextcodegenPackage;
+import org.eclipse.papyrus.domaincontextcodegen.GenMatcher;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.domaincontextcodegen.GenMatcher} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class GenMatcherItemProvider 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 GenMatcherItemProvider(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_GenMatcher_name_feature"), getString("_UI_PropertyDescriptor_description", "_UI_GenMatcher_name_feature", "_UI_GenMatcher_type"), DomaincontextcodegenPackage.Literals.GEN_MATCHER__NAME, true, false, false, ItemPropertyDescriptor.GENERIC_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) {
+ String label = ((GenMatcher)object).getName();
+ return label == null || label.length() == 0 ? getString("_UI_GenMatcher_type") : getString("_UI_GenMatcher_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(GenMatcher.class)) {
+ case DomaincontextcodegenPackage.GEN_MATCHER__NAME:
+ 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 DomainContextEditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/MenuDeclarationItemProvider.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/MenuDeclarationItemProvider.java
new file mode 100644
index 00000000000..b033bc40c3a
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/MenuDeclarationItemProvider.java
@@ -0,0 +1,158 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen.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.domaincontextcodegen.DomaincontextcodegenPackage;
+import org.eclipse.papyrus.domaincontextcodegen.MenuDeclaration;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.domaincontextcodegen.MenuDeclaration} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class MenuDeclarationItemProvider 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 MenuDeclarationItemProvider(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);
+
+ addLocationURIPropertyDescriptor(object);
+ addCommandsPropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Location URI feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected void addLocationURIPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_MenuDeclaration_locationURI_feature"), getString("_UI_PropertyDescriptor_description", "_UI_MenuDeclaration_locationURI_feature", "_UI_MenuDeclaration_type"), DomaincontextcodegenPackage.Literals.MENU_DECLARATION__LOCATION_URI, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+ }
+
+ /**
+ * This adds a property descriptor for the Commands feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected void addCommandsPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_MenuDeclaration_commands_feature"), getString("_UI_PropertyDescriptor_description", "_UI_MenuDeclaration_commands_feature", "_UI_MenuDeclaration_type"), DomaincontextcodegenPackage.Literals.MENU_DECLARATION__COMMANDS, true, false, true, null, null, null));
+ }
+
+ /**
+ * This returns MenuDeclaration.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/MenuDeclaration"));
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((MenuDeclaration)object).getLocationURI();
+ return label == null || label.length() == 0 ? getString("_UI_MenuDeclaration_type") : getString("_UI_MenuDeclaration_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(MenuDeclaration.class)) {
+ case DomaincontextcodegenPackage.MENU_DECLARATION__LOCATION_URI:
+ 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 DomainContextEditPlugin.INSTANCE;
+ }
+
+}
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/MetaClassTypeItemProvider.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/MetaClassTypeItemProvider.java
new file mode 100644
index 00000000000..5ba0daf3f14
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/MetaClassTypeItemProvider.java
@@ -0,0 +1,124 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen.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.domaincontextcodegen.DomaincontextcodegenPackage;
+import org.eclipse.papyrus.domaincontextcodegen.MetaClassType;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.domaincontextcodegen.MetaClassType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class MetaClassTypeItemProvider extends ElementTypeItemProvider implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource {
+
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public MetaClassTypeItemProvider(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);
+
+ addMetaClassPropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Meta Class feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected void addMetaClassPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_MetaClassType_metaClass_feature"), getString("_UI_PropertyDescriptor_description", "_UI_MetaClassType_metaClass_feature", "_UI_MetaClassType_type"), DomaincontextcodegenPackage.Literals.META_CLASS_TYPE__META_CLASS, true, false, true, null, null, null));
+ }
+
+ /**
+ * This returns MetaClassType.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/MetaClassType"));
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((MetaClassType)object).getName();
+ return label == null || label.length() == 0 ? getString("_UI_MetaClassType_type") : getString("_UI_MetaClassType_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);
+ }
+
+}
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/SpecializationTypeItemProvider.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/SpecializationTypeItemProvider.java
new file mode 100644
index 00000000000..1c610d2f290
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/SpecializationTypeItemProvider.java
@@ -0,0 +1,187 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen.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.ItemPropertyDescriptor;
+import org.eclipse.emf.edit.provider.ViewerNotification;
+import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenFactory;
+import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage;
+import org.eclipse.papyrus.domaincontextcodegen.SpecializationType;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.domaincontextcodegen.SpecializationType} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class SpecializationTypeItemProvider extends ElementTypeItemProvider implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource {
+
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public SpecializationTypeItemProvider(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);
+
+ addRefPropertyDescriptor(object);
+ addMatcherPropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Ref feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected void addRefPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_SpecializationType_ref_feature"), getString("_UI_PropertyDescriptor_description", "_UI_SpecializationType_ref_feature", "_UI_SpecializationType_type"), DomaincontextcodegenPackage.Literals.SPECIALIZATION_TYPE__REF, true, false, true, null, null, null));
+ }
+
+ /**
+ * This adds a property descriptor for the Matcher feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected void addMatcherPropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_SpecializationType_matcher_feature"), getString("_UI_PropertyDescriptor_description", "_UI_SpecializationType_matcher_feature", "_UI_SpecializationType_type"), DomaincontextcodegenPackage.Literals.SPECIALIZATION_TYPE__MATCHER, 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(DomaincontextcodegenPackage.Literals.SPECIALIZATION_TYPE__GEN_MATCHER);
+ childrenFeatures.add(DomaincontextcodegenPackage.Literals.SPECIALIZATION_TYPE__GEN_HELPER);
+ }
+ 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 SpecializationType.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/SpecializationType"));
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((SpecializationType)object).getName();
+ return label == null || label.length() == 0 ? getString("_UI_SpecializationType_type") : getString("_UI_SpecializationType_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(SpecializationType.class)) {
+ case DomaincontextcodegenPackage.SPECIALIZATION_TYPE__MATCHER:
+ fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+ return;
+ case DomaincontextcodegenPackage.SPECIALIZATION_TYPE__GEN_MATCHER:
+ case DomaincontextcodegenPackage.SPECIALIZATION_TYPE__GEN_HELPER:
+ 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(DomaincontextcodegenPackage.Literals.SPECIALIZATION_TYPE__GEN_MATCHER, DomaincontextcodegenFactory.eINSTANCE.createStereotypedElementMatcher()));
+
+ newChildDescriptors.add(createChildParameter(DomaincontextcodegenPackage.Literals.SPECIALIZATION_TYPE__GEN_HELPER, DomaincontextcodegenFactory.eINSTANCE.createStereotypedElementHelper()));
+ }
+
+}
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/StereotypedElementHelperItemProvider.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/StereotypedElementHelperItemProvider.java
new file mode 100644
index 00000000000..7925caea595
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/StereotypedElementHelperItemProvider.java
@@ -0,0 +1,171 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen.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.domaincontextcodegen.DomaincontextcodegenPackage;
+import org.eclipse.papyrus.domaincontextcodegen.StereotypedElementHelper;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementHelper} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class StereotypedElementHelperItemProvider extends GenHelperItemProvider implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource {
+
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public StereotypedElementHelperItemProvider(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);
+
+ addStereotypeNamePropertyDescriptor(object);
+ addStereotypePackagePropertyDescriptor(object);
+ addBaseElementNamePropertyDescriptor(object);
+ addBaseElementPackagePropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Stereotype Name feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected void addStereotypeNamePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_StereotypedElementHelper_stereotypeName_feature"), getString("_UI_PropertyDescriptor_description", "_UI_StereotypedElementHelper_stereotypeName_feature", "_UI_StereotypedElementHelper_type"), DomaincontextcodegenPackage.Literals.STEREOTYPED_ELEMENT_HELPER__STEREOTYPE_NAME, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+ }
+
+ /**
+ * This adds a property descriptor for the Stereotype Package feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected void addStereotypePackagePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_StereotypedElementHelper_stereotypePackage_feature"), getString("_UI_PropertyDescriptor_description", "_UI_StereotypedElementHelper_stereotypePackage_feature", "_UI_StereotypedElementHelper_type"), DomaincontextcodegenPackage.Literals.STEREOTYPED_ELEMENT_HELPER__STEREOTYPE_PACKAGE, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+ }
+
+ /**
+ * This adds a property descriptor for the Base Element Name feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected void addBaseElementNamePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_StereotypedElementHelper_baseElementName_feature"), getString("_UI_PropertyDescriptor_description", "_UI_StereotypedElementHelper_baseElementName_feature", "_UI_StereotypedElementHelper_type"), DomaincontextcodegenPackage.Literals.STEREOTYPED_ELEMENT_HELPER__BASE_ELEMENT_NAME, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+ }
+
+ /**
+ * This adds a property descriptor for the Base Element Package feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected void addBaseElementPackagePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_StereotypedElementHelper_baseElementPackage_feature"), getString("_UI_PropertyDescriptor_description", "_UI_StereotypedElementHelper_baseElementPackage_feature", "_UI_StereotypedElementHelper_type"), DomaincontextcodegenPackage.Literals.STEREOTYPED_ELEMENT_HELPER__BASE_ELEMENT_PACKAGE, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+ }
+
+ /**
+ * This returns StereotypedElementHelper.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/StereotypedElementHelper"));
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((StereotypedElementHelper)object).getName();
+ return label == null || label.length() == 0 ? getString("_UI_StereotypedElementHelper_type") : getString("_UI_StereotypedElementHelper_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(StereotypedElementHelper.class)) {
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_HELPER__STEREOTYPE_NAME:
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_HELPER__STEREOTYPE_PACKAGE:
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_HELPER__BASE_ELEMENT_NAME:
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_HELPER__BASE_ELEMENT_PACKAGE:
+ 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/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/StereotypedElementMatcherItemProvider.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/StereotypedElementMatcherItemProvider.java
new file mode 100644
index 00000000000..b625dc593d6
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.edit/src/org/eclipse/papyrus/domaincontextcodegen/provider/StereotypedElementMatcherItemProvider.java
@@ -0,0 +1,171 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen.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.domaincontextcodegen.DomaincontextcodegenPackage;
+import org.eclipse.papyrus.domaincontextcodegen.StereotypedElementMatcher;
+
+/**
+ * This is the item provider adapter for a {@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementMatcher} object.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+public class StereotypedElementMatcherItemProvider extends GenMatcherItemProvider implements IEditingDomainItemProvider, IStructuredItemContentProvider, ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource {
+
+ /**
+ * This constructs an instance from a factory and a notifier.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public StereotypedElementMatcherItemProvider(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);
+
+ addStereotypeNamePropertyDescriptor(object);
+ addStereotypePackagePropertyDescriptor(object);
+ addBaseElementNamePropertyDescriptor(object);
+ addBaseElementPackagePropertyDescriptor(object);
+ }
+ return itemPropertyDescriptors;
+ }
+
+ /**
+ * This adds a property descriptor for the Stereotype Name feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected void addStereotypeNamePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_StereotypedElementMatcher_stereotypeName_feature"), getString("_UI_PropertyDescriptor_description", "_UI_StereotypedElementMatcher_stereotypeName_feature", "_UI_StereotypedElementMatcher_type"), DomaincontextcodegenPackage.Literals.STEREOTYPED_ELEMENT_MATCHER__STEREOTYPE_NAME, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+ }
+
+ /**
+ * This adds a property descriptor for the Stereotype Package feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected void addStereotypePackagePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_StereotypedElementMatcher_stereotypePackage_feature"), getString("_UI_PropertyDescriptor_description", "_UI_StereotypedElementMatcher_stereotypePackage_feature", "_UI_StereotypedElementMatcher_type"), DomaincontextcodegenPackage.Literals.STEREOTYPED_ELEMENT_MATCHER__STEREOTYPE_PACKAGE, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+ }
+
+ /**
+ * This adds a property descriptor for the Base Element Name feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected void addBaseElementNamePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_StereotypedElementMatcher_baseElementName_feature"), getString("_UI_PropertyDescriptor_description", "_UI_StereotypedElementMatcher_baseElementName_feature", "_UI_StereotypedElementMatcher_type"), DomaincontextcodegenPackage.Literals.STEREOTYPED_ELEMENT_MATCHER__BASE_ELEMENT_NAME, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+ }
+
+ /**
+ * This adds a property descriptor for the Base Element Package feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected void addBaseElementPackagePropertyDescriptor(Object object) {
+ itemPropertyDescriptors.add(createItemPropertyDescriptor(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(), getResourceLocator(), getString("_UI_StereotypedElementMatcher_baseElementPackage_feature"), getString("_UI_PropertyDescriptor_description", "_UI_StereotypedElementMatcher_baseElementPackage_feature", "_UI_StereotypedElementMatcher_type"), DomaincontextcodegenPackage.Literals.STEREOTYPED_ELEMENT_MATCHER__BASE_ELEMENT_PACKAGE, true, false, false, ItemPropertyDescriptor.GENERIC_VALUE_IMAGE, null, null));
+ }
+
+ /**
+ * This returns StereotypedElementMatcher.gif.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object getImage(Object object) {
+ return overlayImage(object, getResourceLocator().getImage("full/obj16/StereotypedElementMatcher"));
+ }
+
+ /**
+ * This returns the label text for the adapted class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public String getText(Object object) {
+ String label = ((StereotypedElementMatcher)object).getName();
+ return label == null || label.length() == 0 ? getString("_UI_StereotypedElementMatcher_type") : getString("_UI_StereotypedElementMatcher_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(StereotypedElementMatcher.class)) {
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_MATCHER__STEREOTYPE_NAME:
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_MATCHER__STEREOTYPE_PACKAGE:
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_MATCHER__BASE_ELEMENT_NAME:
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_MATCHER__BASE_ELEMENT_PACKAGE:
+ 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/developer/org.eclipse.papyrus.domaincontextcodegen.editor/.classpath b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.editor/.classpath
index 2d1a4302f04..45f024e850e 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.editor/.classpath
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.editor/.classpath
@@ -1,7 +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="src" path="src"/>
<classpathentry kind="output" path="bin"/>
</classpath>
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.editor/src/org/eclipse/papyrus/domaincontextcodegen/presentation/DomainContextEditorPlugin.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.editor/src/org/eclipse/papyrus/domaincontextcodegen/presentation/DomainContextEditorPlugin.java
index eb452fa2d0a..66a07b8350e 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.editor/src/org/eclipse/papyrus/domaincontextcodegen/presentation/DomainContextEditorPlugin.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.editor/src/org/eclipse/papyrus/domaincontextcodegen/presentation/DomainContextEditorPlugin.java
@@ -7,32 +7,33 @@
package org.eclipse.papyrus.domaincontextcodegen.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 DomainContext editor plugin.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
public final class DomainContextEditorPlugin extends EMFPlugin {
+
/**
* Keep track of the singleton.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
public static final DomainContextEditorPlugin INSTANCE = new DomainContextEditorPlugin();
-
+
/**
* Keep track of the singleton.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
private static Implementation plugin;
@@ -41,19 +42,18 @@ public final class DomainContextEditorPlugin extends EMFPlugin {
* Create the instance.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
public DomainContextEditorPlugin() {
- super
- (new ResourceLocator [] {
- EcoreEditPlugin.INSTANCE,
- });
+ super(new ResourceLocator[]{ EcoreEditPlugin.INSTANCE, });
}
/**
* Returns the singleton instance of the Eclipse plugin.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @return the singleton instance.
* @generated
*/
@@ -61,34 +61,38 @@ public final class DomainContextEditorPlugin extends EMFPlugin {
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/developer/org.eclipse.papyrus.domaincontextcodegen.editor/src/org/eclipse/papyrus/domaincontextcodegen/presentation/DomaincontextcodegenActionBarContributor.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.editor/src/org/eclipse/papyrus/domaincontextcodegen/presentation/DomaincontextcodegenActionBarContributor.java
index f02c0905bf7..10820757c91 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.editor/src/org/eclipse/papyrus/domaincontextcodegen/presentation/DomaincontextcodegenActionBarContributor.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.editor/src/org/eclipse/papyrus/domaincontextcodegen/presentation/DomaincontextcodegenActionBarContributor.java
@@ -10,17 +10,14 @@ 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;
@@ -32,14 +29,12 @@ 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;
@@ -47,15 +42,16 @@ import org.eclipse.ui.PartInitException;
* This is the action bar contributor for the Domaincontextcodegen model editor.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
-public class DomaincontextcodegenActionBarContributor
- extends EditingDomainActionBarContributor
- implements ISelectionChangedListener {
+public class DomaincontextcodegenActionBarContributor extends EditingDomainActionBarContributor implements ISelectionChangedListener {
+
/**
* This keeps track of the active editor.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected IEditorPart activeEditorPart;
@@ -64,6 +60,7 @@ public class DomaincontextcodegenActionBarContributor
* This keeps track of the current selection provider.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected ISelectionProvider selectionProvider;
@@ -72,51 +69,53 @@ public class DomaincontextcodegenActionBarContributor
* This action opens the Properties view.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
- protected IAction showPropertiesViewAction =
- new Action(DomainContextEditorPlugin.INSTANCE.getString("_UI_ShowPropertiesView_menu_item")) {
- @Override
- public void run() {
- try {
- getPage().showView("org.eclipse.ui.views.PropertySheet");
- }
- catch (PartInitException exception) {
- DomainContextEditorPlugin.INSTANCE.log(exception);
- }
+ protected IAction showPropertiesViewAction = new Action(DomainContextEditorPlugin.INSTANCE.getString("_UI_ShowPropertiesView_menu_item")) {
+
+ @Override
+ public void run() {
+ try {
+ getPage().showView("org.eclipse.ui.views.PropertySheet");
+ } catch (PartInitException exception) {
+ DomainContextEditorPlugin.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(DomainContextEditorPlugin.INSTANCE.getString("_UI_RefreshViewer_menu_item")) {
- @Override
- public boolean isEnabled() {
- return activeEditorPart instanceof IViewerProvider;
- }
+ protected IAction refreshViewerAction = new Action(DomainContextEditorPlugin.INSTANCE.getString("_UI_RefreshViewer_menu_item")) {
- @Override
- public void run() {
- if (activeEditorPart instanceof IViewerProvider) {
- Viewer viewer = ((IViewerProvider)activeEditorPart).getViewer();
- if (viewer != null) {
- viewer.refresh();
- }
+ @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;
@@ -125,6 +124,7 @@ public class DomaincontextcodegenActionBarContributor
* 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;
@@ -134,6 +134,7 @@ public class DomaincontextcodegenActionBarContributor
* generated for the current selection by the item provider.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected Collection<IAction> createSiblingActions;
@@ -142,6 +143,7 @@ public class DomaincontextcodegenActionBarContributor
* 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;
@@ -150,6 +152,7 @@ public class DomaincontextcodegenActionBarContributor
* This creates an instance of the contributor.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
public DomaincontextcodegenActionBarContributor() {
@@ -163,6 +166,7 @@ public class DomaincontextcodegenActionBarContributor
* This adds Separators for editor additions to the tool bar.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
@Override
@@ -176,6 +180,7 @@ public class DomaincontextcodegenActionBarContributor
* as well as the sub-menus for object creation items.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
@Override
@@ -201,12 +206,12 @@ public class DomaincontextcodegenActionBarContributor
// Force an update because Eclipse hides empty menus now.
//
- submenuManager.addMenuListener
- (new IMenuListener() {
- public void menuAboutToShow(IMenuManager menuManager) {
- menuManager.updateAll(true);
- }
- });
+ submenuManager.addMenuListener(new IMenuListener() {
+
+ public void menuAboutToShow(IMenuManager menuManager) {
+ menuManager.updateAll(true);
+ }
+ });
addGlobalActions(submenuManager);
}
@@ -215,6 +220,7 @@ public class DomaincontextcodegenActionBarContributor
* 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
@@ -224,19 +230,18 @@ public class DomaincontextcodegenActionBarContributor
// Switch to the new selection provider.
//
- if (selectionProvider != null) {
+ if(selectionProvider != null) {
selectionProvider.removeSelectionChangedListener(this);
}
- if (part == null) {
+ if(part == null) {
selectionProvider = null;
- }
- else {
+ } else {
selectionProvider = part.getSite().getSelectionProvider();
selectionProvider.addSelectionChangedListener(this);
// Fake a selection changed event to update the menus.
//
- if (selectionProvider.getSelection() != null) {
+ if(selectionProvider.getSelection() != null) {
selectionChanged(new SelectionChangedEvent(selectionProvider, selectionProvider.getSelection()));
}
}
@@ -248,15 +253,16 @@ public class DomaincontextcodegenActionBarContributor
* 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) {
+ if(createChildMenuManager != null) {
depopulateManager(createChildMenuManager, createChildActions);
}
- if (createSiblingMenuManager != null) {
+ if(createSiblingMenuManager != null) {
depopulateManager(createSiblingMenuManager, createSiblingActions);
}
@@ -266,7 +272,7 @@ public class DomaincontextcodegenActionBarContributor
Collection<?> newSiblingDescriptors = null;
ISelection selection = event.getSelection();
- if (selection instanceof IStructuredSelection && ((IStructuredSelection)selection).size() == 1) {
+ if(selection instanceof IStructuredSelection && ((IStructuredSelection)selection).size() == 1) {
Object object = ((IStructuredSelection)selection).getFirstElement();
EditingDomain domain = ((IEditingDomainProvider)activeEditorPart).getEditingDomain();
@@ -280,11 +286,11 @@ public class DomaincontextcodegenActionBarContributor
createChildActions = generateCreateChildActions(newChildDescriptors, selection);
createSiblingActions = generateCreateSiblingActions(newSiblingDescriptors, selection);
- if (createChildMenuManager != null) {
+ if(createChildMenuManager != null) {
populateManager(createChildMenuManager, createChildActions, null);
createChildMenuManager.update(true);
}
- if (createSiblingMenuManager != null) {
+ if(createSiblingMenuManager != null) {
populateManager(createSiblingMenuManager, createSiblingActions, null);
createSiblingMenuManager.update(true);
}
@@ -295,12 +301,13 @@ public class DomaincontextcodegenActionBarContributor
* 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) {
+ if(descriptors != null) {
+ for(Object descriptor : descriptors) {
actions.add(new CreateChildAction(activeEditorPart, selection, descriptor));
}
}
@@ -312,12 +319,13 @@ public class DomaincontextcodegenActionBarContributor
* 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) {
+ if(descriptors != null) {
+ for(Object descriptor : descriptors) {
actions.add(new CreateSiblingAction(activeEditorPart, selection, descriptor));
}
}
@@ -331,44 +339,45 @@ public class DomaincontextcodegenActionBarContributor
* 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) {
+ if(actions != null) {
+ for(IAction action : actions) {
+ if(contributionID != null) {
manager.insertBefore(contributionID, action);
- }
- else {
+ } 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) {
+ if(actions != null) {
IContributionItem[] items = manager.getItems();
- for (int i = 0; i < items.length; i++) {
+ for(int i = 0; i < items.length; i++) {
// Look into SubContributionItems
//
IContributionItem contributionItem = items[i];
- while (contributionItem instanceof SubContributionItem) {
+ while(contributionItem instanceof SubContributionItem) {
contributionItem = ((SubContributionItem)contributionItem).getInnerItem();
}
// Delete the ActionContributionItems with matching action.
//
- if (contributionItem instanceof ActionContributionItem) {
+ if(contributionItem instanceof ActionContributionItem) {
IAction action = ((ActionContributionItem)contributionItem).getAction();
- if (actions.contains(action)) {
+ if(actions.contains(action)) {
manager.remove(contributionItem);
}
}
@@ -380,6 +389,7 @@ public class DomaincontextcodegenActionBarContributor
* This populates the pop-up menu before it appears.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
@Override
@@ -400,6 +410,7 @@ public class DomaincontextcodegenActionBarContributor
* This inserts global actions before the "additions-end" separator.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
@Override
@@ -407,7 +418,7 @@ public class DomaincontextcodegenActionBarContributor
menuManager.insertAfter("additions-end", new Separator("ui-actions"));
menuManager.insertAfter("ui-actions", showPropertiesViewAction);
- refreshViewerAction.setEnabled(refreshViewerAction.isEnabled());
+ refreshViewerAction.setEnabled(refreshViewerAction.isEnabled());
menuManager.insertAfter("ui-actions", refreshViewerAction);
super.addGlobalActions(menuManager);
@@ -417,6 +428,7 @@ public class DomaincontextcodegenActionBarContributor
* This ensures that a delete action will clean up all references to deleted objects.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
@Override
@@ -424,4 +436,4 @@ public class DomaincontextcodegenActionBarContributor
return true;
}
-} \ No newline at end of file
+}
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.editor/src/org/eclipse/papyrus/domaincontextcodegen/presentation/DomaincontextcodegenEditor.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.editor/src/org/eclipse/papyrus/domaincontextcodegen/presentation/DomaincontextcodegenEditor.java
index 8279e87f5ea..a65802ad7e2 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.editor/src/org/eclipse/papyrus/domaincontextcodegen/presentation/DomaincontextcodegenEditor.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.editor/src/org/eclipse/papyrus/domaincontextcodegen/presentation/DomaincontextcodegenEditor.java
@@ -6,10 +6,8 @@
*/
package org.eclipse.papyrus.domaincontextcodegen.presentation;
-
import java.io.IOException;
import java.io.InputStream;
-
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
@@ -28,22 +26,56 @@ 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.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.URI;
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EValidator;
+import org.eclipse.emf.ecore.provider.EcoreItemProviderAdapterFactory;
+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.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;
@@ -57,28 +89,21 @@ 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.papyrus.domaincontextcodegen.provider.DomaincontextcodegenItemProviderAdapterFactory;
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;
@@ -86,97 +111,32 @@ import org.eclipse.ui.IEditorSite;
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.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.URI;
-
-import org.eclipse.emf.ecore.EObject;
-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.domaincontextcodegen.provider.DomaincontextcodegenItemProviderAdapterFactory;
-
-import org.eclipse.emf.ecore.provider.EcoreItemProviderAdapterFactory;
-
-import org.eclipse.ui.actions.WorkspaceModifyOperation;
-
-
/**
* This is an example of a Domaincontextcodegen model editor.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
-public class DomaincontextcodegenEditor
- extends MultiPageEditorPart
- implements IEditingDomainProvider, ISelectionProvider, IMenuListener, IViewerProvider, IGotoMarker {
+public class DomaincontextcodegenEditor 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;
@@ -185,6 +145,7 @@ public class DomaincontextcodegenEditor
* This is the one adapter factory used for providing views of the model.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected ComposedAdapterFactory adapterFactory;
@@ -193,6 +154,7 @@ public class DomaincontextcodegenEditor
* This is the content outline page.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected IContentOutlinePage contentOutlinePage;
@@ -201,6 +163,7 @@ public class DomaincontextcodegenEditor
* This is a kludge...
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected IStatusLineManager contentOutlineStatusLineManager;
@@ -209,6 +172,7 @@ public class DomaincontextcodegenEditor
* This is the content outline page's viewer.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected TreeViewer contentOutlineViewer;
@@ -217,6 +181,7 @@ public class DomaincontextcodegenEditor
* This is the property sheet page.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected PropertySheetPage propertySheetPage;
@@ -226,6 +191,7 @@ public class DomaincontextcodegenEditor
* The parent relation must be correctly defined for this to work.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected TreeViewer selectionViewer;
@@ -234,6 +200,7 @@ public class DomaincontextcodegenEditor
* This inverts the roll of parent and child in the content provider and show parents as a tree.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected TreeViewer parentViewer;
@@ -242,6 +209,7 @@ public class DomaincontextcodegenEditor
* This shows how a tree view works.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected TreeViewer treeViewer;
@@ -251,6 +219,7 @@ public class DomaincontextcodegenEditor
* A list viewer doesn't support icons.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected ListViewer listViewer;
@@ -260,6 +229,7 @@ public class DomaincontextcodegenEditor
* A table can be used as a list with icons.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected TableViewer tableViewer;
@@ -268,6 +238,7 @@ public class DomaincontextcodegenEditor
* This shows how a tree view with columns works.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected TreeViewer treeViewerWithColumns;
@@ -276,6 +247,7 @@ public class DomaincontextcodegenEditor
* This keeps track of the active viewer pane, in the book.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected ViewerPane currentViewerPane;
@@ -284,6 +256,7 @@ public class DomaincontextcodegenEditor
* 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;
@@ -292,6 +265,7 @@ public class DomaincontextcodegenEditor
* This listens to which ever viewer is active.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected ISelectionChangedListener selectionChangedListener;
@@ -300,6 +274,7 @@ public class DomaincontextcodegenEditor
* 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>();
@@ -308,6 +283,7 @@ public class DomaincontextcodegenEditor
* This keeps track of the selection of the editor as a whole.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected ISelection editorSelection = StructuredSelection.EMPTY;
@@ -317,6 +293,7 @@ public class DomaincontextcodegenEditor
* in Eclipse's Problems View.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected MarkerHelper markerHelper = new EditUIMarkerHelper();
@@ -325,46 +302,50 @@ public class DomaincontextcodegenEditor
* 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(DomaincontextcodegenEditor.this);
+ protected IPartListener partListener = new IPartListener() {
- setCurrentViewer(contentOutlineViewer);
- }
- }
- else if (p instanceof PropertySheet) {
- if (((PropertySheet)p).getCurrentPage() == propertySheetPage) {
- getActionBarContributor().setActiveEditor(DomaincontextcodegenEditor.this);
- handleActivate();
- }
+ public void partActivated(IWorkbenchPart p) {
+ if(p instanceof ContentOutline) {
+ if(((ContentOutline)p).getCurrentPage() == contentOutlinePage) {
+ getActionBarContributor().setActiveEditor(DomaincontextcodegenEditor.this);
+
+ setCurrentViewer(contentOutlineViewer);
}
- else if (p == DomaincontextcodegenEditor.this) {
+ } else if(p instanceof PropertySheet) {
+ if(((PropertySheet)p).getCurrentPage() == propertySheetPage) {
+ getActionBarContributor().setActiveEditor(DomaincontextcodegenEditor.this);
handleActivate();
}
+ } else if(p == DomaincontextcodegenEditor.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.
- }
- };
+ }
+
+ 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>();
@@ -373,6 +354,7 @@ public class DomaincontextcodegenEditor
* Resources that have been changed since last activation.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected Collection<Resource> changedResources = new ArrayList<Resource>();
@@ -381,6 +363,7 @@ public class DomaincontextcodegenEditor
* Resources that have been saved.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected Collection<Resource> savedResources = new ArrayList<Resource>();
@@ -389,6 +372,7 @@ public class DomaincontextcodegenEditor
* 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>();
@@ -397,6 +381,7 @@ public class DomaincontextcodegenEditor
* Controls whether the problem indication should be updated.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected boolean updateProblemIndication = true;
@@ -405,159 +390,159 @@ public class DomaincontextcodegenEditor
* 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);
- }
+ protected EContentAdapter problemIndicationAdapter = new EContentAdapter() {
- if (updateProblemIndication) {
- getSite().getShell().getDisplay().asyncExec
- (new Runnable() {
- public void run() {
- updateProblemIndication();
- }
- });
+ @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;
- }
+ });
}
+ break;
}
- else {
- super.notifyChanged(notification);
}
+ } else {
+ super.notifyChanged(notification);
}
+ }
- @Override
- protected void setTarget(Resource target) {
- basicSetTarget(target);
- }
+ @Override
+ protected void setTarget(Resource target) {
+ basicSetTarget(target);
+ }
- @Override
- protected void unsetTarget(Resource target) {
- basicUnsetTarget(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);
- }
+ 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;
- }
+ return true;
}
- 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(DomaincontextcodegenEditor.this, false);
- }
- }
- });
+ public Collection<Resource> getChangedResources() {
+ return changedResources;
}
- if (!visitor.getChangedResources().isEmpty()) {
- getSite().getShell().getDisplay().asyncExec
- (new Runnable() {
- public void run() {
- changedResources.addAll(visitor.getChangedResources());
- if (getSite().getPage().getActiveEditor() == DomaincontextcodegenEditor.this) {
- handleActivate();
- }
- }
- });
+ public Collection<Resource> getRemovedResources() {
+ return removedResources;
}
}
- catch (CoreException exception) {
- DomainContextEditorPlugin.INSTANCE.log(exception);
+
+ 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(DomaincontextcodegenEditor.this, false);
+ }
+ }
+ });
}
+
+ if(!visitor.getChangedResources().isEmpty()) {
+ getSite().getShell().getDisplay().asyncExec(new Runnable() {
+
+ public void run() {
+ changedResources.addAll(visitor.getChangedResources());
+ if(getSite().getPage().getActiveEditor() == DomaincontextcodegenEditor.this) {
+ handleActivate();
+ }
+ }
+ });
+ }
+ } catch (CoreException exception) {
+ DomainContextEditorPlugin.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();
+ if(editingDomain.getResourceToReadOnlyMap() != null) {
+ editingDomain.getResourceToReadOnlyMap().clear();
- // Refresh any actions that may become enabled or disabled.
- //
- setSelection(getSelection());
+ // Refresh any actions that may become enabled or disabled.
+ //
+ setSelection(getSelection());
}
- if (!removedResources.isEmpty()) {
- if (handleDirtyConflict()) {
+ if(!removedResources.isEmpty()) {
+ if(handleDirtyConflict()) {
getSite().getPage().closeEditor(DomaincontextcodegenEditor.this, false);
- }
- else {
+ } else {
removedResources.clear();
changedResources.clear();
savedResources.clear();
}
- }
- else if (!changedResources.isEmpty()) {
+ } else if(!changedResources.isEmpty()) {
changedResources.removeAll(savedResources);
handleChangedResources();
changedResources.clear();
@@ -569,31 +554,31 @@ public class DomaincontextcodegenEditor
* 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()) {
+ if(!changedResources.isEmpty() && (!isDirty() || handleDirtyConflict())) {
+ if(isDirty()) {
changedResources.addAll(editingDomain.getResourceSet().getResources());
}
editingDomain.getCommandStack().flush();
updateProblemIndication = false;
- for (Resource resource : changedResources) {
- if (resource.isLoaded()) {
+ for(Resource resource : changedResources) {
+ if(resource.isLoaded()) {
resource.unload();
try {
resource.load(Collections.EMPTY_MAP);
- }
- catch (IOException exception) {
- if (!resourceToDiagnosticMap.containsKey(resource)) {
+ } catch (IOException exception) {
+ if(!resourceToDiagnosticMap.containsKey(resource)) {
resourceToDiagnosticMap.put(resource, analyzeResourceProblems(resource, exception));
}
}
}
}
- if (AdapterFactoryEditingDomain.isStale(editorSelection)) {
+ if(AdapterFactoryEditingDomain.isStale(editorSelection)) {
setSelection(StructuredSelection.EMPTY);
}
@@ -601,36 +586,30 @@ public class DomaincontextcodegenEditor
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.domaincontextcodegen.editor",
- 0,
- null,
- new Object [] { editingDomain.getResourceSet() });
- for (Diagnostic childDiagnostic : resourceToDiagnosticMap.values()) {
- if (childDiagnostic.getSeverity() != Diagnostic.OK) {
+ if(updateProblemIndication) {
+ BasicDiagnostic diagnostic = new BasicDiagnostic(Diagnostic.OK, "org.eclipse.papyrus.domaincontextcodegen.editor", 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) {
+ if(lastEditorPage >= 0 && getEditor(lastEditorPage) instanceof ProblemEditorPart) {
((ProblemEditorPart)getEditor(lastEditorPage)).setDiagnostic(diagnostic);
- if (diagnostic.getSeverity() != Diagnostic.OK) {
+ if(diagnostic.getSeverity() != Diagnostic.OK) {
setActivePage(lastEditorPage);
}
- }
- else if (diagnostic.getSeverity() != Diagnostic.OK) {
+ } else if(diagnostic.getSeverity() != Diagnostic.OK) {
ProblemEditorPart problemEditorPart = new ProblemEditorPart();
problemEditorPart.setDiagnostic(diagnostic);
problemEditorPart.setMarkerHelper(markerHelper);
@@ -639,19 +618,17 @@ public class DomaincontextcodegenEditor
setPageText(lastEditorPage, problemEditorPart.getPartName());
setActivePage(lastEditorPage);
showTabs();
- }
- catch (PartInitException exception) {
+ } catch (PartInitException exception) {
DomainContextEditorPlugin.INSTANCE.log(exception);
}
}
- if (markerHelper.hasMarkers(editingDomain.getResourceSet())) {
+ if(markerHelper.hasMarkers(editingDomain.getResourceSet())) {
markerHelper.deleteMarkers(editingDomain.getResourceSet());
- if (diagnostic.getSeverity() != Diagnostic.OK) {
+ if(diagnostic.getSeverity() != Diagnostic.OK) {
try {
markerHelper.createMarkers(diagnostic);
- }
- catch (CoreException exception) {
+ } catch (CoreException exception) {
DomainContextEditorPlugin.INSTANCE.log(exception);
}
}
@@ -663,20 +640,18 @@ public class DomaincontextcodegenEditor
* 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"),
- getString("_WARN_FileConflict"));
+ return MessageDialog.openQuestion(getSite().getShell(), getString("_UI_FileConflict_label"), getString("_WARN_FileConflict"));
}
/**
* This creates a model editor.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
public DomaincontextcodegenEditor() {
@@ -688,6 +663,7 @@ public class DomaincontextcodegenEditor
* This sets up the editing domain for the model editor.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected void initializeEditingDomain() {
@@ -706,27 +682,27 @@ public class DomaincontextcodegenEditor
// 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();
- }
- }
- });
- }
- });
+ 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.
//
@@ -737,9 +713,10 @@ public class DomaincontextcodegenEditor
* This is here for the listener to be able to call it.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
- @Override
+ @Override
protected void firePropertyChange(int action) {
super.firePropertyChange(action);
}
@@ -748,33 +725,35 @@ public class DomaincontextcodegenEditor
* 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);
- }
+ 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}.
+ * 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() {
@@ -784,12 +763,15 @@ public class DomaincontextcodegenEditor
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
public class ReverseAdapterFactoryContentProvider extends AdapterFactoryContentProvider {
+
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
public ReverseAdapterFactoryContentProvider(AdapterFactory adapterFactory) {
@@ -799,10 +781,11 @@ public class DomaincontextcodegenEditor
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
@Override
- public Object [] getElements(Object object) {
+ public Object[] getElements(Object object) {
Object parent = super.getParent(object);
return (parent == null ? Collections.EMPTY_SET : Collections.singleton(parent)).toArray();
}
@@ -810,10 +793,11 @@ public class DomaincontextcodegenEditor
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
@Override
- public Object [] getChildren(Object object) {
+ public Object[] getChildren(Object object) {
Object parent = super.getParent(object);
return (parent == null ? Collections.EMPTY_SET : Collections.singleton(parent)).toArray();
}
@@ -821,6 +805,7 @@ public class DomaincontextcodegenEditor
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
@Override
@@ -832,6 +817,7 @@ public class DomaincontextcodegenEditor
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
@Override
@@ -843,11 +829,12 @@ public class DomaincontextcodegenEditor
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
public void setCurrentViewerPane(ViewerPane viewerPane) {
- if (currentViewerPane != viewerPane) {
- if (currentViewerPane != null) {
+ if(currentViewerPane != viewerPane) {
+ if(currentViewerPane != null) {
currentViewerPane.showFocus(false);
}
currentViewerPane = viewerPane;
@@ -860,34 +847,35 @@ public class DomaincontextcodegenEditor
* 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) {
+ 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());
- }
- };
+ 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) {
+ if(currentViewer != null) {
currentViewer.removeSelectionChangedListener(selectionChangedListener);
}
// Start listening to the new one.
//
- if (viewer != null) {
+ if(viewer != null) {
viewer.addSelectionChangedListener(selectionChangedListener);
}
@@ -905,6 +893,7 @@ public class DomaincontextcodegenEditor
* This returns the viewer as required by the {@link IViewerProvider} interface.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
public Viewer getViewer() {
@@ -915,6 +904,7 @@ public class DomaincontextcodegenEditor
* 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) {
@@ -922,12 +912,12 @@ public class DomaincontextcodegenEditor
contextMenu.add(new Separator("additions"));
contextMenu.setRemoveAllWhenShown(true);
contextMenu.addMenuListener(this);
- Menu menu= contextMenu.createContextMenu(viewer.getControl());
+ 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() };
+ Transfer[] transfers = new Transfer[]{ LocalTransfer.getInstance() };
viewer.addDragSupport(dndOperations, transfers, new ViewerDragAdapter(viewer));
viewer.addDropSupport(dndOperations, transfers, new EditingDomainViewerDropAdapter(editingDomain, viewer));
}
@@ -936,6 +926,7 @@ public class DomaincontextcodegenEditor
* 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() {
@@ -946,15 +937,14 @@ public class DomaincontextcodegenEditor
// Load the resource through the editing domain.
//
resource = editingDomain.getResourceSet().getResource(resourceURI, true);
- }
- catch (Exception e) {
+ } 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));
+ if(diagnostic.getSeverity() != Diagnostic.OK) {
+ resourceToDiagnosticMap.put(resource, analyzeResourceProblems(resource, exception));
}
editingDomain.getResourceSet().eAdapters().add(problemIndicationAdapter);
}
@@ -964,30 +954,17 @@ public class DomaincontextcodegenEditor
* 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.domaincontextcodegen.editor",
- 0,
- getString("_UI_CreateModelError_message", resource.getURI()),
- new Object [] { exception == null ? (Object)resource : exception });
+ if(!resource.getErrors().isEmpty() || !resource.getWarnings().isEmpty()) {
+ BasicDiagnostic basicDiagnostic = new BasicDiagnostic(Diagnostic.ERROR, "org.eclipse.papyrus.domaincontextcodegen.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.domaincontextcodegen.editor",
- 0,
- getString("_UI_CreateModelError_message", resource.getURI()),
- new Object[] { exception });
- }
- else {
+ } else if(exception != null) {
+ return new BasicDiagnostic(Diagnostic.ERROR, "org.eclipse.papyrus.domaincontextcodegen.editor", 0, getString("_UI_CreateModelError_message", resource.getURI()), new Object[]{ exception });
+ } else {
return Diagnostic.OK_INSTANCE;
}
}
@@ -996,6 +973,7 @@ public class DomaincontextcodegenEditor
* This is the method used by the framework to install your own controls.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
@Override
@@ -1006,24 +984,25 @@ public class DomaincontextcodegenEditor
// Only creates the other pages if there is something that can be edited
//
- if (!getEditingDomain().getResourceSet().getResources().isEmpty()) {
+ if(!getEditingDomain().getResourceSet().getResources().isEmpty()) {
// Create a page for the selection tree view.
//
{
- ViewerPane viewerPane =
- new ViewerPane(getSite().getPage(), DomaincontextcodegenEditor.this) {
- @Override
- public Viewer createViewer(Composite composite) {
- Tree tree = new Tree(composite, SWT.MULTI);
- TreeViewer newTreeViewer = new TreeViewer(tree);
- return newTreeViewer;
- }
- @Override
- public void requestActivation() {
- super.requestActivation();
- setCurrentViewerPane(this);
- }
- };
+ ViewerPane viewerPane = new ViewerPane(getSite().getPage(), DomaincontextcodegenEditor.this) {
+
+ @Override
+ public Viewer createViewer(Composite composite) {
+ Tree tree = new Tree(composite, SWT.MULTI);
+ TreeViewer newTreeViewer = new TreeViewer(tree);
+ return newTreeViewer;
+ }
+
+ @Override
+ public void requestActivation() {
+ super.requestActivation();
+ setCurrentViewerPane(this);
+ }
+ };
viewerPane.createControl(getContainer());
selectionViewer = (TreeViewer)viewerPane.getViewer();
@@ -1044,20 +1023,21 @@ public class DomaincontextcodegenEditor
// Create a page for the parent tree view.
//
{
- ViewerPane viewerPane =
- new ViewerPane(getSite().getPage(), DomaincontextcodegenEditor.this) {
- @Override
- public Viewer createViewer(Composite composite) {
- Tree tree = new Tree(composite, SWT.MULTI);
- TreeViewer newTreeViewer = new TreeViewer(tree);
- return newTreeViewer;
- }
- @Override
- public void requestActivation() {
- super.requestActivation();
- setCurrentViewerPane(this);
- }
- };
+ ViewerPane viewerPane = new ViewerPane(getSite().getPage(), DomaincontextcodegenEditor.this) {
+
+ @Override
+ public Viewer createViewer(Composite composite) {
+ Tree tree = new Tree(composite, SWT.MULTI);
+ TreeViewer newTreeViewer = new TreeViewer(tree);
+ return newTreeViewer;
+ }
+
+ @Override
+ public void requestActivation() {
+ super.requestActivation();
+ setCurrentViewerPane(this);
+ }
+ };
viewerPane.createControl(getContainer());
parentViewer = (TreeViewer)viewerPane.getViewer();
@@ -1073,18 +1053,19 @@ public class DomaincontextcodegenEditor
// This is the page for the list viewer
//
{
- ViewerPane viewerPane =
- new ViewerPane(getSite().getPage(), DomaincontextcodegenEditor.this) {
- @Override
- public Viewer createViewer(Composite composite) {
- return new ListViewer(composite);
- }
- @Override
- public void requestActivation() {
- super.requestActivation();
- setCurrentViewerPane(this);
- }
- };
+ ViewerPane viewerPane = new ViewerPane(getSite().getPage(), DomaincontextcodegenEditor.this) {
+
+ @Override
+ public Viewer createViewer(Composite composite) {
+ return new ListViewer(composite);
+ }
+
+ @Override
+ public void requestActivation() {
+ super.requestActivation();
+ setCurrentViewerPane(this);
+ }
+ };
viewerPane.createControl(getContainer());
listViewer = (ListViewer)viewerPane.getViewer();
listViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
@@ -1098,18 +1079,19 @@ public class DomaincontextcodegenEditor
// This is the page for the tree viewer
//
{
- ViewerPane viewerPane =
- new ViewerPane(getSite().getPage(), DomaincontextcodegenEditor.this) {
- @Override
- public Viewer createViewer(Composite composite) {
- return new TreeViewer(composite);
- }
- @Override
- public void requestActivation() {
- super.requestActivation();
- setCurrentViewerPane(this);
- }
- };
+ ViewerPane viewerPane = new ViewerPane(getSite().getPage(), DomaincontextcodegenEditor.this) {
+
+ @Override
+ public Viewer createViewer(Composite composite) {
+ return new TreeViewer(composite);
+ }
+
+ @Override
+ public void requestActivation() {
+ super.requestActivation();
+ setCurrentViewerPane(this);
+ }
+ };
viewerPane.createControl(getContainer());
treeViewer = (TreeViewer)viewerPane.getViewer();
treeViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
@@ -1125,18 +1107,19 @@ public class DomaincontextcodegenEditor
// This is the page for the table viewer.
//
{
- ViewerPane viewerPane =
- new ViewerPane(getSite().getPage(), DomaincontextcodegenEditor.this) {
- @Override
- public Viewer createViewer(Composite composite) {
- return new TableViewer(composite);
- }
- @Override
- public void requestActivation() {
- super.requestActivation();
- setCurrentViewerPane(this);
- }
- };
+ ViewerPane viewerPane = new ViewerPane(getSite().getPage(), DomaincontextcodegenEditor.this) {
+
+ @Override
+ public Viewer createViewer(Composite composite) {
+ return new TableViewer(composite);
+ }
+
+ @Override
+ public void requestActivation() {
+ super.requestActivation();
+ setCurrentViewerPane(this);
+ }
+ };
viewerPane.createControl(getContainer());
tableViewer = (TableViewer)viewerPane.getViewer();
@@ -1156,7 +1139,7 @@ public class DomaincontextcodegenEditor
selfColumn.setText(getString("_UI_SelfColumn_label"));
selfColumn.setResizable(true);
- tableViewer.setColumnProperties(new String [] {"a", "b"});
+ tableViewer.setColumnProperties(new String[]{ "a", "b" });
tableViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
tableViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
@@ -1168,18 +1151,19 @@ public class DomaincontextcodegenEditor
// This is the page for the table tree viewer.
//
{
- ViewerPane viewerPane =
- new ViewerPane(getSite().getPage(), DomaincontextcodegenEditor.this) {
- @Override
- public Viewer createViewer(Composite composite) {
- return new TreeViewer(composite);
- }
- @Override
- public void requestActivation() {
- super.requestActivation();
- setCurrentViewerPane(this);
- }
- };
+ ViewerPane viewerPane = new ViewerPane(getSite().getPage(), DomaincontextcodegenEditor.this) {
+
+ @Override
+ public Viewer createViewer(Composite composite) {
+ return new TreeViewer(composite);
+ }
+
+ @Override
+ public void requestActivation() {
+ super.requestActivation();
+ setCurrentViewerPane(this);
+ }
+ };
viewerPane.createControl(getContainer());
treeViewerWithColumns = (TreeViewer)viewerPane.getViewer();
@@ -1199,7 +1183,7 @@ public class DomaincontextcodegenEditor
selfColumn.setResizable(true);
selfColumn.setWidth(200);
- treeViewerWithColumns.setColumnProperties(new String [] {"a", "b"});
+ treeViewerWithColumns.setColumnProperties(new String[]{ "a", "b" });
treeViewerWithColumns.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
treeViewerWithColumns.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
@@ -1208,36 +1192,37 @@ public class DomaincontextcodegenEditor
setPageText(pageIndex, getString("_UI_TreeWithColumnsPage_label"));
}
- getSite().getShell().getDisplay().asyncExec
- (new Runnable() {
- public void run() {
- setActivePage(0);
- }
- });
+ 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;
- }
+ 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();
- }
- });
+ }
+ });
+
+ getSite().getShell().getDisplay().asyncExec(new Runnable() {
+
+ public void run() {
+ updateProblemIndication();
+ }
+ });
}
/**
@@ -1245,12 +1230,13 @@ public class DomaincontextcodegenEditor
* this hides the single tab at the bottom.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected void hideTabs() {
- if (getPageCount() <= 1) {
+ if(getPageCount() <= 1) {
setPageText(0, "");
- if (getContainer() instanceof CTabFolder) {
+ if(getContainer() instanceof CTabFolder) {
((CTabFolder)getContainer()).setTabHeight(1);
Point point = getContainer().getSize();
getContainer().setSize(point.x, point.y + 6);
@@ -1263,12 +1249,13 @@ public class DomaincontextcodegenEditor
* this shows the tabs at the bottom.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected void showTabs() {
- if (getPageCount() > 1) {
+ if(getPageCount() > 1) {
setPageText(0, getString("_UI_SelectionPage_label"));
- if (getContainer() instanceof CTabFolder) {
+ if(getContainer() instanceof CTabFolder) {
((CTabFolder)getContainer()).setTabHeight(SWT.DEFAULT);
Point point = getContainer().getSize();
getContainer().setSize(point.x, point.y - 6);
@@ -1280,13 +1267,14 @@ public class DomaincontextcodegenEditor
* 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) {
+ if(contentOutlinePage != null) {
handleContentOutlineSelection(contentOutlinePage.getSelection());
}
}
@@ -1295,21 +1283,19 @@ public class DomaincontextcodegenEditor
* 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)) {
+ if(key.equals(IContentOutlinePage.class)) {
return showOutlineView() ? getContentOutlinePage() : null;
- }
- else if (key.equals(IPropertySheetPage.class)) {
+ } else if(key.equals(IPropertySheetPage.class)) {
return getPropertySheetPage();
- }
- else if (key.equals(IGotoMarker.class)) {
+ } else if(key.equals(IGotoMarker.class)) {
return this;
- }
- else {
+ } else {
return super.getAdapter(key);
}
}
@@ -1318,13 +1304,15 @@ public class DomaincontextcodegenEditor
* This accesses a cached version of the content outliner.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
public IContentOutlinePage getContentOutlinePage() {
- if (contentOutlinePage == null) {
+ if(contentOutlinePage == null) {
// The content outline is just a tree.
//
class MyContentOutlinePage extends ContentOutlinePage {
+
@Override
public void createControl(Composite parent) {
super.createControl(parent);
@@ -1341,10 +1329,10 @@ public class DomaincontextcodegenEditor
//
createContextMenuFor(contentOutlineViewer);
- if (!editingDomain.getResourceSet().getResources().isEmpty()) {
- // Select the root object in the view.
- //
- contentOutlineViewer.setSelection(new StructuredSelection(editingDomain.getResourceSet().getResources().get(0)), true);
+ if(!editingDomain.getResourceSet().getResources().isEmpty()) {
+ // Select the root object in the view.
+ //
+ contentOutlineViewer.setSelection(new StructuredSelection(editingDomain.getResourceSet().getResources().get(0)), true);
}
}
@@ -1365,14 +1353,14 @@ public class DomaincontextcodegenEditor
// 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());
- }
- });
+ contentOutlinePage.addSelectionChangedListener(new ISelectionChangedListener() {
+
+ // This ensures that we handle selections correctly.
+ //
+ public void selectionChanged(SelectionChangedEvent event) {
+ handleContentOutlineSelection(event.getSelection());
+ }
+ });
}
return contentOutlinePage;
@@ -1382,24 +1370,25 @@ public class DomaincontextcodegenEditor
* 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) {
- DomaincontextcodegenEditor.this.setSelectionToViewer(selection);
- DomaincontextcodegenEditor.this.setFocus();
- }
+ if(propertySheetPage == null) {
+ propertySheetPage = new ExtendedPropertySheetPage(editingDomain) {
- @Override
- public void setActionBars(IActionBars actionBars) {
- super.setActionBars(actionBars);
- getActionBarContributor().shareGlobalActions(this, actionBars);
- }
- };
+ @Override
+ public void setSelectionToViewer(List<?> selection) {
+ DomaincontextcodegenEditor.this.setSelectionToViewer(selection);
+ DomaincontextcodegenEditor.this.setFocus();
+ }
+
+ @Override
+ public void setActionBars(IActionBars actionBars) {
+ super.setActionBars(actionBars);
+ getActionBarContributor().shareGlobalActions(this, actionBars);
+ }
+ };
propertySheetPage.setPropertySourceProvider(new AdapterFactoryContentProvider(adapterFactory));
}
@@ -1410,33 +1399,33 @@ public class DomaincontextcodegenEditor
* 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 (currentViewerPane != null && !selection.isEmpty() && selection instanceof IStructuredSelection) {
+ if(currentViewerPane != null && !selection.isEmpty() && selection instanceof IStructuredSelection) {
Iterator<?> selectedElements = ((IStructuredSelection)selection).iterator();
- if (selectedElements.hasNext()) {
+ 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.
//
- if (currentViewerPane.getViewer() == selectionViewer) {
+ if(currentViewerPane.getViewer() == selectionViewer) {
ArrayList<Object> selectionList = new ArrayList<Object>();
selectionList.add(selectedElement);
- while (selectedElements.hasNext()) {
+ while(selectedElements.hasNext()) {
selectionList.add(selectedElements.next());
}
// Set the selection to the widget.
//
selectionViewer.setSelection(new StructuredSelection(selectionList));
- }
- else {
+ } else {
// Set the input to the widget.
//
- if (currentViewerPane.getViewer().getInput() != selectedElement) {
+ if(currentViewerPane.getViewer().getInput() != selectedElement) {
currentViewerPane.getViewer().setInput(selectedElement);
currentViewerPane.setTitle(selectedElement);
}
@@ -1449,6 +1438,7 @@ public class DomaincontextcodegenEditor
* This is for implementing {@link IEditorPart} and simply tests the command stack.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
@Override
@@ -1460,6 +1450,7 @@ public class DomaincontextcodegenEditor
* This is for implementing {@link IEditorPart} and simply saves the model file.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
@Override
@@ -1471,32 +1462,31 @@ public class DomaincontextcodegenEditor
// 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.
+ 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.
//
- @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));
+ 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);
}
- first = false;
+ } catch (Exception exception) {
+ resourceToDiagnosticMap.put(resource, analyzeResourceProblems(resource, exception));
}
+ first = false;
}
}
- };
+ }
+ };
updateProblemIndication = false;
try {
@@ -1508,8 +1498,7 @@ public class DomaincontextcodegenEditor
//
((BasicCommandStack)editingDomain.getCommandStack()).saveIsDone();
firePropertyChange(IEditorPart.PROP_DIRTY);
- }
- catch (Exception exception) {
+ } catch (Exception exception) {
// Something went wrong that shouldn't.
//
DomainContextEditorPlugin.INSTANCE.log(exception);
@@ -1520,21 +1509,21 @@ public class DomaincontextcodegenEditor
/**
* 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.
+ * 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) {
+ if(stream != null) {
result = true;
stream.close();
}
- }
- catch (IOException e) {
+ } catch (IOException e) {
// Ignore
}
return result;
@@ -1544,6 +1533,7 @@ public class DomaincontextcodegenEditor
* This always returns true because it is not currently supported.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
@Override
@@ -1555,6 +1545,7 @@ public class DomaincontextcodegenEditor
* This also changes the editor's input.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
@Override
@@ -1562,9 +1553,9 @@ public class DomaincontextcodegenEditor
SaveAsDialog saveAsDialog = new SaveAsDialog(getSite().getShell());
saveAsDialog.open();
IPath path = saveAsDialog.getResult();
- if (path != null) {
+ if(path != null) {
IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(path);
- if (file != null) {
+ if(file != null) {
doSaveAs(URI.createPlatformResourceURI(file.getFullPath().toString(), true), new FileEditorInput(file));
}
}
@@ -1573,38 +1564,36 @@ public class DomaincontextcodegenEditor
/**
* <!-- 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();
+ 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)) {
+ if(marker.getType().equals(EValidator.MARKER)) {
String uriAttribute = marker.getAttribute(EValidator.URI_ATTRIBUTE, null);
- if (uriAttribute != 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)));
+ if(eObject != null) {
+ setSelectionToViewer(Collections.singleton(editingDomain.getWrapper(eObject)));
}
}
}
- }
- catch (CoreException exception) {
+ } catch (CoreException exception) {
DomainContextEditorPlugin.INSTANCE.log(exception);
}
}
@@ -1613,6 +1602,7 @@ public class DomaincontextcodegenEditor
* This is called during startup.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
@Override
@@ -1628,14 +1618,14 @@ public class DomaincontextcodegenEditor
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
@Override
public void setFocus() {
- if (currentViewerPane != null) {
+ if(currentViewerPane != null) {
currentViewerPane.setFocus();
- }
- else {
+ } else {
getControl(getActivePage()).setFocus();
}
}
@@ -1644,6 +1634,7 @@ public class DomaincontextcodegenEditor
* This implements {@link org.eclipse.jface.viewers.ISelectionProvider}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
public void addSelectionChangedListener(ISelectionChangedListener listener) {
@@ -1654,6 +1645,7 @@ public class DomaincontextcodegenEditor
* This implements {@link org.eclipse.jface.viewers.ISelectionProvider}.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
public void removeSelectionChangedListener(ISelectionChangedListener listener) {
@@ -1664,6 +1656,7 @@ public class DomaincontextcodegenEditor
* 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() {
@@ -1675,12 +1668,13 @@ public class DomaincontextcodegenEditor
* 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) {
+ for(ISelectionChangedListener listener : selectionChangedListeners) {
listener.selectionChanged(new SelectionChangedEvent(this, selection));
}
setStatusLineManager(selection);
@@ -1689,32 +1683,34 @@ public class DomaincontextcodegenEditor
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
public void setStatusLineManager(ISelection selection) {
- IStatusLineManager statusLineManager = currentViewer != null && currentViewer == contentOutlineViewer ?
- contentOutlineStatusLineManager : getActionBars().getStatusLineManager();
+ IStatusLineManager statusLineManager = currentViewer != null && currentViewer == contentOutlineViewer ? contentOutlineStatusLineManager : getActionBars().getStatusLineManager();
- if (statusLineManager != null) {
- if (selection instanceof IStructuredSelection) {
+ 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;
- }
+ switch(collection.size()) {
+ case 0:
+ {
+ statusLineManager.setMessage(getString("_UI_NoObjectSelected"));
+ break;
}
- }
- else {
+ 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("");
}
}
@@ -1724,6 +1720,7 @@ public class DomaincontextcodegenEditor
* 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) {
@@ -1734,16 +1731,18 @@ public class DomaincontextcodegenEditor
* 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 DomainContextEditorPlugin.INSTANCE.getString(key, new Object [] { s1 });
+ return DomainContextEditorPlugin.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) {
@@ -1753,6 +1752,7 @@ public class DomaincontextcodegenEditor
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
public EditingDomainActionBarContributor getActionBarContributor() {
@@ -1762,6 +1762,7 @@ public class DomaincontextcodegenEditor
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
public IActionBars getActionBars() {
@@ -1771,6 +1772,7 @@ public class DomaincontextcodegenEditor
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
public AdapterFactory getAdapterFactory() {
@@ -1780,6 +1782,7 @@ public class DomaincontextcodegenEditor
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
@Override
@@ -1792,15 +1795,15 @@ public class DomaincontextcodegenEditor
adapterFactory.dispose();
- if (getActionBarContributor().getActiveEditor() == this) {
+ if(getActionBarContributor().getActiveEditor() == this) {
getActionBarContributor().setActiveEditor(null);
}
- if (propertySheetPage != null) {
+ if(propertySheetPage != null) {
propertySheetPage.dispose();
}
- if (contentOutlinePage != null) {
+ if(contentOutlinePage != null) {
contentOutlinePage.dispose();
}
@@ -1811,6 +1814,7 @@ public class DomaincontextcodegenEditor
* Returns whether the outline view should be presented to the user.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected boolean showOutlineView() {
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.editor/src/org/eclipse/papyrus/domaincontextcodegen/presentation/DomaincontextcodegenModelWizard.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.editor/src/org/eclipse/papyrus/domaincontextcodegen/presentation/DomaincontextcodegenModelWizard.java
index 4c71a8d0f8d..85814c0a1eb 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.editor/src/org/eclipse/papyrus/domaincontextcodegen/presentation/DomaincontextcodegenModelWizard.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen.editor/src/org/eclipse/papyrus/domaincontextcodegen/presentation/DomaincontextcodegenModelWizard.java
@@ -6,7 +6,6 @@
*/
package org.eclipse.papyrus.domaincontextcodegen.presentation;
-
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
@@ -17,107 +16,84 @@ import java.util.Map;
import java.util.MissingResourceException;
import java.util.StringTokenizer;
+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.core.runtime.Path;
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.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.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.ISelection;
import org.eclipse.jface.viewers.IStructuredSelection;
-
+import org.eclipse.jface.viewers.StructuredSelection;
import org.eclipse.jface.wizard.Wizard;
import org.eclipse.jface.wizard.WizardPage;
-
+import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenFactory;
+import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage;
+import org.eclipse.papyrus.domaincontextcodegen.provider.DomainContextEditPlugin;
import org.eclipse.swt.SWT;
-
-import org.eclipse.swt.events.ModifyListener;
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.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.papyrus.domaincontextcodegen.DomaincontextcodegenFactory;
-import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage;
-import org.eclipse.papyrus.domaincontextcodegen.provider.DomainContextEditPlugin;
-
-
-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;
-
+import org.eclipse.ui.actions.WorkspaceModifyOperation;
+import org.eclipse.ui.dialogs.WizardNewFileCreationPage;
+import org.eclipse.ui.part.FileEditorInput;
+import org.eclipse.ui.part.ISetSelectionTarget;
/**
* This is a simple wizard for creating a new model file.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
public class DomaincontextcodegenModelWizard 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(DomainContextEditorPlugin.INSTANCE.getString("_UI_DomaincontextcodegenEditorFilenameExtensions").split("\\s*,\\s*")));
+ public static final List<String> FILE_EXTENSIONS = Collections.unmodifiableList(Arrays.asList(DomainContextEditorPlugin.INSTANCE.getString("_UI_DomaincontextcodegenEditorFilenameExtensions").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 =
- DomainContextEditorPlugin.INSTANCE.getString("_UI_DomaincontextcodegenEditorFilenameExtensions").replaceAll("\\s*,\\s*", ", ");
+ public static final String FORMATTED_FILE_EXTENSIONS = DomainContextEditorPlugin.INSTANCE.getString("_UI_DomaincontextcodegenEditorFilenameExtensions").replaceAll("\\s*,\\s*", ", ");
/**
* This caches an instance of the model package.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected DomaincontextcodegenPackage domaincontextcodegenPackage = DomaincontextcodegenPackage.eINSTANCE;
@@ -126,6 +102,7 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
* This caches an instance of the model factory.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected DomaincontextcodegenFactory domaincontextcodegenFactory = domaincontextcodegenPackage.getDomaincontextcodegenFactory();
@@ -134,6 +111,7 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
* This is the file creation page.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected DomaincontextcodegenModelWizardNewFileCreationPage newFileCreationPage;
@@ -142,6 +120,7 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
* This is the initial object creation page.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected DomaincontextcodegenModelWizardInitialObjectCreationPage initialObjectCreationPage;
@@ -150,6 +129,7 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
* Remember the selection during initialization for populating the default container.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected IStructuredSelection selection;
@@ -158,6 +138,7 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
* Remember the workbench during initialization.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected IWorkbench workbench;
@@ -166,6 +147,7 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
* 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;
@@ -174,6 +156,7 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
* This just records the information.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
public void init(IWorkbench workbench, IStructuredSelection selection) {
@@ -187,15 +170,16 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
* 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) {
+ if(initialObjectNames == null) {
initialObjectNames = new ArrayList<String>();
- for (EClassifier eClassifier : domaincontextcodegenPackage.getEClassifiers()) {
- if (eClassifier instanceof EClass) {
+ for(EClassifier eClassifier : domaincontextcodegenPackage.getEClassifiers()) {
+ if(eClassifier instanceof EClass) {
EClass eClass = (EClass)eClassifier;
- if (!eClass.isAbstract()) {
+ if(!eClass.isAbstract()) {
initialObjectNames.add(eClass.getName());
}
}
@@ -209,6 +193,7 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
* Create a new model.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected EObject createInitialModel() {
@@ -221,6 +206,7 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
* Do the work after everything is specified.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
@Override
@@ -232,44 +218,42 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
// 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) {
- DomainContextEditorPlugin.INSTANCE.log(exception);
- }
- finally {
- progressMonitor.done();
+ 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) {
+ DomainContextEditorPlugin.INSTANCE.log(exception);
+ } finally {
+ progressMonitor.done();
}
- };
+ }
+ };
getContainer().run(false, false, operation);
@@ -278,31 +262,27 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
IWorkbenchWindow workbenchWindow = workbench.getActiveWorkbenchWindow();
IWorkbenchPage page = workbenchWindow.getActivePage();
final IWorkbenchPart activePart = page.getActivePart();
- if (activePart instanceof ISetSelectionTarget) {
+ if(activePart instanceof ISetSelectionTarget) {
final ISelection targetSelection = new StructuredSelection(modelFile);
- getShell().getDisplay().asyncExec
- (new Runnable() {
- public void run() {
- ((ISetSelectionTarget)activePart).selectReveal(targetSelection);
- }
- });
+ 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) {
+ page.openEditor(new FileEditorInput(modelFile), workbench.getEditorRegistry().getDefaultEditor(modelFile.getFullPath().toString()).getId());
+ } catch (PartInitException exception) {
MessageDialog.openError(workbenchWindow.getShell(), DomainContextEditorPlugin.INSTANCE.getString("_UI_OpenEditorError_label"), exception.getMessage());
return false;
}
return true;
- }
- catch (Exception exception) {
+ } catch (Exception exception) {
DomainContextEditorPlugin.INSTANCE.log(exception);
return false;
}
@@ -312,13 +292,16 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
* This is the one page of the wizard.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
public class DomaincontextcodegenModelWizardNewFileCreationPage extends WizardNewFileCreationPage {
+
/**
* Pass in the selection.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
public DomaincontextcodegenModelWizardNewFileCreationPage(String pageId, IStructuredSelection selection) {
@@ -329,15 +312,16 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
* 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()) {
+ if(super.validatePage()) {
String extension = new Path(getFileName()).getFileExtension();
- if (extension == null || !FILE_EXTENSIONS.contains(extension)) {
+ if(extension == null || !FILE_EXTENSIONS.contains(extension)) {
String key = FILE_EXTENSIONS.size() > 1 ? "_WARN_FilenameExtensions" : "_WARN_FilenameExtension";
- setErrorMessage(DomainContextEditorPlugin.INSTANCE.getString(key, new Object [] { FORMATTED_FILE_EXTENSIONS }));
+ setErrorMessage(DomainContextEditorPlugin.INSTANCE.getString(key, new Object[]{ FORMATTED_FILE_EXTENSIONS }));
return false;
}
return true;
@@ -348,6 +332,7 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
public IFile getModelFile() {
@@ -359,26 +344,30 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
* This is the page where the type of object to create is selected.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
public class DomaincontextcodegenModelWizardInitialObjectCreationPage extends WizardPage {
+
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected Combo initialObjectField;
/**
* @generated
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
*/
protected List<String> encodings;
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected Combo encodingField;
@@ -387,6 +376,7 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
* Pass in the selection.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
public DomaincontextcodegenModelWizardInitialObjectCreationPage(String pageId) {
@@ -396,10 +386,12 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
public void createControl(Composite parent) {
- Composite composite = new Composite(parent, SWT.NONE); {
+ Composite composite = new Composite(parent, SWT.NONE);
+ {
GridLayout layout = new GridLayout();
layout.numColumns = 1;
layout.verticalSpacing = 12;
@@ -429,11 +421,11 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
initialObjectField.setLayoutData(data);
}
- for (String objectName : getInitialObjectNames()) {
+ for(String objectName : getInitialObjectNames()) {
initialObjectField.add(getLabel(objectName));
}
- if (initialObjectField.getItemCount() == 1) {
+ if(initialObjectField.getItemCount() == 1) {
initialObjectField.select(0);
}
initialObjectField.addModifyListener(validator);
@@ -454,7 +446,7 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
encodingField.setLayoutData(data);
}
- for (String encoding : getEncodings()) {
+ for(String encoding : getEncodings()) {
encodingField.add(encoding);
}
@@ -468,18 +460,20 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
- protected ModifyListener validator =
- new ModifyListener() {
- public void modifyText(ModifyEvent e) {
- setPageComplete(validatePage());
- }
- };
+ protected ModifyListener validator = new ModifyListener() {
+
+ public void modifyText(ModifyEvent e) {
+ setPageComplete(validatePage());
+ }
+ };
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected boolean validatePage() {
@@ -489,17 +483,17 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
@Override
public void setVisible(boolean visible) {
super.setVisible(visible);
- if (visible) {
- if (initialObjectField.getItemCount() == 1) {
+ if(visible) {
+ if(initialObjectField.getItemCount() == 1) {
initialObjectField.clearSelection();
encodingField.setFocus();
- }
- else {
+ } else {
encodingField.clearSelection();
initialObjectField.setFocus();
}
@@ -509,13 +503,14 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
public String getInitialObjectName() {
String label = initialObjectField.getText();
- for (String name : getInitialObjectNames()) {
- if (getLabel(name).equals(label)) {
+ for(String name : getInitialObjectNames()) {
+ if(getLabel(name).equals(label)) {
return name;
}
}
@@ -525,6 +520,7 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
public String getEncoding() {
@@ -535,13 +531,13 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
* Returns the label for the specified type name.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected String getLabel(String typeName) {
try {
return DomainContextEditPlugin.INSTANCE.getString("_UI_" + typeName + "_type");
- }
- catch(MissingResourceException mre) {
+ } catch (MissingResourceException mre) {
DomainContextEditorPlugin.INSTANCE.log(mre);
}
return typeName;
@@ -550,12 +546,13 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
/**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
protected Collection<String> getEncodings() {
- if (encodings == null) {
+ if(encodings == null) {
encodings = new ArrayList<String>();
- for (StringTokenizer stringTokenizer = new StringTokenizer(DomainContextEditorPlugin.INSTANCE.getString("_UI_XMLEncodingChoices")); stringTokenizer.hasMoreTokens(); ) {
+ for(StringTokenizer stringTokenizer = new StringTokenizer(DomainContextEditorPlugin.INSTANCE.getString("_UI_XMLEncodingChoices")); stringTokenizer.hasMoreTokens();) {
encodings.add(stringTokenizer.nextToken());
}
}
@@ -567,9 +564,10 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
* The framework calls this to create the contents of the wizard.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
- @Override
+ @Override
public void addPages() {
// Create a page, set the title, and the initial model file name.
//
@@ -581,21 +579,21 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
// Try and get the resource selection to determine a current directory for the file dialog.
//
- if (selection != null && !selection.isEmpty()) {
+ if(selection != null && !selection.isEmpty()) {
// Get the resource...
//
Object selectedElement = selection.iterator().next();
- if (selectedElement instanceof IResource) {
+ if(selectedElement instanceof IResource) {
// Get the resource parent, if its a file.
//
IResource selectedResource = (IResource)selectedElement;
- if (selectedResource.getType() == IResource.FILE) {
+ if(selectedResource.getType() == IResource.FILE) {
selectedResource = selectedResource.getParent();
}
// This gives us a directory...
//
- if (selectedResource instanceof IFolder || selectedResource instanceof IProject) {
+ if(selectedResource instanceof IFolder || selectedResource instanceof IProject) {
// Set this for the container.
//
newFileCreationPage.setContainerFullPath(selectedResource.getFullPath());
@@ -605,7 +603,7 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
String defaultModelBaseFilename = DomainContextEditorPlugin.INSTANCE.getString("_UI_DomaincontextcodegenEditorFilenameDefaultBase");
String defaultModelFilenameExtension = FILE_EXTENSIONS.get(0);
String modelFilename = defaultModelBaseFilename + "." + defaultModelFilenameExtension;
- for (int i = 1; ((IContainer)selectedResource).findMember(modelFilename) != null; ++i) {
+ for(int i = 1; ((IContainer)selectedResource).findMember(modelFilename) != null; ++i) {
modelFilename = defaultModelBaseFilename + i + "." + defaultModelFilenameExtension;
}
newFileCreationPage.setFileName(modelFilename);
@@ -622,6 +620,7 @@ public class DomaincontextcodegenModelWizard extends Wizard implements INewWizar
* Get the file from the page.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
+ *
* @generated
*/
public IFile getModelFile() {
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/actionsrc/org/eclipse/papyrus/domaincontextcodegen/AddBindingsAction.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/actionsrc/org/eclipse/papyrus/domaincontextcodegen/AddBindingsAction.java
new file mode 100644
index 00000000000..2b6a5d440fc
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/actionsrc/org/eclipse/papyrus/domaincontextcodegen/AddBindingsAction.java
@@ -0,0 +1,57 @@
+/*****************************************************************************
+ * 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
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.domaincontextcodegen;
+
+import java.util.Iterator;
+
+import org.eclipse.jface.action.IAction;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.ui.IObjectActionDelegate;
+import org.eclipse.ui.IWorkbenchPart;
+
+public class AddBindingsAction implements IObjectActionDelegate {
+
+ protected ElementTypes eltTypes = null;
+
+ public AddBindingsAction() {
+ }
+
+ public void run(IAction action) {
+
+ DomainContext domain = eltTypes.getDomain();
+ ElementTypeBindings bindings = domain.getBindings().get(0);
+
+ Iterator<ElementType> it = eltTypes.getTypes().iterator();
+ while(it.hasNext()) {
+ ElementType elementType = it.next();
+
+ ElementTypeBinding etb = DomaincontextcodegenFactory.eINSTANCE.createElementTypeBinding();
+ etb.setRef(elementType);
+
+ bindings.getBindings().add(etb);
+ }
+ }
+
+ public void selectionChanged(IAction action, ISelection selection) {
+ if(selection instanceof IStructuredSelection) {
+ if(((IStructuredSelection)selection).getFirstElement() instanceof ElementTypes) {
+ eltTypes = (ElementTypes)((IStructuredSelection)selection).getFirstElement();
+ }
+ }
+
+ }
+
+ public void setActivePart(IAction action, IWorkbenchPart targetPart) {
+
+ }
+
+}
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/actionsrc/org/eclipse/papyrus/domaincontextcodegen/AddVisibleCommandForChildrenAction.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/actionsrc/org/eclipse/papyrus/domaincontextcodegen/AddVisibleCommandForChildrenAction.java
new file mode 100644
index 00000000000..a9eedf1725b
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/actionsrc/org/eclipse/papyrus/domaincontextcodegen/AddVisibleCommandForChildrenAction.java
@@ -0,0 +1,60 @@
+/*****************************************************************************
+ * 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
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.domaincontextcodegen;
+
+import java.util.Iterator;
+
+import org.eclipse.jface.action.IAction;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.ui.IObjectActionDelegate;
+import org.eclipse.ui.IWorkbenchPart;
+
+public class AddVisibleCommandForChildrenAction implements IObjectActionDelegate {
+
+ protected GenHandlers handlers = null;
+
+ public AddVisibleCommandForChildrenAction() {
+ }
+
+ public void run(IAction action) {
+
+ DomainContext domain = (DomainContext)handlers.eContainer();
+ ElementTypes types = domain.getElementTypes();
+
+ Iterator<ElementType> it = types.getTypes().iterator();
+ while(it.hasNext()) {
+ ElementType elementType = it.next();
+
+ if(elementType instanceof MetaClassType) {
+ MetaClassType mClassType = (MetaClassType)elementType;
+
+ if(!mClassType.getMetaClass().isAbstract()) {
+ handlers.getVisibleCreateChildHandlers().add(elementType);
+ }
+ }
+ }
+ }
+
+ public void selectionChanged(IAction action, ISelection selection) {
+ if(selection instanceof IStructuredSelection) {
+ if(((IStructuredSelection)selection).getFirstElement() instanceof GenHandlers) {
+ handlers = (GenHandlers)((IStructuredSelection)selection).getFirstElement();
+ }
+ }
+
+ }
+
+ public void setActivePart(IAction action, IWorkbenchPart targetPart) {
+
+ }
+
+}
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/actionsrc/org/eclipse/papyrus/domaincontextcodegen/ElementTypeComparator.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/actionsrc/org/eclipse/papyrus/domaincontextcodegen/ElementTypeComparator.java
index fb009427f97..15d43807e09 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/actionsrc/org/eclipse/papyrus/domaincontextcodegen/ElementTypeComparator.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/actionsrc/org/eclipse/papyrus/domaincontextcodegen/ElementTypeComparator.java
@@ -22,8 +22,8 @@ import java.util.Comparator;
public class ElementTypeComparator implements Comparator<ElementType> {
public int compare(ElementType o1, ElementType o2) {
- String name1 = o1.getSpecificName();
- String name2 = o2.getSpecificName();
+ String name1 = o1.getName();
+ String name2 = o2.getName();
name1.compareTo(name2);
return name1.compareTo(name2);
}
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/actionsrc/org/eclipse/papyrus/domaincontextcodegen/GenerateElementTypeModelAction.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/actionsrc/org/eclipse/papyrus/domaincontextcodegen/GenerateElementTypeModelAction.java
index 2f9627b6aca..982e7e5dbc4 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/actionsrc/org/eclipse/papyrus/domaincontextcodegen/GenerateElementTypeModelAction.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/actionsrc/org/eclipse/papyrus/domaincontextcodegen/GenerateElementTypeModelAction.java
@@ -17,7 +17,6 @@ import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;
-import org.eclipse.emf.codegen.util.CodeGenUtil;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EClassifier;
import org.eclipse.jface.action.IAction;
@@ -36,8 +35,6 @@ import org.eclipse.ui.IWorkbenchPart;
*/
public class GenerateElementTypeModelAction implements IObjectActionDelegate {
- protected static final String I_HINTED_TYPE = "org.eclipse.gmf.runtime.emf.type.core.IHintedType";
-
protected DomainContext selectedContext = null;
public GenerateElementTypeModelAction() {
@@ -51,18 +48,22 @@ public class GenerateElementTypeModelAction implements IObjectActionDelegate {
if(selectedContext.getSpecializationOf() == null) {
if(selectedContext.getMetamodel() != null) {
Iterator<EClassifier> iterClass = selectedContext.getMetamodel().getEClassifiers().iterator();
- ArrayList<ElementType> result = new ArrayList<ElementType>();
+ ArrayList<MetaClassType> result = new ArrayList<MetaClassType>();
while(iterClass.hasNext()) {
EClassifier eClassifier = (EClassifier)iterClass.next();
if(eClassifier instanceof EClass) {
- ElementType elemenType = DomaincontextcodegenFactory.eINSTANCE.createElementType();
- elemenType.setEdithelper_EditHelperAdvicePath(selectedContext.getDefaultHelperPath());
- elemenType.setKind(I_HINTED_TYPE);
+ MetaClassType elemenType = DomaincontextcodegenFactory.eINSTANCE.createMetaClassType();
+ elemenType.setHelper(selectedContext.getDefaultHelperPath());
elemenType.setMetaClass((EClass)eClassifier);
+ elemenType.setIcon("platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/" + eClassifier.getName() + ".gif");
// Convert name to upper case with '_' separator between name parts e.g. NamedElement -> NAMED_ELEMENT
- String formattedName = CodeGenUtil.format(eClassifier.getName(), '_', null, false, true).toUpperCase();
- elemenType.setSpecificName(formattedName);
+ // String formattedName = CodeGenUtil.format(eClassifier.getName(), '_', null, false, true).toUpperCase();
+ // elemenType.setName(not_formattedName);
+
+ // No formatting
+ String not_formattedName = eClassifier.getName();
+ elemenType.setName(not_formattedName);
result.add(elemenType);
}
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/actionsrc/org/eclipse/papyrus/domaincontextcodegen/SetUMLIconInElementTypesAction.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/actionsrc/org/eclipse/papyrus/domaincontextcodegen/SetUMLIconInElementTypesAction.java
new file mode 100644
index 00000000000..cffc723e95b
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/actionsrc/org/eclipse/papyrus/domaincontextcodegen/SetUMLIconInElementTypesAction.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
+ *
+ *****************************************************************************/
+package org.eclipse.papyrus.domaincontextcodegen;
+
+import java.util.Iterator;
+
+import org.eclipse.jface.action.IAction;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.ui.IObjectActionDelegate;
+import org.eclipse.ui.IWorkbenchPart;
+
+public class SetUMLIconInElementTypesAction implements IObjectActionDelegate {
+
+ protected ElementTypes types = null;
+
+ public SetUMLIconInElementTypesAction() {
+ }
+
+ public void run(IAction action) {
+
+ DomainContext domain = (DomainContext)types.eContainer();
+ ElementTypes types = domain.getElementTypes();
+
+ Iterator<ElementType> it = types.getTypes().iterator();
+ while(it.hasNext()) {
+ ElementType elementType = it.next();
+
+ if(elementType instanceof MetaClassType) {
+ MetaClassType mClassType = (MetaClassType)elementType;
+ mClassType.setIcon("platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/" + mClassType.getName() + ".gif");
+ }
+ }
+ }
+
+ public void selectionChanged(IAction action, ISelection selection) {
+ if(selection instanceof IStructuredSelection) {
+ if(((IStructuredSelection)selection).getFirstElement() instanceof ElementTypes) {
+ types = (ElementTypes)((IStructuredSelection)selection).getFirstElement();
+ }
+ }
+ }
+
+ public void setActivePart(IAction action, IWorkbenchPart targetPart) {
+
+ }
+}
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/build.properties b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/build.properties
index 8faaf851b57..46f81bc816f 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/build.properties
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/build.properties
@@ -5,7 +5,6 @@
# $Id$
bin.includes = .,\
- model/,\
META-INF/,\
plugin.xml,\
plugin.properties,\
@@ -13,5 +12,7 @@ bin.includes = .,\
build.properties,\
resource/
jars.compile.order = .
-source.. = src/
+source.. = src/,\
+ transforsrc/,\
+ actionsrc/
output.. = bin/
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/plugin.xml b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/plugin.xml
index 92e9177d1e1..4f2fb1ef411 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/plugin.xml
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/plugin.xml
@@ -14,6 +14,34 @@
label="Generate All ElementTypes model">
</action>
</objectContribution>
+ <objectContribution
+ adaptable="true"
+ id="org.eclipse.papyrus.domaincontextcodegen.ElementTypesContribution"
+ objectClass="org.eclipse.papyrus.domaincontextcodegen.ElementTypes">
+ <action
+ class="org.eclipse.papyrus.domaincontextcodegen.AddBindingsAction"
+ enablesFor="1"
+ id="org.eclipse.papyrus.domaincontextcodegen.AddBindingsAction"
+ label="Add bindings for ElementTypes">
+ </action>
+ <action
+ class="org.eclipse.papyrus.domaincontextcodegen.SetUMLIconInElementTypesAction"
+ enablesFor="1"
+ id="org.eclipse.papyrus.domaincontextcodegen.SetUMLIconInElementTypesAction"
+ label="Set UML icon for ElementTypes">
+ </action>
+ </objectContribution>
+ <objectContribution
+ adaptable="true"
+ id="org.eclipse.papyrus.domaincontextcodegen.GenHandlers"
+ objectClass="org.eclipse.papyrus.domaincontextcodegen.GenHandlers">
+ <action
+ class="org.eclipse.papyrus.domaincontextcodegen.AddVisibleCommandForChildrenAction"
+ enablesFor="1"
+ id="org.eclipse.papyrus.domaincontextcodegen.AddVisibleCommandForChildrenAction"
+ label="Add non-abstract ElementTypes in create menu">
+ </action>
+ </objectContribution>
</extension>
</plugin>
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/resource/DomainContext.ecore b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/resource/DomainContext.ecore
index b90ebe76904..dae4c73670a 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/resource/DomainContext.ecore
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/resource/DomainContext.ecore
@@ -16,50 +16,69 @@
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="elementTypeNamePrefix"
lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
- <eStructuralFeatures xsi:type="ecore:EAttribute" name="matcherPatch" lowerBound="1"
- eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="elementTypes" eType="#//ElementTypes"
- containment="true"/>
+ containment="true" eOpposite="#//ElementTypes/domain"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="defaultHelperPath" lowerBound="1"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
- <eStructuralFeatures xsi:type="ecore:EReference" name="advicebindings" upperBound="-1"
- eType="#//AdviceBinding" containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="advices" upperBound="-1"
+ eType="#//Advice" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="bindings" upperBound="-1"
- eType="#//Binding" containment="true"/>
+ eType="#//ElementTypeBindings" containment="true"/>
<eStructuralFeatures xsi:type="ecore:EReference" name="genHandlers" eType="#//GenHandlers"
containment="true"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="generatedSourceFolder"
lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="menu" upperBound="-1" eType="#//MenuDeclaration"
+ containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="command" upperBound="-1"
+ eType="#//CommandDeclaration" containment="true"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="ElementTypes">
<eStructuralFeatures xsi:type="ecore:EReference" name="types" upperBound="-1"
- eType="#//ElementType" containment="true"/>
+ eType="#//ElementType" containment="true" eOpposite="#//ElementType/owner"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="domain" eType="#//DomainContext"
+ eOpposite="#//DomainContext/elementTypes"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ElementType" abstract="true">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="helper" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="owner" eType="#//ElementTypes"
+ eOpposite="#//ElementTypes/types"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="icon" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
</eClassifiers>
- <eClassifiers xsi:type="ecore:EClass" name="ElementType">
+ <eClassifiers xsi:type="ecore:EClass" name="MetaClassType" eSuperTypes="#//ElementType">
<eStructuralFeatures xsi:type="ecore:EReference" name="metaClass" lowerBound="1"
eType="ecore:EClass http://www.eclipse.org/emf/2002/Ecore#//EClass"/>
- <eStructuralFeatures xsi:type="ecore:EAttribute" name="specificName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
- <eStructuralFeatures xsi:type="ecore:EAttribute" name="edithelper_EditHelperAdvicePath"
- eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
- <eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
- <eStructuralFeatures xsi:type="ecore:EReference" name="specializationof" eType="#//ElementType"/>
- <eStructuralFeatures xsi:type="ecore:EAttribute" name="specializationIDof" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
- <eClassifiers xsi:type="ecore:EClass" name="AdviceBinding">
- <eStructuralFeatures xsi:type="ecore:EAttribute" name="advicePath" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eClassifiers xsi:type="ecore:EClass" name="SpecializationType" eSuperTypes="#//ElementType">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="ref" eType="#//ElementType"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="matcher" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="genMatcher" eType="#//GenMatcher"
+ containment="true"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="genHelper" eType="#//GenHelper"
+ containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Advice">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="adviceID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="ref" eType="#//ElementType"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="advicePath" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="inheritance" eType="#//InheritanceKind"/>
- <eStructuralFeatures xsi:type="ecore:EReference" name="elementTypeRef" eType="#//ElementType"/>
- <eStructuralFeatures xsi:type="ecore:EAttribute" name="elementTypeIDref" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
</eClassifiers>
- <eClassifiers xsi:type="ecore:EEnum" name="InheritanceKind">
- <eLiterals name="none"/>
- <eLiterals name="all" value="1"/>
+ <eClassifiers xsi:type="ecore:EClass" name="ElementTypeBindings">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="clientContextID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="bindings" upperBound="-1"
+ eType="#//Binding" containment="true" eOpposite="#//Binding/owner"/>
</eClassifiers>
- <eClassifiers xsi:type="ecore:EClass" name="Binding">
- <eStructuralFeatures xsi:type="ecore:EReference" name="advice" eType="#//AdviceBinding"/>
- <eStructuralFeatures xsi:type="ecore:EAttribute" name="elementTypePattern" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
- <eStructuralFeatures xsi:type="ecore:EAttribute" name="adviceID" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eClassifiers xsi:type="ecore:EClass" name="Binding" abstract="true">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="owner" lowerBound="1" eType="#//ElementTypeBindings"
+ eOpposite="#//ElementTypeBindings/bindings"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="pattern" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="ElementTypeBinding" eSuperTypes="#//Binding">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="ref" eType="#//ElementType"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="AdviceBinding" eSuperTypes="#//Binding">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="ref" eType="#//Advice"/>
</eClassifiers>
<eClassifiers xsi:type="ecore:EClass" name="GenHandlers">
<eStructuralFeatures xsi:type="ecore:EAttribute" name="handlerPackage" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
@@ -69,5 +88,46 @@
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
<eStructuralFeatures xsi:type="ecore:EAttribute" name="elementTypeEnumeratorPackage"
eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="visibleCreateChildHandlers"
+ upperBound="-1" eType="#//ElementType"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="parentDomainCreateChild"
+ upperBound="-1" eType="#//ElementType"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="createChildMenuLocationURI"
+ eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EEnum" name="InheritanceKind">
+ <eLiterals name="none"/>
+ <eLiterals name="all" value="1"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="GenMatcher" abstract="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="GenHelper" abstract="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="StereotypedElementMatcher" eSuperTypes="#//GenMatcher">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="stereotypeName" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="stereotypePackage" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="baseElementName" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="baseElementPackage" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="StereotypedElementHelper" eSuperTypes="#//GenHelper">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="stereotypeName" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="stereotypePackage" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="baseElementName" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="baseElementPackage" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="MenuDeclaration">
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="locationURI" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
+ <eStructuralFeatures xsi:type="ecore:EReference" name="commands" upperBound="-1"
+ eType="#//Command"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="CommandDeclaration">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="commands" upperBound="-1"
+ eType="#//Command" containment="true"/>
+ </eClassifiers>
+ <eClassifiers xsi:type="ecore:EClass" name="Command">
+ <eStructuralFeatures xsi:type="ecore:EReference" name="elementType" eType="#//ElementType"/>
+ <eStructuralFeatures xsi:type="ecore:EAttribute" name="icon" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EString"/>
</eClassifiers>
</ecore:EPackage>
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/resource/DomainContext.genmodel b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/resource/DomainContext.genmodel
index f63597f9e86..e068f142d48 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/resource/DomainContext.genmodel
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/resource/DomainContext.genmodel
@@ -8,21 +8,89 @@
<foreignModel>DomainContext.ecore</foreignModel>
<genPackages prefix="Domaincontextcodegen" basePackage="org.eclipse.papyrus" disposableProviderFactory="true"
ecorePackage="DomainContext.ecore#/">
+ <genEnums typeSafeEnumCompatible="false" ecoreEnum="DomainContext.ecore#//InheritanceKind">
+ <genEnumLiterals ecoreEnumLiteral="DomainContext.ecore#//InheritanceKind/none"/>
+ <genEnumLiterals ecoreEnumLiteral="DomainContext.ecore#//InheritanceKind/all"/>
+ </genEnums>
<genClasses ecoreClass="DomainContext.ecore#//DomainContext">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//DomainContext/typeProjectName"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//DomainContext/handlerProjectName"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//DomainContext/IClientContextID"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference DomainContext.ecore#//DomainContext/metamodel"/>
<genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference DomainContext.ecore#//DomainContext/specializationOf"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//DomainContext/elementTypeIDPrefix"/>
<genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//DomainContext/elementTypeNamePrefix"/>
- <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//DomainContext/matcherPatch"/>
<genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference DomainContext.ecore#//DomainContext/elementTypes"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//DomainContext/defaultHelperPath"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference DomainContext.ecore#//DomainContext/advices"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference DomainContext.ecore#//DomainContext/bindings"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference DomainContext.ecore#//DomainContext/genHandlers"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//DomainContext/generatedSourceFolder"/>
+ </genClasses>
+ <genClasses ecoreClass="DomainContext.ecore#//ElementTypes">
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference DomainContext.ecore#//ElementTypes/types"/>
+ <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference DomainContext.ecore#//ElementTypes/domain"/>
</genClasses>
<genClasses ecoreClass="DomainContext.ecore#//ElementType">
- <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference DomainContext.ecore#//ElementType/eclass"/>
- <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//ElementType/specificName"/>
- <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//ElementType/edithelper_EditHelperAdvicePath"/>
- <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//ElementType/kind"/>
- <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference DomainContext.ecore#//ElementType/specializationof"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//ElementType/name"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//ElementType/helper"/>
+ <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference DomainContext.ecore#//ElementType/owner"/>
+ </genClasses>
+ <genClasses ecoreClass="DomainContext.ecore#//MetaClassType">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference DomainContext.ecore#//MetaClassType/metaClass"/>
+ </genClasses>
+ <genClasses ecoreClass="DomainContext.ecore#//SpecializationType">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference DomainContext.ecore#//SpecializationType/ref"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//SpecializationType/matcher"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference DomainContext.ecore#//SpecializationType/genMatcher"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference DomainContext.ecore#//SpecializationType/genHelper"/>
+ </genClasses>
+ <genClasses ecoreClass="DomainContext.ecore#//Advice">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//Advice/adviceID"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference DomainContext.ecore#//Advice/ref"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//Advice/advicePath"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//Advice/inheritance"/>
+ </genClasses>
+ <genClasses ecoreClass="DomainContext.ecore#//ElementTypeBindings">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//ElementTypeBindings/clientContextID"/>
+ <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference DomainContext.ecore#//ElementTypeBindings/bindings"/>
+ </genClasses>
+ <genClasses image="false" ecoreClass="DomainContext.ecore#//Binding">
+ <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference DomainContext.ecore#//Binding/owner"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//Binding/pattern"/>
+ </genClasses>
+ <genClasses ecoreClass="DomainContext.ecore#//ElementTypeBinding">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference DomainContext.ecore#//ElementTypeBinding/ref"/>
+ </genClasses>
+ <genClasses ecoreClass="DomainContext.ecore#//AdviceBinding">
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference DomainContext.ecore#//AdviceBinding/ref"/>
+ </genClasses>
+ <genClasses ecoreClass="DomainContext.ecore#//GenHandlers">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//GenHandlers/handlerPackage"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//GenHandlers/superClass"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//GenHandlers/superClassPackage"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//GenHandlers/elementTypeEnumerator"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//GenHandlers/elementTypeEnumeratorPackage"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference DomainContext.ecore#//GenHandlers/visibleCreateChildHandlers"/>
+ <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference DomainContext.ecore#//GenHandlers/parentDomainCreateChild"/>
+ </genClasses>
+ <genClasses image="false" ecoreClass="DomainContext.ecore#//GenMatcher">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//GenMatcher/name"/>
+ </genClasses>
+ <genClasses image="false" ecoreClass="DomainContext.ecore#//GenHelper">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//GenHelper/name"/>
+ </genClasses>
+ <genClasses ecoreClass="DomainContext.ecore#//StereotypedElementMatcher">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//StereotypedElementMatcher/stereotypeName"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//StereotypedElementMatcher/stereotypePackage"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//StereotypedElementMatcher/baseElementName"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//StereotypedElementMatcher/baseElementPackage"/>
+ </genClasses>
+ <genClasses ecoreClass="DomainContext.ecore#//StereotypedElementHelper">
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//StereotypedElementHelper/stereotypeName"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//StereotypedElementHelper/stereotypePackage"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//StereotypedElementHelper/baseElementName"/>
+ <genFeatures createChild="false" ecoreFeature="ecore:EAttribute DomainContext.ecore#//StereotypedElementHelper/baseElementPackage"/>
</genClasses>
</genPackages>
</genmodel:GenModel>
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/Advice.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/Advice.java
new file mode 100644
index 00000000000..0618599ee1c
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/Advice.java
@@ -0,0 +1,147 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Advice</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.Advice#getAdviceID <em>Advice ID</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.Advice#getRef <em>Ref</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.Advice#getAdvicePath <em>Advice Path</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.Advice#getInheritance <em>Inheritance</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getAdvice()
+ * @model
+ * @generated
+ */
+public interface Advice extends EObject {
+
+ /**
+ * Returns the value of the '<em><b>Advice ID</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Advice 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>Advice ID</em>' attribute.
+ * @see #setAdviceID(String)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getAdvice_AdviceID()
+ * @model
+ * @generated
+ */
+ String getAdviceID();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.Advice#getAdviceID <em>Advice ID</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Advice ID</em>' attribute.
+ * @see #getAdviceID()
+ * @generated
+ */
+ void setAdviceID(String value);
+
+ /**
+ * Returns the value of the '<em><b>Ref</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Ref</em>' reference isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Ref</em>' reference.
+ * @see #setRef(ElementType)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getAdvice_Ref()
+ * @model
+ * @generated
+ */
+ ElementType getRef();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.Advice#getRef <em>Ref</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Ref</em>' reference.
+ * @see #getRef()
+ * @generated
+ */
+ void setRef(ElementType value);
+
+ /**
+ * Returns the value of the '<em><b>Advice Path</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Advice Path</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Advice Path</em>' attribute.
+ * @see #setAdvicePath(String)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getAdvice_AdvicePath()
+ * @model
+ * @generated
+ */
+ String getAdvicePath();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.Advice#getAdvicePath <em>Advice Path</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Advice Path</em>' attribute.
+ * @see #getAdvicePath()
+ * @generated
+ */
+ void setAdvicePath(String value);
+
+ /**
+ * Returns the value of the '<em><b>Inheritance</b></em>' attribute.
+ * The literals are from the enumeration {@link org.eclipse.papyrus.domaincontextcodegen.InheritanceKind}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Inheritance</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Inheritance</em>' attribute.
+ * @see org.eclipse.papyrus.domaincontextcodegen.InheritanceKind
+ * @see #setInheritance(InheritanceKind)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getAdvice_Inheritance()
+ * @model
+ * @generated
+ */
+ InheritanceKind getInheritance();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.Advice#getInheritance <em>Inheritance</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Inheritance</em>' attribute.
+ * @see org.eclipse.papyrus.domaincontextcodegen.InheritanceKind
+ * @see #getInheritance()
+ * @generated
+ */
+ void setInheritance(InheritanceKind value);
+
+} // Advice
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/AdviceBinding.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/AdviceBinding.java
index ffc522648a9..40b4054eb0f 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/AdviceBinding.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/AdviceBinding.java
@@ -6,8 +6,6 @@
*/
package org.eclipse.papyrus.domaincontextcodegen;
-import org.eclipse.emf.ecore.EObject;
-
/**
* <!-- begin-user-doc -->
* A representation of the model object '<em><b>Advice Binding</b></em>'.
@@ -16,11 +14,7 @@ import org.eclipse.emf.ecore.EObject;
* <p>
* The following features are supported:
* <ul>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.AdviceBinding#getAdvicePath <em>Advice Path</em>}</li>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.AdviceBinding#getAdviceID <em>Advice ID</em>}</li>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.AdviceBinding#getInheritance <em>Inheritance</em>}</li>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.AdviceBinding#getElementTypeRef <em>Element Type Ref</em>}</li>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.AdviceBinding#getElementTypeIDref <em>Element Type IDref</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.AdviceBinding#getRef <em>Ref</em>}</li>
* </ul>
* </p>
*
@@ -28,150 +22,34 @@ import org.eclipse.emf.ecore.EObject;
* @model
* @generated
*/
-public interface AdviceBinding extends EObject {
-
- /**
- * Returns the value of the '<em><b>Advice Path</b></em>' attribute.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>Advice Path</em>' attribute isn't clear, there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- *
- * @return the value of the '<em>Advice Path</em>' attribute.
- * @see #setAdvicePath(String)
- * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getAdviceBinding_AdvicePath()
- * @model
- * @generated
- */
- String getAdvicePath();
-
- /**
- * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.AdviceBinding#getAdvicePath <em>Advice Path</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @param value
- * the new value of the '<em>Advice Path</em>' attribute.
- * @see #getAdvicePath()
- * @generated
- */
- void setAdvicePath(String value);
-
- /**
- * Returns the value of the '<em><b>Advice ID</b></em>' attribute.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>Advice 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>Advice ID</em>' attribute.
- * @see #setAdviceID(String)
- * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getAdviceBinding_AdviceID()
- * @model
- * @generated
- */
- String getAdviceID();
-
- /**
- * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.AdviceBinding#getAdviceID <em>Advice ID</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @param value
- * the new value of the '<em>Advice ID</em>' attribute.
- * @see #getAdviceID()
- * @generated
- */
- void setAdviceID(String value);
-
- /**
- * Returns the value of the '<em><b>Inheritance</b></em>' attribute.
- * The literals are from the enumeration {@link org.eclipse.papyrus.domaincontextcodegen.InheritanceKind}.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>Inheritance</em>' attribute isn't clear, there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- *
- * @return the value of the '<em>Inheritance</em>' attribute.
- * @see org.eclipse.papyrus.domaincontextcodegen.InheritanceKind
- * @see #setInheritance(InheritanceKind)
- * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getAdviceBinding_Inheritance()
- * @model
- * @generated
- */
- InheritanceKind getInheritance();
-
- /**
- * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.AdviceBinding#getInheritance <em>Inheritance</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @param value
- * the new value of the '<em>Inheritance</em>' attribute.
- * @see org.eclipse.papyrus.domaincontextcodegen.InheritanceKind
- * @see #getInheritance()
- * @generated
- */
- void setInheritance(InheritanceKind value);
-
- /**
- * Returns the value of the '<em><b>Element Type Ref</b></em>' reference.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>Element Type Ref</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 Type Ref</em>' reference.
- * @see #setElementTypeRef(ElementType)
- * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getAdviceBinding_ElementTypeRef()
- * @model
- * @generated
- */
- ElementType getElementTypeRef();
-
- /**
- * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.AdviceBinding#getElementTypeRef <em>Element Type Ref</em>}' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @param value
- * the new value of the '<em>Element Type Ref</em>' reference.
- * @see #getElementTypeRef()
- * @generated
- */
- void setElementTypeRef(ElementType value);
+public interface AdviceBinding extends Binding {
/**
- * Returns the value of the '<em><b>Element Type IDref</b></em>' attribute.
+ * Returns the value of the '<em><b>Ref</b></em>' reference.
* <!-- begin-user-doc -->
* <p>
- * If the meaning of the '<em>Element Type IDref</em>' attribute isn't clear, there really should be more of a description here...
+ * If the meaning of the '<em>Ref</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 Type IDref</em>' attribute.
- * @see #setElementTypeIDref(String)
- * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getAdviceBinding_ElementTypeIDref()
+ * @return the value of the '<em>Ref</em>' reference.
+ * @see #setRef(Advice)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getAdviceBinding_Ref()
* @model
* @generated
*/
- String getElementTypeIDref();
+ Advice getRef();
/**
- * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.AdviceBinding#getElementTypeIDref <em>Element Type IDref</em>}'
- * attribute.
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.AdviceBinding#getRef <em>Ref</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @param value
- * the new value of the '<em>Element Type IDref</em>' attribute.
- * @see #getElementTypeIDref()
+ * the new value of the '<em>Ref</em>' reference.
+ * @see #getRef()
* @generated
*/
- void setElementTypeIDref(String value);
+ void setRef(Advice value);
} // AdviceBinding
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/Binding.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/Binding.java
index 3ca8762a7b9..30bc2bab622 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/Binding.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/Binding.java
@@ -16,100 +16,73 @@ import org.eclipse.emf.ecore.EObject;
* <p>
* The following features are supported:
* <ul>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.Binding#getAdvice <em>Advice</em>}</li>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.Binding#getElementTypePattern <em>Element Type Pattern</em>}</li>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.Binding#getAdviceID <em>Advice ID</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.Binding#getOwner <em>Owner</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.Binding#getPattern <em>Pattern</em>}</li>
* </ul>
* </p>
*
* @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getBinding()
- * @model
+ * @model abstract="true"
* @generated
*/
public interface Binding extends EObject {
/**
- * Returns the value of the '<em><b>Advice</b></em>' reference.
+ * Returns the value of the '<em><b>Owner</b></em>' container reference.
+ * It is bidirectional and its opposite is '{@link org.eclipse.papyrus.domaincontextcodegen.ElementTypeBindings#getBindings <em>Bindings</em>}'.
* <!-- begin-user-doc -->
* <p>
- * If the meaning of the '<em>Advice</em>' reference isn't clear, there really should be more of a description here...
+ * If the meaning of the '<em>Owner</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>Advice</em>' reference.
- * @see #setAdvice(AdviceBinding)
- * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getBinding_Advice()
- * @model
- * @generated
- */
- AdviceBinding getAdvice();
-
- /**
- * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.Binding#getAdvice <em>Advice</em>}' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @param value
- * the new value of the '<em>Advice</em>' reference.
- * @see #getAdvice()
- * @generated
- */
- void setAdvice(AdviceBinding value);
-
- /**
- * Returns the value of the '<em><b>Element Type Pattern</b></em>' attribute.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>Element Type Pattern</em>' attribute isn't clear, there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- *
- * @return the value of the '<em>Element Type Pattern</em>' attribute.
- * @see #setElementTypePattern(String)
- * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getBinding_ElementTypePattern()
- * @model
+ * @return the value of the '<em>Owner</em>' container reference.
+ * @see #setOwner(ElementTypeBindings)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getBinding_Owner()
+ * @see org.eclipse.papyrus.domaincontextcodegen.ElementTypeBindings#getBindings
+ * @model opposite="bindings" required="true" transient="false"
* @generated
*/
- String getElementTypePattern();
+ ElementTypeBindings getOwner();
/**
- * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.Binding#getElementTypePattern <em>Element Type Pattern</em>}' attribute.
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.Binding#getOwner <em>Owner</em>}' container reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @param value
- * the new value of the '<em>Element Type Pattern</em>' attribute.
- * @see #getElementTypePattern()
+ * the new value of the '<em>Owner</em>' container reference.
+ * @see #getOwner()
* @generated
*/
- void setElementTypePattern(String value);
+ void setOwner(ElementTypeBindings value);
/**
- * Returns the value of the '<em><b>Advice ID</b></em>' attribute.
+ * Returns the value of the '<em><b>Pattern</b></em>' attribute.
* <!-- begin-user-doc -->
* <p>
- * If the meaning of the '<em>Advice ID</em>' attribute isn't clear, there really should be more of a description here...
+ * If the meaning of the '<em>Pattern</em>' attribute isn't clear, there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
*
- * @return the value of the '<em>Advice ID</em>' attribute.
- * @see #setAdviceID(String)
- * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getBinding_AdviceID()
+ * @return the value of the '<em>Pattern</em>' attribute.
+ * @see #setPattern(String)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getBinding_Pattern()
* @model
* @generated
*/
- String getAdviceID();
+ String getPattern();
/**
- * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.Binding#getAdviceID <em>Advice ID</em>}' attribute.
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.Binding#getPattern <em>Pattern</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @param value
- * the new value of the '<em>Advice ID</em>' attribute.
- * @see #getAdviceID()
+ * the new value of the '<em>Pattern</em>' attribute.
+ * @see #getPattern()
* @generated
*/
- void setAdviceID(String value);
+ void setPattern(String value);
} // Binding
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/Command.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/Command.java
new file mode 100644
index 00000000000..34d025f0cdb
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/Command.java
@@ -0,0 +1,86 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Command</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.Command#getElementType <em>Element Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.Command#getIcon <em>Icon</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getCommand()
+ * @model
+ * @generated
+ */
+public interface Command extends EObject {
+
+ /**
+ * Returns the value of the '<em><b>Element Type</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Element 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>Element Type</em>' reference.
+ * @see #setElementType(ElementType)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getCommand_ElementType()
+ * @model
+ * @generated
+ */
+ ElementType getElementType();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.Command#getElementType <em>Element Type</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Element Type</em>' reference.
+ * @see #getElementType()
+ * @generated
+ */
+ void setElementType(ElementType value);
+
+ /**
+ * Returns the value of the '<em><b>Icon</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Icon</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Icon</em>' attribute.
+ * @see #setIcon(String)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getCommand_Icon()
+ * @model
+ * @generated
+ */
+ String getIcon();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.Command#getIcon <em>Icon</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Icon</em>' attribute.
+ * @see #getIcon()
+ * @generated
+ */
+ void setIcon(String value);
+
+} // Command
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/CommandDeclaration.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/CommandDeclaration.java
new file mode 100644
index 00000000000..53c334e7580
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/CommandDeclaration.java
@@ -0,0 +1,46 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Command Declaration</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.CommandDeclaration#getCommands <em>Commands</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getCommandDeclaration()
+ * @model
+ * @generated
+ */
+public interface CommandDeclaration extends EObject {
+
+ /**
+ * Returns the value of the '<em><b>Commands</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.domaincontextcodegen.Command}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Commands</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>Commands</em>' containment reference list.
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getCommandDeclaration_Commands()
+ * @model containment="true"
+ * @generated
+ */
+ EList<Command> getCommands();
+
+} // CommandDeclaration
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/DomainContext.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/DomainContext.java
index ab300922b03..6dc8f1de955 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/DomainContext.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/DomainContext.java
@@ -25,13 +25,14 @@ import org.eclipse.emf.ecore.EPackage;
* <li>{@link org.eclipse.papyrus.domaincontextcodegen.DomainContext#getSpecializationOf <em>Specialization Of</em>}</li>
* <li>{@link org.eclipse.papyrus.domaincontextcodegen.DomainContext#getElementTypeIDPrefix <em>Element Type ID Prefix</em>}</li>
* <li>{@link org.eclipse.papyrus.domaincontextcodegen.DomainContext#getElementTypeNamePrefix <em>Element Type Name Prefix</em>}</li>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.DomainContext#getMatcherPatch <em>Matcher Patch</em>}</li>
* <li>{@link org.eclipse.papyrus.domaincontextcodegen.DomainContext#getElementTypes <em>Element Types</em>}</li>
* <li>{@link org.eclipse.papyrus.domaincontextcodegen.DomainContext#getDefaultHelperPath <em>Default Helper Path</em>}</li>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.DomainContext#getAdvicebindings <em>Advicebindings</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.DomainContext#getAdvices <em>Advices</em>}</li>
* <li>{@link org.eclipse.papyrus.domaincontextcodegen.DomainContext#getBindings <em>Bindings</em>}</li>
* <li>{@link org.eclipse.papyrus.domaincontextcodegen.DomainContext#getGenHandlers <em>Gen Handlers</em>}</li>
* <li>{@link org.eclipse.papyrus.domaincontextcodegen.DomainContext#getGeneratedSourceFolder <em>Generated Source Folder</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.DomainContext#getMenu <em>Menu</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.DomainContext#getCommand <em>Command</em>}</li>
* </ul>
* </p>
*
@@ -243,35 +244,8 @@ public interface DomainContext extends EObject {
void setElementTypeNamePrefix(String value);
/**
- * Returns the value of the '<em><b>Matcher Patch</b></em>' attribute.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>Matcher Patch</em>' attribute isn't clear, there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- *
- * @return the value of the '<em>Matcher Patch</em>' attribute.
- * @see #setMatcherPatch(String)
- * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getDomainContext_MatcherPatch()
- * @model required="true"
- * @generated
- */
- String getMatcherPatch();
-
- /**
- * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.DomainContext#getMatcherPatch <em>Matcher Patch</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @param value
- * the new value of the '<em>Matcher Patch</em>' attribute.
- * @see #getMatcherPatch()
- * @generated
- */
- void setMatcherPatch(String value);
-
- /**
* Returns the value of the '<em><b>Element Types</b></em>' containment reference.
+ * It is bidirectional and its opposite is '{@link org.eclipse.papyrus.domaincontextcodegen.ElementTypes#getDomain <em>Domain</em>}'.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Element Types</em>' containment reference list isn't clear, there really should be more of a description here...
@@ -281,7 +255,8 @@ public interface DomainContext extends EObject {
* @return the value of the '<em>Element Types</em>' containment reference.
* @see #setElementTypes(ElementTypes)
* @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getDomainContext_ElementTypes()
- * @model containment="true"
+ * @see org.eclipse.papyrus.domaincontextcodegen.ElementTypes#getDomain
+ * @model opposite="domain" containment="true"
* @generated
*/
ElementTypes getElementTypes();
@@ -329,24 +304,24 @@ public interface DomainContext extends EObject {
void setDefaultHelperPath(String value);
/**
- * Returns the value of the '<em><b>Advicebindings</b></em>' containment reference list.
- * The list contents are of type {@link org.eclipse.papyrus.domaincontextcodegen.AdviceBinding}.
+ * Returns the value of the '<em><b>Advices</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.domaincontextcodegen.Advice}.
* <!-- begin-user-doc -->
* <p>
- * If the meaning of the '<em>Advicebindings</em>' reference list isn't clear, there really should be more of a description here...
+ * If the meaning of the '<em>Advices</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>Advicebindings</em>' containment reference list.
- * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getDomainContext_Advicebindings()
+ * @return the value of the '<em>Advices</em>' containment reference list.
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getDomainContext_Advices()
* @model containment="true"
* @generated
*/
- EList<AdviceBinding> getAdvicebindings();
+ EList<Advice> getAdvices();
/**
* Returns the value of the '<em><b>Bindings</b></em>' containment reference list.
- * The list contents are of type {@link org.eclipse.papyrus.domaincontextcodegen.Binding}.
+ * The list contents are of type {@link org.eclipse.papyrus.domaincontextcodegen.ElementTypeBindings}.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Bindings</em>' reference list isn't clear, there really should be more of a description here...
@@ -358,7 +333,7 @@ public interface DomainContext extends EObject {
* @model containment="true"
* @generated
*/
- EList<Binding> getBindings();
+ EList<ElementTypeBindings> getBindings();
/**
* Returns the value of the '<em><b>Gen Handlers</b></em>' containment reference.
@@ -418,4 +393,36 @@ public interface DomainContext extends EObject {
*/
void setGeneratedSourceFolder(String value);
+ /**
+ * Returns the value of the '<em><b>Menu</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.domaincontextcodegen.MenuDeclaration}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Menu</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>Menu</em>' containment reference list.
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getDomainContext_Menu()
+ * @model containment="true"
+ * @generated
+ */
+ EList<MenuDeclaration> getMenu();
+
+ /**
+ * Returns the value of the '<em><b>Command</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.domaincontextcodegen.CommandDeclaration}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Command</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>Command</em>' containment reference list.
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getDomainContext_Command()
+ * @model containment="true"
+ * @generated
+ */
+ EList<CommandDeclaration> getCommand();
+
} // DomainContext
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/DomaincontextcodegenFactory.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/DomaincontextcodegenFactory.java
index 9f40e077237..fb4c2f4ced8 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/DomaincontextcodegenFactory.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/DomaincontextcodegenFactory.java
@@ -49,34 +49,64 @@ public interface DomaincontextcodegenFactory extends EFactory {
ElementTypes createElementTypes();
/**
- * Returns a new object of class '<em>Element Type</em>'.
+ * Returns a new object of class '<em>Meta Class Type</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @return a new object of class '<em>Element Type</em>'.
+ * @return a new object of class '<em>Meta Class Type</em>'.
* @generated
*/
- ElementType createElementType();
+ MetaClassType createMetaClassType();
/**
- * Returns a new object of class '<em>Advice Binding</em>'.
+ * Returns a new object of class '<em>Specialization Type</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @return a new object of class '<em>Advice Binding</em>'.
+ * @return a new object of class '<em>Specialization Type</em>'.
* @generated
*/
- AdviceBinding createAdviceBinding();
+ SpecializationType createSpecializationType();
+
+ /**
+ * Returns a new object of class '<em>Advice</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>Advice</em>'.
+ * @generated
+ */
+ Advice createAdvice();
/**
- * Returns a new object of class '<em>Binding</em>'.
+ * Returns a new object of class '<em>Element Type Bindings</em>'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @return a new object of class '<em>Binding</em>'.
+ * @return a new object of class '<em>Element Type Bindings</em>'.
* @generated
*/
- Binding createBinding();
+ ElementTypeBindings createElementTypeBindings();
+
+ /**
+ * Returns a new object of class '<em>Element Type Binding</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>Element Type Binding</em>'.
+ * @generated
+ */
+ ElementTypeBinding createElementTypeBinding();
+
+ /**
+ * Returns a new object of class '<em>Advice Binding</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>Advice Binding</em>'.
+ * @generated
+ */
+ AdviceBinding createAdviceBinding();
/**
* Returns a new object of class '<em>Gen Handlers</em>'.
@@ -89,6 +119,56 @@ public interface DomaincontextcodegenFactory extends EFactory {
GenHandlers createGenHandlers();
/**
+ * Returns a new object of class '<em>Stereotyped Element Matcher</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>Stereotyped Element Matcher</em>'.
+ * @generated
+ */
+ StereotypedElementMatcher createStereotypedElementMatcher();
+
+ /**
+ * Returns a new object of class '<em>Stereotyped Element Helper</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>Stereotyped Element Helper</em>'.
+ * @generated
+ */
+ StereotypedElementHelper createStereotypedElementHelper();
+
+ /**
+ * Returns a new object of class '<em>Menu Declaration</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>Menu Declaration</em>'.
+ * @generated
+ */
+ MenuDeclaration createMenuDeclaration();
+
+ /**
+ * Returns a new object of class '<em>Command Declaration</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>Command Declaration</em>'.
+ * @generated
+ */
+ CommandDeclaration createCommandDeclaration();
+
+ /**
+ * Returns a new object of class '<em>Command</em>'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return a new object of class '<em>Command</em>'.
+ * @generated
+ */
+ Command createCommand();
+
+ /**
* Returns the package supported by this factory.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/DomaincontextcodegenPackage.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/DomaincontextcodegenPackage.java
index a31a0c43f46..937b11a9770 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/DomaincontextcodegenPackage.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/DomaincontextcodegenPackage.java
@@ -148,74 +148,84 @@ public interface DomaincontextcodegenPackage extends EPackage {
int DOMAIN_CONTEXT__ELEMENT_TYPE_NAME_PREFIX = 6;
/**
- * The feature id for the '<em><b>Matcher Patch</b></em>' attribute.
+ * The feature id for the '<em><b>Element Types</b></em>' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
* @ordered
*/
- int DOMAIN_CONTEXT__MATCHER_PATCH = 7;
+ int DOMAIN_CONTEXT__ELEMENT_TYPES = 7;
/**
- * The feature id for the '<em><b>Element Types</b></em>' containment reference.
+ * The feature id for the '<em><b>Default Helper Path</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
* @ordered
*/
- int DOMAIN_CONTEXT__ELEMENT_TYPES = 8;
+ int DOMAIN_CONTEXT__DEFAULT_HELPER_PATH = 8;
/**
- * The feature id for the '<em><b>Default Helper Path</b></em>' attribute.
+ * The feature id for the '<em><b>Advices</b></em>' containment reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
* @ordered
*/
- int DOMAIN_CONTEXT__DEFAULT_HELPER_PATH = 9;
+ int DOMAIN_CONTEXT__ADVICES = 9;
/**
- * The feature id for the '<em><b>Advicebindings</b></em>' containment reference list.
+ * The feature id for the '<em><b>Bindings</b></em>' containment reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
* @ordered
*/
- int DOMAIN_CONTEXT__ADVICEBINDINGS = 10;
+ int DOMAIN_CONTEXT__BINDINGS = 10;
/**
- * The feature id for the '<em><b>Bindings</b></em>' containment reference list.
+ * The feature id for the '<em><b>Gen Handlers</b></em>' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
* @ordered
*/
- int DOMAIN_CONTEXT__BINDINGS = 11;
+ int DOMAIN_CONTEXT__GEN_HANDLERS = 11;
/**
- * The feature id for the '<em><b>Gen Handlers</b></em>' containment reference.
+ * The feature id for the '<em><b>Generated Source Folder</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
* @ordered
*/
- int DOMAIN_CONTEXT__GEN_HANDLERS = 12;
+ int DOMAIN_CONTEXT__GENERATED_SOURCE_FOLDER = 12;
/**
- * The feature id for the '<em><b>Generated Source Folder</b></em>' attribute.
+ * The feature id for the '<em><b>Menu</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int DOMAIN_CONTEXT__MENU = 13;
+
+ /**
+ * The feature id for the '<em><b>Command</b></em>' containment reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
* @ordered
*/
- int DOMAIN_CONTEXT__GENERATED_SOURCE_FOLDER = 13;
+ int DOMAIN_CONTEXT__COMMAND = 14;
/**
* The number of structural features of the '<em>Domain Context</em>' class.
@@ -225,7 +235,7 @@ public interface DomaincontextcodegenPackage extends EPackage {
* @generated
* @ordered
*/
- int DOMAIN_CONTEXT_FEATURE_COUNT = 14;
+ int DOMAIN_CONTEXT_FEATURE_COUNT = 15;
/**
* The meta object id for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.ElementTypesImpl <em>Element Types</em>}' class.
@@ -249,6 +259,16 @@ public interface DomaincontextcodegenPackage extends EPackage {
int ELEMENT_TYPES__TYPES = 0;
/**
+ * The feature id for the '<em><b>Domain</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int ELEMENT_TYPES__DOMAIN = 1;
+
+ /**
* The number of structural features of the '<em>Element Types</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -256,7 +276,7 @@ public interface DomaincontextcodegenPackage extends EPackage {
* @generated
* @ordered
*/
- int ELEMENT_TYPES_FEATURE_COUNT = 1;
+ int ELEMENT_TYPES_FEATURE_COUNT = 2;
/**
* The meta object id for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.ElementTypeImpl <em>Element Type</em>}' class.
@@ -270,6 +290,107 @@ public interface DomaincontextcodegenPackage extends EPackage {
int ELEMENT_TYPE = 2;
/**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int ELEMENT_TYPE__NAME = 0;
+
+ /**
+ * The feature id for the '<em><b>Helper</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int ELEMENT_TYPE__HELPER = 1;
+
+ /**
+ * The feature id for the '<em><b>Owner</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int ELEMENT_TYPE__OWNER = 2;
+
+ /**
+ * The feature id for the '<em><b>Icon</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int ELEMENT_TYPE__ICON = 3;
+
+ /**
+ * The number of structural features of the '<em>Element Type</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int ELEMENT_TYPE_FEATURE_COUNT = 4;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.MetaClassTypeImpl <em>Meta Class Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.MetaClassTypeImpl
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getMetaClassType()
+ * @generated
+ */
+ int META_CLASS_TYPE = 3;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int META_CLASS_TYPE__NAME = ELEMENT_TYPE__NAME;
+
+ /**
+ * The feature id for the '<em><b>Helper</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int META_CLASS_TYPE__HELPER = ELEMENT_TYPE__HELPER;
+
+ /**
+ * The feature id for the '<em><b>Owner</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int META_CLASS_TYPE__OWNER = ELEMENT_TYPE__OWNER;
+
+ /**
+ * The feature id for the '<em><b>Icon</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int META_CLASS_TYPE__ICON = ELEMENT_TYPE__ICON;
+
+ /**
* The feature id for the '<em><b>Meta Class</b></em>' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -277,89 +398,129 @@ public interface DomaincontextcodegenPackage extends EPackage {
* @generated
* @ordered
*/
- int ELEMENT_TYPE__META_CLASS = 0;
+ int META_CLASS_TYPE__META_CLASS = ELEMENT_TYPE_FEATURE_COUNT + 0;
/**
- * The feature id for the '<em><b>Specific Name</b></em>' attribute.
+ * The number of structural features of the '<em>Meta Class Type</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
* @ordered
*/
- int ELEMENT_TYPE__SPECIFIC_NAME = 1;
+ int META_CLASS_TYPE_FEATURE_COUNT = ELEMENT_TYPE_FEATURE_COUNT + 1;
/**
- * The feature id for the '<em><b>Edithelper Edit Helper Advice Path</b></em>' attribute.
+ * The meta object id for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.SpecializationTypeImpl <em>Specialization Type</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.SpecializationTypeImpl
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getSpecializationType()
+ * @generated
+ */
+ int SPECIALIZATION_TYPE = 4;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
* @ordered
*/
- int ELEMENT_TYPE__EDITHELPER_EDIT_HELPER_ADVICE_PATH = 2;
+ int SPECIALIZATION_TYPE__NAME = ELEMENT_TYPE__NAME;
/**
- * The feature id for the '<em><b>Kind</b></em>' attribute.
+ * The feature id for the '<em><b>Helper</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
* @ordered
*/
- int ELEMENT_TYPE__KIND = 3;
+ int SPECIALIZATION_TYPE__HELPER = ELEMENT_TYPE__HELPER;
/**
- * The feature id for the '<em><b>Specializationof</b></em>' reference.
+ * The feature id for the '<em><b>Owner</b></em>' container reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
* @ordered
*/
- int ELEMENT_TYPE__SPECIALIZATIONOF = 4;
+ int SPECIALIZATION_TYPE__OWNER = ELEMENT_TYPE__OWNER;
/**
- * The feature id for the '<em><b>Specialization IDof</b></em>' attribute.
+ * The feature id for the '<em><b>Icon</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
* @ordered
*/
- int ELEMENT_TYPE__SPECIALIZATION_IDOF = 5;
+ int SPECIALIZATION_TYPE__ICON = ELEMENT_TYPE__ICON;
/**
- * The number of structural features of the '<em>Element Type</em>' class.
+ * The feature id for the '<em><b>Ref</b></em>' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
* @ordered
*/
- int ELEMENT_TYPE_FEATURE_COUNT = 6;
+ int SPECIALIZATION_TYPE__REF = ELEMENT_TYPE_FEATURE_COUNT + 0;
+ /**
+ * The feature id for the '<em><b>Matcher</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int SPECIALIZATION_TYPE__MATCHER = ELEMENT_TYPE_FEATURE_COUNT + 1;
/**
- * The meta object id for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.AdviceBindingImpl <em>Advice Binding</em>}' class.
+ * The feature id for the '<em><b>Gen Matcher</b></em>' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @see org.eclipse.papyrus.domaincontextcodegen.impl.AdviceBindingImpl
- * @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getAdviceBinding()
* @generated
+ * @ordered
*/
- int ADVICE_BINDING = 3;
+ int SPECIALIZATION_TYPE__GEN_MATCHER = ELEMENT_TYPE_FEATURE_COUNT + 2;
/**
- * The feature id for the '<em><b>Advice Path</b></em>' attribute.
+ * The feature id for the '<em><b>Gen Helper</b></em>' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
* @ordered
*/
- int ADVICE_BINDING__ADVICE_PATH = 0;
+ int SPECIALIZATION_TYPE__GEN_HELPER = ELEMENT_TYPE_FEATURE_COUNT + 3;
+
+ /**
+ * The number of structural features of the '<em>Specialization Type</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int SPECIALIZATION_TYPE_FEATURE_COUNT = ELEMENT_TYPE_FEATURE_COUNT + 4;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.AdviceImpl <em>Advice</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.AdviceImpl
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getAdvice()
+ * @generated
+ */
+ int ADVICE = 5;
/**
* The feature id for the '<em><b>Advice ID</b></em>' attribute.
@@ -369,7 +530,27 @@ public interface DomaincontextcodegenPackage extends EPackage {
* @generated
* @ordered
*/
- int ADVICE_BINDING__ADVICE_ID = 1;
+ int ADVICE__ADVICE_ID = 0;
+
+ /**
+ * The feature id for the '<em><b>Ref</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int ADVICE__REF = 1;
+
+ /**
+ * The feature id for the '<em><b>Advice Path</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int ADVICE__ADVICE_PATH = 2;
/**
* The feature id for the '<em><b>Inheritance</b></em>' attribute.
@@ -379,37 +560,70 @@ public interface DomaincontextcodegenPackage extends EPackage {
* @generated
* @ordered
*/
- int ADVICE_BINDING__INHERITANCE = 2;
+ int ADVICE__INHERITANCE = 3;
/**
- * The feature id for the '<em><b>Element Type Ref</b></em>' reference.
+ * The number of structural features of the '<em>Advice</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
* @ordered
*/
- int ADVICE_BINDING__ELEMENT_TYPE_REF = 3;
+ int ADVICE_FEATURE_COUNT = 4;
/**
- * The feature id for the '<em><b>Element Type IDref</b></em>' attribute.
+ * The meta object id for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.ElementTypeBindingsImpl <em>Element Type Bindings</em>}'
+ * class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.ElementTypeBindingsImpl
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getElementTypeBindings()
+ * @generated
+ */
+ int ELEMENT_TYPE_BINDINGS = 6;
+
+ /**
+ * The feature id for the '<em><b>Client Context ID</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
* @ordered
*/
- int ADVICE_BINDING__ELEMENT_TYPE_IDREF = 4;
+ int ELEMENT_TYPE_BINDINGS__CLIENT_CONTEXT_ID = 0;
/**
- * The number of structural features of the '<em>Advice Binding</em>' class.
+ * The feature id for the '<em><b>Bindings</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int ELEMENT_TYPE_BINDINGS__BINDINGS = 1;
+
+ /**
+ * The number of structural features of the '<em>Element Type Bindings</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
* @ordered
*/
- int ADVICE_BINDING_FEATURE_COUNT = 5;
+ int ELEMENT_TYPE_BINDINGS_FEATURE_COUNT = 2;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.AdviceBindingImpl <em>Advice Binding</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.AdviceBindingImpl
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getAdviceBinding()
+ * @generated
+ */
+ int ADVICE_BINDING = 9;
/**
* The meta object id for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.BindingImpl <em>Binding</em>}' class.
@@ -420,47 +634,128 @@ public interface DomaincontextcodegenPackage extends EPackage {
* @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getBinding()
* @generated
*/
- int BINDING = 4;
+ int BINDING = 7;
/**
- * The feature id for the '<em><b>Advice</b></em>' reference.
+ * The feature id for the '<em><b>Owner</b></em>' container reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
* @ordered
*/
- int BINDING__ADVICE = 0;
+ int BINDING__OWNER = 0;
/**
- * The feature id for the '<em><b>Element Type Pattern</b></em>' attribute.
+ * The feature id for the '<em><b>Pattern</b></em>' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
* @ordered
*/
- int BINDING__ELEMENT_TYPE_PATTERN = 1;
+ int BINDING__PATTERN = 1;
/**
- * The feature id for the '<em><b>Advice ID</b></em>' attribute.
+ * The number of structural features of the '<em>Binding</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
* @ordered
*/
- int BINDING__ADVICE_ID = 2;
+ int BINDING_FEATURE_COUNT = 2;
/**
- * The number of structural features of the '<em>Binding</em>' class.
+ * The meta object id for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.ElementTypeBindingImpl <em>Element Type Binding</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.ElementTypeBindingImpl
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getElementTypeBinding()
+ * @generated
+ */
+ int ELEMENT_TYPE_BINDING = 8;
+
+ /**
+ * The feature id for the '<em><b>Owner</b></em>' container reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
* @ordered
*/
- int BINDING_FEATURE_COUNT = 3;
+ int ELEMENT_TYPE_BINDING__OWNER = BINDING__OWNER;
+
+ /**
+ * The feature id for the '<em><b>Pattern</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int ELEMENT_TYPE_BINDING__PATTERN = BINDING__PATTERN;
+
+ /**
+ * The feature id for the '<em><b>Ref</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int ELEMENT_TYPE_BINDING__REF = BINDING_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Element Type Binding</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int ELEMENT_TYPE_BINDING_FEATURE_COUNT = BINDING_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Owner</b></em>' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int ADVICE_BINDING__OWNER = BINDING__OWNER;
+
+ /**
+ * The feature id for the '<em><b>Pattern</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int ADVICE_BINDING__PATTERN = BINDING__PATTERN;
+
+ /**
+ * The feature id for the '<em><b>Ref</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int ADVICE_BINDING__REF = BINDING_FEATURE_COUNT + 0;
+
+ /**
+ * The number of structural features of the '<em>Advice Binding</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int ADVICE_BINDING_FEATURE_COUNT = BINDING_FEATURE_COUNT + 1;
/**
* The meta object id for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.GenHandlersImpl <em>Gen Handlers</em>}' class.
@@ -471,7 +766,7 @@ public interface DomaincontextcodegenPackage extends EPackage {
* @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getGenHandlers()
* @generated
*/
- int GEN_HANDLERS = 5;
+ int GEN_HANDLERS = 10;
/**
* The feature id for the '<em><b>Handler Package</b></em>' attribute.
@@ -524,6 +819,36 @@ public interface DomaincontextcodegenPackage extends EPackage {
int GEN_HANDLERS__ELEMENT_TYPE_ENUMERATOR_PACKAGE = 4;
/**
+ * The feature id for the '<em><b>Visible Create Child Handlers</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int GEN_HANDLERS__VISIBLE_CREATE_CHILD_HANDLERS = 5;
+
+ /**
+ * The feature id for the '<em><b>Parent Domain Create Child</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int GEN_HANDLERS__PARENT_DOMAIN_CREATE_CHILD = 6;
+
+ /**
+ * The feature id for the '<em><b>Create Child Menu Location URI</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int GEN_HANDLERS__CREATE_CHILD_MENU_LOCATION_URI = 7;
+
+ /**
* The number of structural features of the '<em>Gen Handlers</em>' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -531,7 +856,326 @@ public interface DomaincontextcodegenPackage extends EPackage {
* @generated
* @ordered
*/
- int GEN_HANDLERS_FEATURE_COUNT = 5;
+ int GEN_HANDLERS_FEATURE_COUNT = 8;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.GenMatcherImpl <em>Gen Matcher</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.GenMatcherImpl
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getGenMatcher()
+ * @generated
+ */
+ int GEN_MATCHER = 11;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int GEN_MATCHER__NAME = 0;
+
+ /**
+ * The number of structural features of the '<em>Gen Matcher</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int GEN_MATCHER_FEATURE_COUNT = 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.GenHelperImpl <em>Gen Helper</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.GenHelperImpl
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getGenHelper()
+ * @generated
+ */
+ int GEN_HELPER = 12;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int GEN_HELPER__NAME = 0;
+
+ /**
+ * The number of structural features of the '<em>Gen Helper</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int GEN_HELPER_FEATURE_COUNT = 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.StereotypedElementMatcherImpl
+ * <em>Stereotyped Element Matcher</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.StereotypedElementMatcherImpl
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getStereotypedElementMatcher()
+ * @generated
+ */
+ int STEREOTYPED_ELEMENT_MATCHER = 13;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int STEREOTYPED_ELEMENT_MATCHER__NAME = GEN_MATCHER__NAME;
+
+ /**
+ * The feature id for the '<em><b>Stereotype Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int STEREOTYPED_ELEMENT_MATCHER__STEREOTYPE_NAME = GEN_MATCHER_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Stereotype Package</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int STEREOTYPED_ELEMENT_MATCHER__STEREOTYPE_PACKAGE = GEN_MATCHER_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Base Element Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int STEREOTYPED_ELEMENT_MATCHER__BASE_ELEMENT_NAME = GEN_MATCHER_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Base Element Package</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int STEREOTYPED_ELEMENT_MATCHER__BASE_ELEMENT_PACKAGE = GEN_MATCHER_FEATURE_COUNT + 3;
+
+ /**
+ * The number of structural features of the '<em>Stereotyped Element Matcher</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int STEREOTYPED_ELEMENT_MATCHER_FEATURE_COUNT = GEN_MATCHER_FEATURE_COUNT + 4;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.StereotypedElementHelperImpl
+ * <em>Stereotyped Element Helper</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.StereotypedElementHelperImpl
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getStereotypedElementHelper()
+ * @generated
+ */
+ int STEREOTYPED_ELEMENT_HELPER = 14;
+
+ /**
+ * The feature id for the '<em><b>Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int STEREOTYPED_ELEMENT_HELPER__NAME = GEN_HELPER__NAME;
+
+ /**
+ * The feature id for the '<em><b>Stereotype Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int STEREOTYPED_ELEMENT_HELPER__STEREOTYPE_NAME = GEN_HELPER_FEATURE_COUNT + 0;
+
+ /**
+ * The feature id for the '<em><b>Stereotype Package</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int STEREOTYPED_ELEMENT_HELPER__STEREOTYPE_PACKAGE = GEN_HELPER_FEATURE_COUNT + 1;
+
+ /**
+ * The feature id for the '<em><b>Base Element Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int STEREOTYPED_ELEMENT_HELPER__BASE_ELEMENT_NAME = GEN_HELPER_FEATURE_COUNT + 2;
+
+ /**
+ * The feature id for the '<em><b>Base Element Package</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int STEREOTYPED_ELEMENT_HELPER__BASE_ELEMENT_PACKAGE = GEN_HELPER_FEATURE_COUNT + 3;
+
+ /**
+ * The number of structural features of the '<em>Stereotyped Element Helper</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int STEREOTYPED_ELEMENT_HELPER_FEATURE_COUNT = GEN_HELPER_FEATURE_COUNT + 4;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.MenuDeclarationImpl <em>Menu Declaration</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.MenuDeclarationImpl
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getMenuDeclaration()
+ * @generated
+ */
+ int MENU_DECLARATION = 15;
+
+ /**
+ * The feature id for the '<em><b>Location URI</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int MENU_DECLARATION__LOCATION_URI = 0;
+
+ /**
+ * The feature id for the '<em><b>Commands</b></em>' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int MENU_DECLARATION__COMMANDS = 1;
+
+ /**
+ * The number of structural features of the '<em>Menu Declaration</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int MENU_DECLARATION_FEATURE_COUNT = 2;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.CommandDeclarationImpl <em>Command Declaration</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.CommandDeclarationImpl
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getCommandDeclaration()
+ * @generated
+ */
+ int COMMAND_DECLARATION = 16;
+
+ /**
+ * The feature id for the '<em><b>Commands</b></em>' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int COMMAND_DECLARATION__COMMANDS = 0;
+
+ /**
+ * The number of structural features of the '<em>Command Declaration</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int COMMAND_DECLARATION_FEATURE_COUNT = 1;
+
+ /**
+ * The meta object id for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.CommandImpl <em>Command</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.CommandImpl
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getCommand()
+ * @generated
+ */
+ int COMMAND = 17;
+
+ /**
+ * The feature id for the '<em><b>Element Type</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int COMMAND__ELEMENT_TYPE = 0;
+
+ /**
+ * The feature id for the '<em><b>Icon</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int COMMAND__ICON = 1;
+
+ /**
+ * The number of structural features of the '<em>Command</em>' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ * @ordered
+ */
+ int COMMAND_FEATURE_COUNT = 2;
/**
* The meta object id for the '{@link org.eclipse.papyrus.domaincontextcodegen.InheritanceKind <em>Inheritance Kind</em>}' enum.
@@ -542,8 +1186,7 @@ public interface DomaincontextcodegenPackage extends EPackage {
* @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getInheritanceKind()
* @generated
*/
- int INHERITANCE_KIND = 6;
-
+ int INHERITANCE_KIND = 18;
/**
* Returns the meta object for class '{@link org.eclipse.papyrus.domaincontextcodegen.DomainContext <em>Domain Context</em>}'.
@@ -647,19 +1290,6 @@ public interface DomaincontextcodegenPackage extends EPackage {
EAttribute getDomainContext_ElementTypeNamePrefix();
/**
- * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.DomainContext#getMatcherPatch
- * <em>Matcher Patch</em>}'.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @return the meta object for the attribute '<em>Matcher Patch</em>'.
- * @see org.eclipse.papyrus.domaincontextcodegen.DomainContext#getMatcherPatch()
- * @see #getDomainContext()
- * @generated
- */
- EAttribute getDomainContext_MatcherPatch();
-
- /**
* Returns the meta object for the containment reference '{@link org.eclipse.papyrus.domaincontextcodegen.DomainContext#getElementTypes
* <em>Element Types</em>}'.
* <!-- begin-user-doc -->
@@ -686,17 +1316,17 @@ public interface DomaincontextcodegenPackage extends EPackage {
EAttribute getDomainContext_DefaultHelperPath();
/**
- * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.domaincontextcodegen.DomainContext#getAdvicebindings
- * <em>Advicebindings</em>}'.
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.domaincontextcodegen.DomainContext#getAdvices
+ * <em>Advices</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @return the meta object for the containment reference list '<em>Advicebindings</em>'.
- * @see org.eclipse.papyrus.domaincontextcodegen.DomainContext#getAdvicebindings()
+ * @return the meta object for the containment reference list '<em>Advices</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomainContext#getAdvices()
* @see #getDomainContext()
* @generated
*/
- EReference getDomainContext_Advicebindings();
+ EReference getDomainContext_Advices();
/**
* Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.domaincontextcodegen.DomainContext#getBindings
@@ -738,6 +1368,32 @@ public interface DomaincontextcodegenPackage extends EPackage {
EAttribute getDomainContext_GeneratedSourceFolder();
/**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.domaincontextcodegen.DomainContext#getMenu
+ * <em>Menu</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the containment reference list '<em>Menu</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomainContext#getMenu()
+ * @see #getDomainContext()
+ * @generated
+ */
+ EReference getDomainContext_Menu();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.domaincontextcodegen.DomainContext#getCommand
+ * <em>Command</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the containment reference list '<em>Command</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomainContext#getCommand()
+ * @see #getDomainContext()
+ * @generated
+ */
+ EReference getDomainContext_Command();
+
+ /**
* Returns the meta object for class '{@link org.eclipse.papyrus.domaincontextcodegen.ElementTypes <em>Element Types</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -762,6 +1418,18 @@ public interface DomaincontextcodegenPackage extends EPackage {
EReference getElementTypes_Types();
/**
+ * Returns the meta object for the container reference '{@link org.eclipse.papyrus.domaincontextcodegen.ElementTypes#getDomain <em>Domain</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the container reference '<em>Domain</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.ElementTypes#getDomain()
+ * @see #getElementTypes()
+ * @generated
+ */
+ EReference getElementTypes_Domain();
+
+ /**
* Returns the meta object for class '{@link org.eclipse.papyrus.domaincontextcodegen.ElementType <em>Element Type</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -773,153 +1441,255 @@ public interface DomaincontextcodegenPackage extends EPackage {
EClass getElementType();
/**
- * Returns the meta object for the reference '{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getMetaClass <em>Meta Class</em>}'.
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getName <em>Name</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @return the meta object for the reference '<em>Meta Class</em>'.
- * @see org.eclipse.papyrus.domaincontextcodegen.ElementType#getMetaClass()
+ * @return the meta object for the attribute '<em>Name</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.ElementType#getName()
* @see #getElementType()
* @generated
*/
- EReference getElementType_MetaClass();
+ EAttribute getElementType_Name();
/**
- * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getSpecificName <em>Specific Name</em>}
- * '.
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getHelper <em>Helper</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @return the meta object for the attribute '<em>Specific Name</em>'.
- * @see org.eclipse.papyrus.domaincontextcodegen.ElementType#getSpecificName()
+ * @return the meta object for the attribute '<em>Helper</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.ElementType#getHelper()
* @see #getElementType()
* @generated
*/
- EAttribute getElementType_SpecificName();
+ EAttribute getElementType_Helper();
/**
- * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getEdithelper_EditHelperAdvicePath
- * <em>Edithelper Edit Helper Advice Path</em>}'.
+ * Returns the meta object for the container reference '{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getOwner <em>Owner</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @return the meta object for the attribute '<em>Edithelper Edit Helper Advice Path</em>'.
- * @see org.eclipse.papyrus.domaincontextcodegen.ElementType#getEdithelper_EditHelperAdvicePath()
+ * @return the meta object for the container reference '<em>Owner</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.ElementType#getOwner()
* @see #getElementType()
* @generated
*/
- EAttribute getElementType_Edithelper_EditHelperAdvicePath();
+ EReference getElementType_Owner();
/**
- * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getKind <em>Kind</em>}'.
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getIcon <em>Icon</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @return the meta object for the attribute '<em>Kind</em>'.
- * @see org.eclipse.papyrus.domaincontextcodegen.ElementType#getKind()
+ * @return the meta object for the attribute '<em>Icon</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.ElementType#getIcon()
* @see #getElementType()
* @generated
*/
- EAttribute getElementType_Kind();
+ EAttribute getElementType_Icon();
/**
- * Returns the meta object for the reference '{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getSpecializationof
- * <em>Specializationof</em>}'.
+ * Returns the meta object for class '{@link org.eclipse.papyrus.domaincontextcodegen.MetaClassType <em>Meta Class Type</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @return the meta object for the reference '<em>Specializationof</em>'.
- * @see org.eclipse.papyrus.domaincontextcodegen.ElementType#getSpecializationof()
- * @see #getElementType()
+ * @return the meta object for class '<em>Meta Class Type</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.MetaClassType
* @generated
*/
- EReference getElementType_Specializationof();
+ EClass getMetaClassType();
/**
- * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getSpecializationIDof
- * <em>Specialization IDof</em>}'.
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.domaincontextcodegen.MetaClassType#getMetaClass <em>Meta Class</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @return the meta object for the attribute '<em>Specialization IDof</em>'.
- * @see org.eclipse.papyrus.domaincontextcodegen.ElementType#getSpecializationIDof()
- * @see #getElementType()
+ * @return the meta object for the reference '<em>Meta Class</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.MetaClassType#getMetaClass()
+ * @see #getMetaClassType()
* @generated
*/
- EAttribute getElementType_SpecializationIDof();
+ EReference getMetaClassType_MetaClass();
/**
- * Returns the meta object for class '{@link org.eclipse.papyrus.domaincontextcodegen.AdviceBinding <em>Advice Binding</em>}'.
+ * Returns the meta object for class '{@link org.eclipse.papyrus.domaincontextcodegen.SpecializationType <em>Specialization Type</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @return the meta object for class '<em>Advice Binding</em>'.
- * @see org.eclipse.papyrus.domaincontextcodegen.AdviceBinding
+ * @return the meta object for class '<em>Specialization Type</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.SpecializationType
* @generated
*/
- EClass getAdviceBinding();
+ EClass getSpecializationType();
/**
- * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.AdviceBinding#getAdvicePath <em>Advice Path</em>}'.
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.domaincontextcodegen.SpecializationType#getRef <em>Ref</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @return the meta object for the attribute '<em>Advice Path</em>'.
- * @see org.eclipse.papyrus.domaincontextcodegen.AdviceBinding#getAdvicePath()
- * @see #getAdviceBinding()
+ * @return the meta object for the reference '<em>Ref</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.SpecializationType#getRef()
+ * @see #getSpecializationType()
+ * @generated
+ */
+ EReference getSpecializationType_Ref();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.SpecializationType#getMatcher <em>Matcher</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Matcher</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.SpecializationType#getMatcher()
+ * @see #getSpecializationType()
* @generated
*/
- EAttribute getAdviceBinding_AdvicePath();
+ EAttribute getSpecializationType_Matcher();
/**
- * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.AdviceBinding#getAdviceID <em>Advice ID</em>}'.
+ * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.domaincontextcodegen.SpecializationType#getGenMatcher
+ * <em>Gen Matcher</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the containment reference '<em>Gen Matcher</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.SpecializationType#getGenMatcher()
+ * @see #getSpecializationType()
+ * @generated
+ */
+ EReference getSpecializationType_GenMatcher();
+
+ /**
+ * Returns the meta object for the containment reference '{@link org.eclipse.papyrus.domaincontextcodegen.SpecializationType#getGenHelper
+ * <em>Gen Helper</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the containment reference '<em>Gen Helper</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.SpecializationType#getGenHelper()
+ * @see #getSpecializationType()
+ * @generated
+ */
+ EReference getSpecializationType_GenHelper();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.domaincontextcodegen.Advice <em>Advice</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Advice</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.Advice
+ * @generated
+ */
+ EClass getAdvice();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.Advice#getAdviceID <em>Advice ID</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @return the meta object for the attribute '<em>Advice ID</em>'.
- * @see org.eclipse.papyrus.domaincontextcodegen.AdviceBinding#getAdviceID()
- * @see #getAdviceBinding()
+ * @see org.eclipse.papyrus.domaincontextcodegen.Advice#getAdviceID()
+ * @see #getAdvice()
* @generated
*/
- EAttribute getAdviceBinding_AdviceID();
+ EAttribute getAdvice_AdviceID();
/**
- * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.AdviceBinding#getInheritance <em>Inheritance</em>}'.
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.domaincontextcodegen.Advice#getRef <em>Ref</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the reference '<em>Ref</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.Advice#getRef()
+ * @see #getAdvice()
+ * @generated
+ */
+ EReference getAdvice_Ref();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.Advice#getAdvicePath <em>Advice Path</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Advice Path</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.Advice#getAdvicePath()
+ * @see #getAdvice()
+ * @generated
+ */
+ EAttribute getAdvice_AdvicePath();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.Advice#getInheritance <em>Inheritance</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @return the meta object for the attribute '<em>Inheritance</em>'.
- * @see org.eclipse.papyrus.domaincontextcodegen.AdviceBinding#getInheritance()
- * @see #getAdviceBinding()
+ * @see org.eclipse.papyrus.domaincontextcodegen.Advice#getInheritance()
+ * @see #getAdvice()
* @generated
*/
- EAttribute getAdviceBinding_Inheritance();
+ EAttribute getAdvice_Inheritance();
/**
- * Returns the meta object for the reference '{@link org.eclipse.papyrus.domaincontextcodegen.AdviceBinding#getElementTypeRef
- * <em>Element Type Ref</em>}'.
+ * Returns the meta object for class '{@link org.eclipse.papyrus.domaincontextcodegen.ElementTypeBindings <em>Element Type Bindings</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @return the meta object for the reference '<em>Element Type Ref</em>'.
- * @see org.eclipse.papyrus.domaincontextcodegen.AdviceBinding#getElementTypeRef()
- * @see #getAdviceBinding()
+ * @return the meta object for class '<em>Element Type Bindings</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.ElementTypeBindings
* @generated
*/
- EReference getAdviceBinding_ElementTypeRef();
+ EClass getElementTypeBindings();
/**
- * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.AdviceBinding#getElementTypeIDref
- * <em>Element Type IDref</em>}'.
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.ElementTypeBindings#getClientContextID
+ * <em>Client Context ID</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @return the meta object for the attribute '<em>Element Type IDref</em>'.
- * @see org.eclipse.papyrus.domaincontextcodegen.AdviceBinding#getElementTypeIDref()
+ * @return the meta object for the attribute '<em>Client Context ID</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.ElementTypeBindings#getClientContextID()
+ * @see #getElementTypeBindings()
+ * @generated
+ */
+ EAttribute getElementTypeBindings_ClientContextID();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.domaincontextcodegen.ElementTypeBindings#getBindings
+ * <em>Bindings</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the containment reference list '<em>Bindings</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.ElementTypeBindings#getBindings()
+ * @see #getElementTypeBindings()
+ * @generated
+ */
+ EReference getElementTypeBindings_Bindings();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.domaincontextcodegen.AdviceBinding <em>Advice Binding</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Advice Binding</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.AdviceBinding
+ * @generated
+ */
+ EClass getAdviceBinding();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.domaincontextcodegen.AdviceBinding#getRef <em>Ref</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the reference '<em>Ref</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.AdviceBinding#getRef()
* @see #getAdviceBinding()
* @generated
*/
- EAttribute getAdviceBinding_ElementTypeIDref();
+ EReference getAdviceBinding_Ref();
/**
* Returns the meta object for class '{@link org.eclipse.papyrus.domaincontextcodegen.Binding <em>Binding</em>}'.
@@ -933,41 +1703,51 @@ public interface DomaincontextcodegenPackage extends EPackage {
EClass getBinding();
/**
- * Returns the meta object for the reference '{@link org.eclipse.papyrus.domaincontextcodegen.Binding#getAdvice <em>Advice</em>}'.
+ * Returns the meta object for the container reference '{@link org.eclipse.papyrus.domaincontextcodegen.Binding#getOwner <em>Owner</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @return the meta object for the reference '<em>Advice</em>'.
- * @see org.eclipse.papyrus.domaincontextcodegen.Binding#getAdvice()
+ * @return the meta object for the container reference '<em>Owner</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.Binding#getOwner()
* @see #getBinding()
* @generated
*/
- EReference getBinding_Advice();
+ EReference getBinding_Owner();
/**
- * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.Binding#getElementTypePattern
- * <em>Element Type Pattern</em>}'.
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.Binding#getPattern <em>Pattern</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @return the meta object for the attribute '<em>Element Type Pattern</em>'.
- * @see org.eclipse.papyrus.domaincontextcodegen.Binding#getElementTypePattern()
+ * @return the meta object for the attribute '<em>Pattern</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.Binding#getPattern()
* @see #getBinding()
* @generated
*/
- EAttribute getBinding_ElementTypePattern();
+ EAttribute getBinding_Pattern();
/**
- * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.Binding#getAdviceID <em>Advice ID</em>}'.
+ * Returns the meta object for class '{@link org.eclipse.papyrus.domaincontextcodegen.ElementTypeBinding <em>Element Type Binding</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @return the meta object for the attribute '<em>Advice ID</em>'.
- * @see org.eclipse.papyrus.domaincontextcodegen.Binding#getAdviceID()
- * @see #getBinding()
+ * @return the meta object for class '<em>Element Type Binding</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.ElementTypeBinding
+ * @generated
+ */
+ EClass getElementTypeBinding();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.domaincontextcodegen.ElementTypeBinding#getRef <em>Ref</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the reference '<em>Ref</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.ElementTypeBinding#getRef()
+ * @see #getElementTypeBinding()
* @generated
*/
- EAttribute getBinding_AdviceID();
+ EReference getElementTypeBinding_Ref();
/**
* Returns the meta object for class '{@link org.eclipse.papyrus.domaincontextcodegen.GenHandlers <em>Gen Handlers</em>}'.
@@ -1045,6 +1825,315 @@ public interface DomaincontextcodegenPackage extends EPackage {
EAttribute getGenHandlers_ElementTypeEnumeratorPackage();
/**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.domaincontextcodegen.GenHandlers#getVisibleCreateChildHandlers
+ * <em>Visible Create Child Handlers</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the reference list '<em>Visible Create Child Handlers</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.GenHandlers#getVisibleCreateChildHandlers()
+ * @see #getGenHandlers()
+ * @generated
+ */
+ EReference getGenHandlers_VisibleCreateChildHandlers();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.domaincontextcodegen.GenHandlers#getParentDomainCreateChild
+ * <em>Parent Domain Create Child</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the reference list '<em>Parent Domain Create Child</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.GenHandlers#getParentDomainCreateChild()
+ * @see #getGenHandlers()
+ * @generated
+ */
+ EReference getGenHandlers_ParentDomainCreateChild();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.GenHandlers#getCreateChildMenuLocationURI
+ * <em>Create Child Menu Location URI</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Create Child Menu Location URI</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.GenHandlers#getCreateChildMenuLocationURI()
+ * @see #getGenHandlers()
+ * @generated
+ */
+ EAttribute getGenHandlers_CreateChildMenuLocationURI();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.domaincontextcodegen.GenMatcher <em>Gen Matcher</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Gen Matcher</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.GenMatcher
+ * @generated
+ */
+ EClass getGenMatcher();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.GenMatcher#getName <em>Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Name</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.GenMatcher#getName()
+ * @see #getGenMatcher()
+ * @generated
+ */
+ EAttribute getGenMatcher_Name();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.domaincontextcodegen.GenHelper <em>Gen Helper</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Gen Helper</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.GenHelper
+ * @generated
+ */
+ EClass getGenHelper();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.GenHelper#getName <em>Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Name</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.GenHelper#getName()
+ * @see #getGenHelper()
+ * @generated
+ */
+ EAttribute getGenHelper_Name();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementMatcher
+ * <em>Stereotyped Element Matcher</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Stereotyped Element Matcher</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.StereotypedElementMatcher
+ * @generated
+ */
+ EClass getStereotypedElementMatcher();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementMatcher#getStereotypeName
+ * <em>Stereotype Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Stereotype Name</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.StereotypedElementMatcher#getStereotypeName()
+ * @see #getStereotypedElementMatcher()
+ * @generated
+ */
+ EAttribute getStereotypedElementMatcher_StereotypeName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementMatcher#getStereotypePackage
+ * <em>Stereotype Package</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Stereotype Package</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.StereotypedElementMatcher#getStereotypePackage()
+ * @see #getStereotypedElementMatcher()
+ * @generated
+ */
+ EAttribute getStereotypedElementMatcher_StereotypePackage();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementMatcher#getBaseElementName
+ * <em>Base Element Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Base Element Name</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.StereotypedElementMatcher#getBaseElementName()
+ * @see #getStereotypedElementMatcher()
+ * @generated
+ */
+ EAttribute getStereotypedElementMatcher_BaseElementName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementMatcher#getBaseElementPackage
+ * <em>Base Element Package</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Base Element Package</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.StereotypedElementMatcher#getBaseElementPackage()
+ * @see #getStereotypedElementMatcher()
+ * @generated
+ */
+ EAttribute getStereotypedElementMatcher_BaseElementPackage();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementHelper
+ * <em>Stereotyped Element Helper</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Stereotyped Element Helper</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.StereotypedElementHelper
+ * @generated
+ */
+ EClass getStereotypedElementHelper();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementHelper#getStereotypeName
+ * <em>Stereotype Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Stereotype Name</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.StereotypedElementHelper#getStereotypeName()
+ * @see #getStereotypedElementHelper()
+ * @generated
+ */
+ EAttribute getStereotypedElementHelper_StereotypeName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementHelper#getStereotypePackage
+ * <em>Stereotype Package</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Stereotype Package</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.StereotypedElementHelper#getStereotypePackage()
+ * @see #getStereotypedElementHelper()
+ * @generated
+ */
+ EAttribute getStereotypedElementHelper_StereotypePackage();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementHelper#getBaseElementName
+ * <em>Base Element Name</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Base Element Name</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.StereotypedElementHelper#getBaseElementName()
+ * @see #getStereotypedElementHelper()
+ * @generated
+ */
+ EAttribute getStereotypedElementHelper_BaseElementName();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementHelper#getBaseElementPackage
+ * <em>Base Element Package</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Base Element Package</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.StereotypedElementHelper#getBaseElementPackage()
+ * @see #getStereotypedElementHelper()
+ * @generated
+ */
+ EAttribute getStereotypedElementHelper_BaseElementPackage();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.domaincontextcodegen.MenuDeclaration <em>Menu Declaration</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Menu Declaration</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.MenuDeclaration
+ * @generated
+ */
+ EClass getMenuDeclaration();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.MenuDeclaration#getLocationURI
+ * <em>Location URI</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Location URI</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.MenuDeclaration#getLocationURI()
+ * @see #getMenuDeclaration()
+ * @generated
+ */
+ EAttribute getMenuDeclaration_LocationURI();
+
+ /**
+ * Returns the meta object for the reference list '{@link org.eclipse.papyrus.domaincontextcodegen.MenuDeclaration#getCommands <em>Commands</em>}
+ * '.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the reference list '<em>Commands</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.MenuDeclaration#getCommands()
+ * @see #getMenuDeclaration()
+ * @generated
+ */
+ EReference getMenuDeclaration_Commands();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.domaincontextcodegen.CommandDeclaration <em>Command Declaration</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Command Declaration</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.CommandDeclaration
+ * @generated
+ */
+ EClass getCommandDeclaration();
+
+ /**
+ * Returns the meta object for the containment reference list '{@link org.eclipse.papyrus.domaincontextcodegen.CommandDeclaration#getCommands
+ * <em>Commands</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the containment reference list '<em>Commands</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.CommandDeclaration#getCommands()
+ * @see #getCommandDeclaration()
+ * @generated
+ */
+ EReference getCommandDeclaration_Commands();
+
+ /**
+ * Returns the meta object for class '{@link org.eclipse.papyrus.domaincontextcodegen.Command <em>Command</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for class '<em>Command</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.Command
+ * @generated
+ */
+ EClass getCommand();
+
+ /**
+ * Returns the meta object for the reference '{@link org.eclipse.papyrus.domaincontextcodegen.Command#getElementType <em>Element Type</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the reference '<em>Element Type</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.Command#getElementType()
+ * @see #getCommand()
+ * @generated
+ */
+ EReference getCommand_ElementType();
+
+ /**
+ * Returns the meta object for the attribute '{@link org.eclipse.papyrus.domaincontextcodegen.Command#getIcon <em>Icon</em>}'.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @return the meta object for the attribute '<em>Icon</em>'.
+ * @see org.eclipse.papyrus.domaincontextcodegen.Command#getIcon()
+ * @see #getCommand()
+ * @generated
+ */
+ EAttribute getCommand_Icon();
+
+ /**
* Returns the meta object for enum '{@link org.eclipse.papyrus.domaincontextcodegen.InheritanceKind <em>Inheritance Kind</em>}'.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -1155,15 +2244,6 @@ public interface DomaincontextcodegenPackage extends EPackage {
EAttribute DOMAIN_CONTEXT__ELEMENT_TYPE_NAME_PREFIX = eINSTANCE.getDomainContext_ElementTypeNamePrefix();
/**
- * The meta object literal for the '<em><b>Matcher Patch</b></em>' attribute feature.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @generated
- */
- EAttribute DOMAIN_CONTEXT__MATCHER_PATCH = eINSTANCE.getDomainContext_MatcherPatch();
-
- /**
* The meta object literal for the '<em><b>Element Types</b></em>' containment reference feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -1182,13 +2262,13 @@ public interface DomaincontextcodegenPackage extends EPackage {
EAttribute DOMAIN_CONTEXT__DEFAULT_HELPER_PATH = eINSTANCE.getDomainContext_DefaultHelperPath();
/**
- * The meta object literal for the '<em><b>Advicebindings</b></em>' containment reference list feature.
+ * The meta object literal for the '<em><b>Advices</b></em>' containment reference list feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
*/
- EReference DOMAIN_CONTEXT__ADVICEBINDINGS = eINSTANCE.getDomainContext_Advicebindings();
+ EReference DOMAIN_CONTEXT__ADVICES = eINSTANCE.getDomainContext_Advices();
/**
* The meta object literal for the '<em><b>Bindings</b></em>' containment reference list feature.
@@ -1218,6 +2298,24 @@ public interface DomaincontextcodegenPackage extends EPackage {
EAttribute DOMAIN_CONTEXT__GENERATED_SOURCE_FOLDER = eINSTANCE.getDomainContext_GeneratedSourceFolder();
/**
+ * The meta object literal for the '<em><b>Menu</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference DOMAIN_CONTEXT__MENU = eINSTANCE.getDomainContext_Menu();
+
+ /**
+ * The meta object literal for the '<em><b>Command</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference DOMAIN_CONTEXT__COMMAND = eINSTANCE.getDomainContext_Command();
+
+ /**
* The meta object literal for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.ElementTypesImpl <em>Element Types</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -1238,6 +2336,15 @@ public interface DomaincontextcodegenPackage extends EPackage {
EReference ELEMENT_TYPES__TYPES = eINSTANCE.getElementTypes_Types();
/**
+ * The meta object literal for the '<em><b>Domain</b></em>' container reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference ELEMENT_TYPES__DOMAIN = eINSTANCE.getElementTypes_Domain();
+
+ /**
* The meta object literal for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.ElementTypeImpl <em>Element Type</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -1249,78 +2356,119 @@ public interface DomaincontextcodegenPackage extends EPackage {
EClass ELEMENT_TYPE = eINSTANCE.getElementType();
/**
- * The meta object literal for the '<em><b>Meta Class</b></em>' reference feature.
+ * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
*/
- EReference ELEMENT_TYPE__META_CLASS = eINSTANCE.getElementType_MetaClass();
+ EAttribute ELEMENT_TYPE__NAME = eINSTANCE.getElementType_Name();
/**
- * The meta object literal for the '<em><b>Specific Name</b></em>' attribute feature.
+ * The meta object literal for the '<em><b>Helper</b></em>' attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
*/
- EAttribute ELEMENT_TYPE__SPECIFIC_NAME = eINSTANCE.getElementType_SpecificName();
+ EAttribute ELEMENT_TYPE__HELPER = eINSTANCE.getElementType_Helper();
/**
- * The meta object literal for the '<em><b>Edithelper Edit Helper Advice Path</b></em>' attribute feature.
+ * The meta object literal for the '<em><b>Owner</b></em>' container reference feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
*/
- EAttribute ELEMENT_TYPE__EDITHELPER_EDIT_HELPER_ADVICE_PATH = eINSTANCE.getElementType_Edithelper_EditHelperAdvicePath();
+ EReference ELEMENT_TYPE__OWNER = eINSTANCE.getElementType_Owner();
/**
- * The meta object literal for the '<em><b>Kind</b></em>' attribute feature.
+ * The meta object literal for the '<em><b>Icon</b></em>' attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
*/
- EAttribute ELEMENT_TYPE__KIND = eINSTANCE.getElementType_Kind();
+ EAttribute ELEMENT_TYPE__ICON = eINSTANCE.getElementType_Icon();
/**
- * The meta object literal for the '<em><b>Specializationof</b></em>' reference feature.
+ * The meta object literal for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.MetaClassTypeImpl <em>Meta Class Type</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.MetaClassTypeImpl
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getMetaClassType()
* @generated
*/
- EReference ELEMENT_TYPE__SPECIALIZATIONOF = eINSTANCE.getElementType_Specializationof();
+ EClass META_CLASS_TYPE = eINSTANCE.getMetaClassType();
/**
- * The meta object literal for the '<em><b>Specialization IDof</b></em>' attribute feature.
+ * The meta object literal for the '<em><b>Meta Class</b></em>' reference feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
*/
- EAttribute ELEMENT_TYPE__SPECIALIZATION_IDOF = eINSTANCE.getElementType_SpecializationIDof();
+ EReference META_CLASS_TYPE__META_CLASS = eINSTANCE.getMetaClassType_MetaClass();
/**
- * The meta object literal for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.AdviceBindingImpl <em>Advice Binding</em>}' class.
+ * The meta object literal for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.SpecializationTypeImpl <em>Specialization Type</em>}'
+ * class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @see org.eclipse.papyrus.domaincontextcodegen.impl.AdviceBindingImpl
- * @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getAdviceBinding()
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.SpecializationTypeImpl
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getSpecializationType()
* @generated
*/
- EClass ADVICE_BINDING = eINSTANCE.getAdviceBinding();
+ EClass SPECIALIZATION_TYPE = eINSTANCE.getSpecializationType();
/**
- * The meta object literal for the '<em><b>Advice Path</b></em>' attribute feature.
+ * The meta object literal for the '<em><b>Ref</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference SPECIALIZATION_TYPE__REF = eINSTANCE.getSpecializationType_Ref();
+
+ /**
+ * The meta object literal for the '<em><b>Matcher</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute SPECIALIZATION_TYPE__MATCHER = eINSTANCE.getSpecializationType_Matcher();
+
+ /**
+ * The meta object literal for the '<em><b>Gen Matcher</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference SPECIALIZATION_TYPE__GEN_MATCHER = eINSTANCE.getSpecializationType_GenMatcher();
+
+ /**
+ * The meta object literal for the '<em><b>Gen Helper</b></em>' containment reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference SPECIALIZATION_TYPE__GEN_HELPER = eINSTANCE.getSpecializationType_GenHelper();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.AdviceImpl <em>Advice</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.AdviceImpl
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getAdvice()
* @generated
*/
- EAttribute ADVICE_BINDING__ADVICE_PATH = eINSTANCE.getAdviceBinding_AdvicePath();
+ EClass ADVICE = eINSTANCE.getAdvice();
/**
* The meta object literal for the '<em><b>Advice ID</b></em>' attribute feature.
@@ -1329,7 +2477,25 @@ public interface DomaincontextcodegenPackage extends EPackage {
*
* @generated
*/
- EAttribute ADVICE_BINDING__ADVICE_ID = eINSTANCE.getAdviceBinding_AdviceID();
+ EAttribute ADVICE__ADVICE_ID = eINSTANCE.getAdvice_AdviceID();
+
+ /**
+ * The meta object literal for the '<em><b>Ref</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference ADVICE__REF = eINSTANCE.getAdvice_Ref();
+
+ /**
+ * The meta object literal for the '<em><b>Advice Path</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute ADVICE__ADVICE_PATH = eINSTANCE.getAdvice_AdvicePath();
/**
* The meta object literal for the '<em><b>Inheritance</b></em>' attribute feature.
@@ -1338,25 +2504,57 @@ public interface DomaincontextcodegenPackage extends EPackage {
*
* @generated
*/
- EAttribute ADVICE_BINDING__INHERITANCE = eINSTANCE.getAdviceBinding_Inheritance();
+ EAttribute ADVICE__INHERITANCE = eINSTANCE.getAdvice_Inheritance();
/**
- * The meta object literal for the '<em><b>Element Type Ref</b></em>' reference feature.
+ * The meta object literal for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.ElementTypeBindingsImpl
+ * <em>Element Type Bindings</em>}' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.ElementTypeBindingsImpl
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getElementTypeBindings()
* @generated
*/
- EReference ADVICE_BINDING__ELEMENT_TYPE_REF = eINSTANCE.getAdviceBinding_ElementTypeRef();
+ EClass ELEMENT_TYPE_BINDINGS = eINSTANCE.getElementTypeBindings();
/**
- * The meta object literal for the '<em><b>Element Type IDref</b></em>' attribute feature.
+ * The meta object literal for the '<em><b>Client Context ID</b></em>' attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
*/
- EAttribute ADVICE_BINDING__ELEMENT_TYPE_IDREF = eINSTANCE.getAdviceBinding_ElementTypeIDref();
+ EAttribute ELEMENT_TYPE_BINDINGS__CLIENT_CONTEXT_ID = eINSTANCE.getElementTypeBindings_ClientContextID();
+
+ /**
+ * The meta object literal for the '<em><b>Bindings</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference ELEMENT_TYPE_BINDINGS__BINDINGS = eINSTANCE.getElementTypeBindings_Bindings();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.AdviceBindingImpl <em>Advice Binding</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.AdviceBindingImpl
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getAdviceBinding()
+ * @generated
+ */
+ EClass ADVICE_BINDING = eINSTANCE.getAdviceBinding();
+
+ /**
+ * The meta object literal for the '<em><b>Ref</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference ADVICE_BINDING__REF = eINSTANCE.getAdviceBinding_Ref();
/**
* The meta object literal for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.BindingImpl <em>Binding</em>}' class.
@@ -1370,31 +2568,43 @@ public interface DomaincontextcodegenPackage extends EPackage {
EClass BINDING = eINSTANCE.getBinding();
/**
- * The meta object literal for the '<em><b>Advice</b></em>' reference feature.
+ * The meta object literal for the '<em><b>Owner</b></em>' container reference feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
*/
- EReference BINDING__ADVICE = eINSTANCE.getBinding_Advice();
+ EReference BINDING__OWNER = eINSTANCE.getBinding_Owner();
/**
- * The meta object literal for the '<em><b>Element Type Pattern</b></em>' attribute feature.
+ * The meta object literal for the '<em><b>Pattern</b></em>' attribute feature.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @generated
*/
- EAttribute BINDING__ELEMENT_TYPE_PATTERN = eINSTANCE.getBinding_ElementTypePattern();
+ EAttribute BINDING__PATTERN = eINSTANCE.getBinding_Pattern();
/**
- * The meta object literal for the '<em><b>Advice ID</b></em>' attribute feature.
+ * The meta object literal for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.ElementTypeBindingImpl <em>Element Type Binding</em>}
+ * ' class.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.ElementTypeBindingImpl
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getElementTypeBinding()
* @generated
*/
- EAttribute BINDING__ADVICE_ID = eINSTANCE.getBinding_AdviceID();
+ EClass ELEMENT_TYPE_BINDING = eINSTANCE.getElementTypeBinding();
+
+ /**
+ * The meta object literal for the '<em><b>Ref</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference ELEMENT_TYPE_BINDING__REF = eINSTANCE.getElementTypeBinding_Ref();
/**
* The meta object literal for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.GenHandlersImpl <em>Gen Handlers</em>}' class.
@@ -1453,6 +2663,249 @@ public interface DomaincontextcodegenPackage extends EPackage {
EAttribute GEN_HANDLERS__ELEMENT_TYPE_ENUMERATOR_PACKAGE = eINSTANCE.getGenHandlers_ElementTypeEnumeratorPackage();
/**
+ * The meta object literal for the '<em><b>Visible Create Child Handlers</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference GEN_HANDLERS__VISIBLE_CREATE_CHILD_HANDLERS = eINSTANCE.getGenHandlers_VisibleCreateChildHandlers();
+
+ /**
+ * The meta object literal for the '<em><b>Parent Domain Create Child</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference GEN_HANDLERS__PARENT_DOMAIN_CREATE_CHILD = eINSTANCE.getGenHandlers_ParentDomainCreateChild();
+
+ /**
+ * The meta object literal for the '<em><b>Create Child Menu Location URI</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute GEN_HANDLERS__CREATE_CHILD_MENU_LOCATION_URI = eINSTANCE.getGenHandlers_CreateChildMenuLocationURI();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.GenMatcherImpl <em>Gen Matcher</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.GenMatcherImpl
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getGenMatcher()
+ * @generated
+ */
+ EClass GEN_MATCHER = eINSTANCE.getGenMatcher();
+
+ /**
+ * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute GEN_MATCHER__NAME = eINSTANCE.getGenMatcher_Name();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.GenHelperImpl <em>Gen Helper</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.GenHelperImpl
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getGenHelper()
+ * @generated
+ */
+ EClass GEN_HELPER = eINSTANCE.getGenHelper();
+
+ /**
+ * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute GEN_HELPER__NAME = eINSTANCE.getGenHelper_Name();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.StereotypedElementMatcherImpl
+ * <em>Stereotyped Element Matcher</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.StereotypedElementMatcherImpl
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getStereotypedElementMatcher()
+ * @generated
+ */
+ EClass STEREOTYPED_ELEMENT_MATCHER = eINSTANCE.getStereotypedElementMatcher();
+
+ /**
+ * The meta object literal for the '<em><b>Stereotype Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute STEREOTYPED_ELEMENT_MATCHER__STEREOTYPE_NAME = eINSTANCE.getStereotypedElementMatcher_StereotypeName();
+
+ /**
+ * The meta object literal for the '<em><b>Stereotype Package</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute STEREOTYPED_ELEMENT_MATCHER__STEREOTYPE_PACKAGE = eINSTANCE.getStereotypedElementMatcher_StereotypePackage();
+
+ /**
+ * The meta object literal for the '<em><b>Base Element Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute STEREOTYPED_ELEMENT_MATCHER__BASE_ELEMENT_NAME = eINSTANCE.getStereotypedElementMatcher_BaseElementName();
+
+ /**
+ * The meta object literal for the '<em><b>Base Element Package</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute STEREOTYPED_ELEMENT_MATCHER__BASE_ELEMENT_PACKAGE = eINSTANCE.getStereotypedElementMatcher_BaseElementPackage();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.StereotypedElementHelperImpl
+ * <em>Stereotyped Element Helper</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.StereotypedElementHelperImpl
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getStereotypedElementHelper()
+ * @generated
+ */
+ EClass STEREOTYPED_ELEMENT_HELPER = eINSTANCE.getStereotypedElementHelper();
+
+ /**
+ * The meta object literal for the '<em><b>Stereotype Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute STEREOTYPED_ELEMENT_HELPER__STEREOTYPE_NAME = eINSTANCE.getStereotypedElementHelper_StereotypeName();
+
+ /**
+ * The meta object literal for the '<em><b>Stereotype Package</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute STEREOTYPED_ELEMENT_HELPER__STEREOTYPE_PACKAGE = eINSTANCE.getStereotypedElementHelper_StereotypePackage();
+
+ /**
+ * The meta object literal for the '<em><b>Base Element Name</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute STEREOTYPED_ELEMENT_HELPER__BASE_ELEMENT_NAME = eINSTANCE.getStereotypedElementHelper_BaseElementName();
+
+ /**
+ * The meta object literal for the '<em><b>Base Element Package</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute STEREOTYPED_ELEMENT_HELPER__BASE_ELEMENT_PACKAGE = eINSTANCE.getStereotypedElementHelper_BaseElementPackage();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.MenuDeclarationImpl <em>Menu Declaration</em>}'
+ * class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.MenuDeclarationImpl
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getMenuDeclaration()
+ * @generated
+ */
+ EClass MENU_DECLARATION = eINSTANCE.getMenuDeclaration();
+
+ /**
+ * The meta object literal for the '<em><b>Location URI</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute MENU_DECLARATION__LOCATION_URI = eINSTANCE.getMenuDeclaration_LocationURI();
+
+ /**
+ * The meta object literal for the '<em><b>Commands</b></em>' reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference MENU_DECLARATION__COMMANDS = eINSTANCE.getMenuDeclaration_Commands();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.CommandDeclarationImpl <em>Command Declaration</em>}'
+ * class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.CommandDeclarationImpl
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getCommandDeclaration()
+ * @generated
+ */
+ EClass COMMAND_DECLARATION = eINSTANCE.getCommandDeclaration();
+
+ /**
+ * The meta object literal for the '<em><b>Commands</b></em>' containment reference list feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference COMMAND_DECLARATION__COMMANDS = eINSTANCE.getCommandDeclaration_Commands();
+
+ /**
+ * The meta object literal for the '{@link org.eclipse.papyrus.domaincontextcodegen.impl.CommandImpl <em>Command</em>}' class.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.CommandImpl
+ * @see org.eclipse.papyrus.domaincontextcodegen.impl.DomaincontextcodegenPackageImpl#getCommand()
+ * @generated
+ */
+ EClass COMMAND = eINSTANCE.getCommand();
+
+ /**
+ * The meta object literal for the '<em><b>Element Type</b></em>' reference feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EReference COMMAND__ELEMENT_TYPE = eINSTANCE.getCommand_ElementType();
+
+ /**
+ * The meta object literal for the '<em><b>Icon</b></em>' attribute feature.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ EAttribute COMMAND__ICON = eINSTANCE.getCommand_Icon();
+
+ /**
* The meta object literal for the '{@link org.eclipse.papyrus.domaincontextcodegen.InheritanceKind <em>Inheritance Kind</em>}' enum.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/ElementType.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/ElementType.java
index a3149fced91..8d42e23698f 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/ElementType.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/ElementType.java
@@ -6,7 +6,6 @@
*/
package org.eclipse.papyrus.domaincontextcodegen;
-import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EObject;
/**
@@ -17,189 +16,131 @@ import org.eclipse.emf.ecore.EObject;
* <p>
* The following features are supported:
* <ul>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getMetaClass <em>Meta Class</em>}</li>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getSpecificName <em>Specific Name</em>}</li>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getEdithelper_EditHelperAdvicePath <em>Edithelper Edit Helper Advice Path</em>}</li>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getKind <em>Kind</em>}</li>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getSpecializationof <em>Specializationof</em>}</li>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getSpecializationIDof <em>Specialization IDof</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getHelper <em>Helper</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getOwner <em>Owner</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getIcon <em>Icon</em>}</li>
* </ul>
* </p>
*
* @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getElementType()
- * @model
+ * @model abstract="true"
* @generated
*/
public interface ElementType extends EObject {
/**
- * Returns the value of the '<em><b>Meta Class</b></em>' reference.
+ * Returns the value of the '<em><b>Name</b></em>' attribute.
* <!-- begin-user-doc -->
* <p>
- * If the meaning of the '<em>Meta Class</em>' reference isn't clear, there really should be more of a description here...
+ * 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>Meta Class</em>' reference.
- * @see #setMetaClass(EClass)
- * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getElementType_MetaClass()
- * @model required="true"
- * @generated
- */
- EClass getMetaClass();
-
- /**
- * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getMetaClass <em>Meta Class</em>}' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @param value
- * the new value of the '<em>Meta Class</em>' reference.
- * @see #getMetaClass()
- * @generated
- */
- void setMetaClass(EClass value);
-
- /**
- * Returns the value of the '<em><b>Specific Name</b></em>' attribute.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>Specific 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>Specific Name</em>' attribute.
- * @see #setSpecificName(String)
- * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getElementType_SpecificName()
- * @model
- * @generated
- */
- String getSpecificName();
-
- /**
- * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getSpecificName <em>Specific Name</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @param value
- * the new value of the '<em>Specific Name</em>' attribute.
- * @see #getSpecificName()
- * @generated
- */
- void setSpecificName(String value);
-
- /**
- * Returns the value of the '<em><b>Edithelper Edit Helper Advice Path</b></em>' attribute.
- * <!-- begin-user-doc -->
- * <p>
- * If the meaning of the '<em>Edithelper Edit Helper Advice Path</em>' attribute isn't clear, there really should be more of a description here...
- * </p>
- * <!-- end-user-doc -->
- *
- * @return the value of the '<em>Edithelper Edit Helper Advice Path</em>' attribute.
- * @see #setEdithelper_EditHelperAdvicePath(String)
- * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getElementType_Edithelper_EditHelperAdvicePath()
+ * @return the value of the '<em>Name</em>' attribute.
+ * @see #setName(String)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getElementType_Name()
* @model
* @generated
*/
- String getEdithelper_EditHelperAdvicePath();
+ String getName();
/**
- * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getEdithelper_EditHelperAdvicePath
- * <em>Edithelper Edit Helper Advice Path</em>}' attribute.
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getName <em>Name</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @param value
- * the new value of the '<em>Edithelper Edit Helper Advice Path</em>' attribute.
- * @see #getEdithelper_EditHelperAdvicePath()
+ * the new value of the '<em>Name</em>' attribute.
+ * @see #getName()
* @generated
*/
- void setEdithelper_EditHelperAdvicePath(String value);
+ void setName(String value);
/**
- * Returns the value of the '<em><b>Kind</b></em>' attribute.
+ * Returns the value of the '<em><b>Helper</b></em>' attribute.
* <!-- begin-user-doc -->
* <p>
- * If the meaning of the '<em>Kind</em>' attribute isn't clear, there really should be more of a description here...
+ * If the meaning of the '<em>Helper</em>' attribute isn't clear, there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
*
- * @return the value of the '<em>Kind</em>' attribute.
- * @see #setKind(String)
- * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getElementType_Kind()
+ * @return the value of the '<em>Helper</em>' attribute.
+ * @see #setHelper(String)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getElementType_Helper()
* @model
* @generated
*/
- String getKind();
+ String getHelper();
/**
- * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getKind <em>Kind</em>}' attribute.
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getHelper <em>Helper</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @param value
- * the new value of the '<em>Kind</em>' attribute.
- * @see #getKind()
+ * the new value of the '<em>Helper</em>' attribute.
+ * @see #getHelper()
* @generated
*/
- void setKind(String value);
+ void setHelper(String value);
/**
- * Returns the value of the '<em><b>Specializationof</b></em>' reference.
+ * Returns the value of the '<em><b>Owner</b></em>' container reference.
+ * It is bidirectional and its opposite is '{@link org.eclipse.papyrus.domaincontextcodegen.ElementTypes#getTypes <em>Types</em>}'.
* <!-- begin-user-doc -->
* <p>
- * If the meaning of the '<em>Specializationof</em>' reference isn't clear, there really should be more of a description here...
+ * If the meaning of the '<em>Owner</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>Specializationof</em>' reference.
- * @see #setSpecializationof(ElementType)
- * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getElementType_Specializationof()
- * @model
+ * @return the value of the '<em>Owner</em>' container reference.
+ * @see #setOwner(ElementTypes)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getElementType_Owner()
+ * @see org.eclipse.papyrus.domaincontextcodegen.ElementTypes#getTypes
+ * @model opposite="types" transient="false"
* @generated
*/
- ElementType getSpecializationof();
+ ElementTypes getOwner();
/**
- * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getSpecializationof <em>Specializationof</em>}' reference.
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getOwner <em>Owner</em>}' container reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @param value
- * the new value of the '<em>Specializationof</em>' reference.
- * @see #getSpecializationof()
+ * the new value of the '<em>Owner</em>' container reference.
+ * @see #getOwner()
* @generated
*/
- void setSpecializationof(ElementType value);
+ void setOwner(ElementTypes value);
/**
- * Returns the value of the '<em><b>Specialization IDof</b></em>' attribute.
+ * Returns the value of the '<em><b>Icon</b></em>' attribute.
* <!-- begin-user-doc -->
* <p>
- * If the meaning of the '<em>Specialization IDof</em>' attribute isn't clear, there really should be more of a description here...
+ * If the meaning of the '<em>Icon</em>' attribute isn't clear, there really should be more of a description here...
* </p>
* <!-- end-user-doc -->
*
- * @return the value of the '<em>Specialization IDof</em>' attribute.
- * @see #setSpecializationIDof(String)
- * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getElementType_SpecializationIDof()
+ * @return the value of the '<em>Icon</em>' attribute.
+ * @see #setIcon(String)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getElementType_Icon()
* @model
* @generated
*/
- String getSpecializationIDof();
+ String getIcon();
/**
- * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getSpecializationIDof <em>Specialization IDof</em>}'
- * attribute.
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getIcon <em>Icon</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
* @param value
- * the new value of the '<em>Specialization IDof</em>' attribute.
- * @see #getSpecializationIDof()
+ * the new value of the '<em>Icon</em>' attribute.
+ * @see #getIcon()
* @generated
*/
- void setSpecializationIDof(String value);
+ void setIcon(String value);
} // ElementType
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/ElementTypeBinding.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/ElementTypeBinding.java
new file mode 100644
index 00000000000..a89f734c158
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/ElementTypeBinding.java
@@ -0,0 +1,55 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Element Type Binding</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.ElementTypeBinding#getRef <em>Ref</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getElementTypeBinding()
+ * @model
+ * @generated
+ */
+public interface ElementTypeBinding extends Binding {
+
+ /**
+ * Returns the value of the '<em><b>Ref</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Ref</em>' reference isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Ref</em>' reference.
+ * @see #setRef(ElementType)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getElementTypeBinding_Ref()
+ * @model
+ * @generated
+ */
+ ElementType getRef();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.ElementTypeBinding#getRef <em>Ref</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Ref</em>' reference.
+ * @see #getRef()
+ * @generated
+ */
+ void setRef(ElementType value);
+
+} // ElementTypeBinding
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/ElementTypeBindings.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/ElementTypeBindings.java
new file mode 100644
index 00000000000..0184a6522f7
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/ElementTypeBindings.java
@@ -0,0 +1,78 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Element Type Bindings</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.ElementTypeBindings#getClientContextID <em>Client Context ID</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.ElementTypeBindings#getBindings <em>Bindings</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getElementTypeBindings()
+ * @model
+ * @generated
+ */
+public interface ElementTypeBindings extends EObject {
+
+ /**
+ * Returns the value of the '<em><b>Client Context ID</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Client Context 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>Client Context ID</em>' attribute.
+ * @see #setClientContextID(String)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getElementTypeBindings_ClientContextID()
+ * @model
+ * @generated
+ */
+ String getClientContextID();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.ElementTypeBindings#getClientContextID <em>Client Context ID</em>}'
+ * attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Client Context ID</em>' attribute.
+ * @see #getClientContextID()
+ * @generated
+ */
+ void setClientContextID(String value);
+
+ /**
+ * Returns the value of the '<em><b>Bindings</b></em>' containment reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.domaincontextcodegen.Binding}.
+ * It is bidirectional and its opposite is '{@link org.eclipse.papyrus.domaincontextcodegen.Binding#getOwner <em>Owner</em>}'.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Bindings</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>Bindings</em>' containment reference list.
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getElementTypeBindings_Bindings()
+ * @see org.eclipse.papyrus.domaincontextcodegen.Binding#getOwner
+ * @model opposite="owner" containment="true"
+ * @generated
+ */
+ EList<Binding> getBindings();
+
+} // ElementTypeBindings
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/ElementTypes.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/ElementTypes.java
index 65203f4edae..4b89dae0f5e 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/ElementTypes.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/ElementTypes.java
@@ -18,6 +18,7 @@ import org.eclipse.emf.ecore.EObject;
* The following features are supported:
* <ul>
* <li>{@link org.eclipse.papyrus.domaincontextcodegen.ElementTypes#getTypes <em>Types</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.ElementTypes#getDomain <em>Domain</em>}</li>
* </ul>
* </p>
*
@@ -30,6 +31,7 @@ public interface ElementTypes extends EObject {
/**
* Returns the value of the '<em><b>Types</b></em>' containment reference list.
* The list contents are of type {@link org.eclipse.papyrus.domaincontextcodegen.ElementType}.
+ * It is bidirectional and its opposite is '{@link org.eclipse.papyrus.domaincontextcodegen.ElementType#getOwner <em>Owner</em>}'.
* <!-- begin-user-doc -->
* <p>
* If the meaning of the '<em>Types</em>' containment reference list isn't clear, there really should be more of a description here...
@@ -38,9 +40,41 @@ public interface ElementTypes extends EObject {
*
* @return the value of the '<em>Types</em>' containment reference list.
* @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getElementTypes_Types()
- * @model containment="true"
+ * @see org.eclipse.papyrus.domaincontextcodegen.ElementType#getOwner
+ * @model opposite="owner" containment="true"
* @generated
*/
EList<ElementType> getTypes();
+ /**
+ * Returns the value of the '<em><b>Domain</b></em>' container reference.
+ * It is bidirectional and its opposite is '{@link org.eclipse.papyrus.domaincontextcodegen.DomainContext#getElementTypes <em>Element Types</em>}
+ * '.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Domain</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>Domain</em>' container reference.
+ * @see #setDomain(DomainContext)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getElementTypes_Domain()
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomainContext#getElementTypes
+ * @model opposite="elementTypes" transient="false"
+ * @generated
+ */
+ DomainContext getDomain();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.ElementTypes#getDomain <em>Domain</em>}' container reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Domain</em>' container reference.
+ * @see #getDomain()
+ * @generated
+ */
+ void setDomain(DomainContext value);
+
} // ElementTypes
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/GenHandlers.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/GenHandlers.java
index 3a334422512..58c6aebb46f 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/GenHandlers.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/GenHandlers.java
@@ -6,6 +6,7 @@
*/
package org.eclipse.papyrus.domaincontextcodegen;
+import org.eclipse.emf.common.util.EList;
import org.eclipse.emf.ecore.EObject;
/**
@@ -21,6 +22,9 @@ import org.eclipse.emf.ecore.EObject;
* <li>{@link org.eclipse.papyrus.domaincontextcodegen.GenHandlers#getSuperClassPackage <em>Super Class Package</em>}</li>
* <li>{@link org.eclipse.papyrus.domaincontextcodegen.GenHandlers#getElementTypeEnumerator <em>Element Type Enumerator</em>}</li>
* <li>{@link org.eclipse.papyrus.domaincontextcodegen.GenHandlers#getElementTypeEnumeratorPackage <em>Element Type Enumerator Package</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.GenHandlers#getVisibleCreateChildHandlers <em>Visible Create Child Handlers</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.GenHandlers#getParentDomainCreateChild <em>Parent Domain Create Child</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.GenHandlers#getCreateChildMenuLocationURI <em>Create Child Menu Location URI</em>}</li>
* </ul>
* </p>
*
@@ -173,4 +177,65 @@ public interface GenHandlers extends EObject {
*/
void setElementTypeEnumeratorPackage(String value);
+ /**
+ * Returns the value of the '<em><b>Visible Create Child Handlers</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.domaincontextcodegen.ElementType}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Visible Create Child Handlers</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>Visible Create Child Handlers</em>' reference list.
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getGenHandlers_VisibleCreateChildHandlers()
+ * @model
+ * @generated
+ */
+ EList<ElementType> getVisibleCreateChildHandlers();
+
+ /**
+ * Returns the value of the '<em><b>Parent Domain Create Child</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.domaincontextcodegen.ElementType}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Parent Domain Create Child</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>Parent Domain Create Child</em>' reference list.
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getGenHandlers_ParentDomainCreateChild()
+ * @model
+ * @generated
+ */
+ EList<ElementType> getParentDomainCreateChild();
+
+ /**
+ * Returns the value of the '<em><b>Create Child Menu Location URI</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Create Child Menu Location 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>Create Child Menu Location URI</em>' attribute.
+ * @see #setCreateChildMenuLocationURI(String)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getGenHandlers_CreateChildMenuLocationURI()
+ * @model
+ * @generated
+ */
+ String getCreateChildMenuLocationURI();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.GenHandlers#getCreateChildMenuLocationURI
+ * <em>Create Child Menu Location URI</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Create Child Menu Location URI</em>' attribute.
+ * @see #getCreateChildMenuLocationURI()
+ * @generated
+ */
+ void setCreateChildMenuLocationURI(String value);
+
} // GenHandlers
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/GenHelper.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/GenHelper.java
new file mode 100644
index 00000000000..72defc734f9
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/GenHelper.java
@@ -0,0 +1,57 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Gen Helper</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.GenHelper#getName <em>Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getGenHelper()
+ * @model abstract="true"
+ * @generated
+ */
+public interface GenHelper extends EObject {
+
+ /**
+ * 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.domaincontextcodegen.DomaincontextcodegenPackage#getGenHelper_Name()
+ * @model
+ * @generated
+ */
+ String getName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.GenHelper#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);
+
+} // GenHelper
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/GenMatcher.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/GenMatcher.java
new file mode 100644
index 00000000000..8814df5b960
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/GenMatcher.java
@@ -0,0 +1,57 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen;
+
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Gen Matcher</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.GenMatcher#getName <em>Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getGenMatcher()
+ * @model abstract="true"
+ * @generated
+ */
+public interface GenMatcher extends EObject {
+
+ /**
+ * 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.domaincontextcodegen.DomaincontextcodegenPackage#getGenMatcher_Name()
+ * @model
+ * @generated
+ */
+ String getName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.GenMatcher#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);
+
+} // GenMatcher
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/MenuDeclaration.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/MenuDeclaration.java
new file mode 100644
index 00000000000..c9222c74a45
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/MenuDeclaration.java
@@ -0,0 +1,75 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen;
+
+import org.eclipse.emf.common.util.EList;
+import org.eclipse.emf.ecore.EObject;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Menu Declaration</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.MenuDeclaration#getLocationURI <em>Location URI</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.MenuDeclaration#getCommands <em>Commands</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getMenuDeclaration()
+ * @model
+ * @generated
+ */
+public interface MenuDeclaration extends EObject {
+
+ /**
+ * Returns the value of the '<em><b>Location URI</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Location 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>Location URI</em>' attribute.
+ * @see #setLocationURI(String)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getMenuDeclaration_LocationURI()
+ * @model
+ * @generated
+ */
+ String getLocationURI();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.MenuDeclaration#getLocationURI <em>Location URI</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Location URI</em>' attribute.
+ * @see #getLocationURI()
+ * @generated
+ */
+ void setLocationURI(String value);
+
+ /**
+ * Returns the value of the '<em><b>Commands</b></em>' reference list.
+ * The list contents are of type {@link org.eclipse.papyrus.domaincontextcodegen.Command}.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Commands</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>Commands</em>' reference list.
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getMenuDeclaration_Commands()
+ * @model
+ * @generated
+ */
+ EList<Command> getCommands();
+
+} // MenuDeclaration
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/MetaClassType.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/MetaClassType.java
new file mode 100644
index 00000000000..814872a62e3
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/MetaClassType.java
@@ -0,0 +1,57 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen;
+
+import org.eclipse.emf.ecore.EClass;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Meta Class Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.MetaClassType#getMetaClass <em>Meta Class</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getMetaClassType()
+ * @model
+ * @generated
+ */
+public interface MetaClassType extends ElementType {
+
+ /**
+ * Returns the value of the '<em><b>Meta Class</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Meta Class</em>' reference isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Meta Class</em>' reference.
+ * @see #setMetaClass(EClass)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getMetaClassType_MetaClass()
+ * @model required="true"
+ * @generated
+ */
+ EClass getMetaClass();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.MetaClassType#getMetaClass <em>Meta Class</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Meta Class</em>' reference.
+ * @see #getMetaClass()
+ * @generated
+ */
+ void setMetaClass(EClass value);
+
+} // MetaClassType
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/SpecializationType.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/SpecializationType.java
new file mode 100644
index 00000000000..fae5f6d3519
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/SpecializationType.java
@@ -0,0 +1,144 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Specialization Type</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.SpecializationType#getRef <em>Ref</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.SpecializationType#getMatcher <em>Matcher</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.SpecializationType#getGenMatcher <em>Gen Matcher</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.SpecializationType#getGenHelper <em>Gen Helper</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getSpecializationType()
+ * @model
+ * @generated
+ */
+public interface SpecializationType extends ElementType {
+
+ /**
+ * Returns the value of the '<em><b>Ref</b></em>' reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Ref</em>' reference isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Ref</em>' reference.
+ * @see #setRef(ElementType)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getSpecializationType_Ref()
+ * @model
+ * @generated
+ */
+ ElementType getRef();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.SpecializationType#getRef <em>Ref</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Ref</em>' reference.
+ * @see #getRef()
+ * @generated
+ */
+ void setRef(ElementType value);
+
+ /**
+ * Returns the value of the '<em><b>Matcher</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Matcher</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Matcher</em>' attribute.
+ * @see #setMatcher(String)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getSpecializationType_Matcher()
+ * @model
+ * @generated
+ */
+ String getMatcher();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.SpecializationType#getMatcher <em>Matcher</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Matcher</em>' attribute.
+ * @see #getMatcher()
+ * @generated
+ */
+ void setMatcher(String value);
+
+ /**
+ * Returns the value of the '<em><b>Gen Matcher</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Gen Matcher</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>Gen Matcher</em>' containment reference.
+ * @see #setGenMatcher(GenMatcher)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getSpecializationType_GenMatcher()
+ * @model containment="true"
+ * @generated
+ */
+ GenMatcher getGenMatcher();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.SpecializationType#getGenMatcher <em>Gen Matcher</em>}' containment
+ * reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Gen Matcher</em>' containment reference.
+ * @see #getGenMatcher()
+ * @generated
+ */
+ void setGenMatcher(GenMatcher value);
+
+ /**
+ * Returns the value of the '<em><b>Gen Helper</b></em>' containment reference.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Gen Helper</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>Gen Helper</em>' containment reference.
+ * @see #setGenHelper(GenHelper)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getSpecializationType_GenHelper()
+ * @model containment="true"
+ * @generated
+ */
+ GenHelper getGenHelper();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.SpecializationType#getGenHelper <em>Gen Helper</em>}' containment
+ * reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Gen Helper</em>' containment reference.
+ * @see #getGenHelper()
+ * @generated
+ */
+ void setGenHelper(GenHelper value);
+
+} // SpecializationType
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/StereotypedElementHelper.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/StereotypedElementHelper.java
new file mode 100644
index 00000000000..1ee8a53df29
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/StereotypedElementHelper.java
@@ -0,0 +1,146 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Stereotyped Element Helper</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementHelper#getStereotypeName <em>Stereotype Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementHelper#getStereotypePackage <em>Stereotype Package</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementHelper#getBaseElementName <em>Base Element Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementHelper#getBaseElementPackage <em>Base Element Package</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getStereotypedElementHelper()
+ * @model
+ * @generated
+ */
+public interface StereotypedElementHelper extends GenHelper {
+
+ /**
+ * Returns the value of the '<em><b>Stereotype Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Stereotype 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>Stereotype Name</em>' attribute.
+ * @see #setStereotypeName(String)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getStereotypedElementHelper_StereotypeName()
+ * @model
+ * @generated
+ */
+ String getStereotypeName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementHelper#getStereotypeName <em>Stereotype Name</em>}'
+ * attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Stereotype Name</em>' attribute.
+ * @see #getStereotypeName()
+ * @generated
+ */
+ void setStereotypeName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Stereotype Package</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Stereotype Package</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Stereotype Package</em>' attribute.
+ * @see #setStereotypePackage(String)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getStereotypedElementHelper_StereotypePackage()
+ * @model
+ * @generated
+ */
+ String getStereotypePackage();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementHelper#getStereotypePackage
+ * <em>Stereotype Package</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Stereotype Package</em>' attribute.
+ * @see #getStereotypePackage()
+ * @generated
+ */
+ void setStereotypePackage(String value);
+
+ /**
+ * Returns the value of the '<em><b>Base Element Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Element 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>Base Element Name</em>' attribute.
+ * @see #setBaseElementName(String)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getStereotypedElementHelper_BaseElementName()
+ * @model
+ * @generated
+ */
+ String getBaseElementName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementHelper#getBaseElementName <em>Base Element Name</em>}'
+ * attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Base Element Name</em>' attribute.
+ * @see #getBaseElementName()
+ * @generated
+ */
+ void setBaseElementName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Base Element Package</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Element Package</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Base Element Package</em>' attribute.
+ * @see #setBaseElementPackage(String)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getStereotypedElementHelper_BaseElementPackage()
+ * @model
+ * @generated
+ */
+ String getBaseElementPackage();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementHelper#getBaseElementPackage
+ * <em>Base Element Package</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Base Element Package</em>' attribute.
+ * @see #getBaseElementPackage()
+ * @generated
+ */
+ void setBaseElementPackage(String value);
+
+} // StereotypedElementHelper
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/StereotypedElementMatcher.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/StereotypedElementMatcher.java
new file mode 100644
index 00000000000..90c8aa43382
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/StereotypedElementMatcher.java
@@ -0,0 +1,146 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen;
+
+/**
+ * <!-- begin-user-doc -->
+ * A representation of the model object '<em><b>Stereotyped Element Matcher</b></em>'.
+ * <!-- end-user-doc -->
+ *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementMatcher#getStereotypeName <em>Stereotype Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementMatcher#getStereotypePackage <em>Stereotype Package</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementMatcher#getBaseElementName <em>Base Element Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementMatcher#getBaseElementPackage <em>Base Element Package</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getStereotypedElementMatcher()
+ * @model
+ * @generated
+ */
+public interface StereotypedElementMatcher extends GenMatcher {
+
+ /**
+ * Returns the value of the '<em><b>Stereotype Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Stereotype 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>Stereotype Name</em>' attribute.
+ * @see #setStereotypeName(String)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getStereotypedElementMatcher_StereotypeName()
+ * @model
+ * @generated
+ */
+ String getStereotypeName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementMatcher#getStereotypeName <em>Stereotype Name</em>}'
+ * attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Stereotype Name</em>' attribute.
+ * @see #getStereotypeName()
+ * @generated
+ */
+ void setStereotypeName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Stereotype Package</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Stereotype Package</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Stereotype Package</em>' attribute.
+ * @see #setStereotypePackage(String)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getStereotypedElementMatcher_StereotypePackage()
+ * @model
+ * @generated
+ */
+ String getStereotypePackage();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementMatcher#getStereotypePackage
+ * <em>Stereotype Package</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Stereotype Package</em>' attribute.
+ * @see #getStereotypePackage()
+ * @generated
+ */
+ void setStereotypePackage(String value);
+
+ /**
+ * Returns the value of the '<em><b>Base Element Name</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Element 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>Base Element Name</em>' attribute.
+ * @see #setBaseElementName(String)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getStereotypedElementMatcher_BaseElementName()
+ * @model
+ * @generated
+ */
+ String getBaseElementName();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementMatcher#getBaseElementName <em>Base Element Name</em>}
+ * ' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Base Element Name</em>' attribute.
+ * @see #getBaseElementName()
+ * @generated
+ */
+ void setBaseElementName(String value);
+
+ /**
+ * Returns the value of the '<em><b>Base Element Package</b></em>' attribute.
+ * <!-- begin-user-doc -->
+ * <p>
+ * If the meaning of the '<em>Base Element Package</em>' attribute isn't clear, there really should be more of a description here...
+ * </p>
+ * <!-- end-user-doc -->
+ *
+ * @return the value of the '<em>Base Element Package</em>' attribute.
+ * @see #setBaseElementPackage(String)
+ * @see org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage#getStereotypedElementMatcher_BaseElementPackage()
+ * @model
+ * @generated
+ */
+ String getBaseElementPackage();
+
+ /**
+ * Sets the value of the '{@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementMatcher#getBaseElementPackage
+ * <em>Base Element Package</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @param value
+ * the new value of the '<em>Base Element Package</em>' attribute.
+ * @see #getBaseElementPackage()
+ * @generated
+ */
+ void setBaseElementPackage(String value);
+
+} // StereotypedElementMatcher
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/AdviceBindingImpl.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/AdviceBindingImpl.java
index 08c344c4367..c0c2915ec09 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/AdviceBindingImpl.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/AdviceBindingImpl.java
@@ -10,11 +10,9 @@ 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.domaincontextcodegen.Advice;
import org.eclipse.papyrus.domaincontextcodegen.AdviceBinding;
import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage;
-import org.eclipse.papyrus.domaincontextcodegen.ElementType;
-import org.eclipse.papyrus.domaincontextcodegen.InheritanceKind;
/**
* <!-- begin-user-doc -->
@@ -23,116 +21,24 @@ import org.eclipse.papyrus.domaincontextcodegen.InheritanceKind;
* <p>
* The following features are implemented:
* <ul>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.AdviceBindingImpl#getAdvicePath <em>Advice Path</em>}</li>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.AdviceBindingImpl#getAdviceID <em>Advice ID</em>}</li>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.AdviceBindingImpl#getInheritance <em>Inheritance</em>}</li>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.AdviceBindingImpl#getElementTypeRef <em>Element Type Ref</em>}</li>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.AdviceBindingImpl#getElementTypeIDref <em>Element Type IDref</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.AdviceBindingImpl#getRef <em>Ref</em>}</li>
* </ul>
* </p>
*
* @generated
*/
-public class AdviceBindingImpl extends EObjectImpl implements AdviceBinding {
+public class AdviceBindingImpl extends BindingImpl implements AdviceBinding {
/**
- * The default value of the '{@link #getAdvicePath() <em>Advice Path</em>}' attribute.
+ * The cached value of the '{@link #getRef() <em>Ref</em>}' reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @see #getAdvicePath()
+ * @see #getRef()
* @generated
* @ordered
*/
- protected static final String ADVICE_PATH_EDEFAULT = null;
-
- /**
- * The cached value of the '{@link #getAdvicePath() <em>Advice Path</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @see #getAdvicePath()
- * @generated
- * @ordered
- */
- protected String advicePath = ADVICE_PATH_EDEFAULT;
-
- /**
- * The default value of the '{@link #getAdviceID() <em>Advice ID</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @see #getAdviceID()
- * @generated
- * @ordered
- */
- protected static final String ADVICE_ID_EDEFAULT = null;
-
- /**
- * The cached value of the '{@link #getAdviceID() <em>Advice ID</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @see #getAdviceID()
- * @generated
- * @ordered
- */
- protected String adviceID = ADVICE_ID_EDEFAULT;
-
- /**
- * The default value of the '{@link #getInheritance() <em>Inheritance</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @see #getInheritance()
- * @generated
- * @ordered
- */
- protected static final InheritanceKind INHERITANCE_EDEFAULT = InheritanceKind.NONE;
-
- /**
- * The cached value of the '{@link #getInheritance() <em>Inheritance</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @see #getInheritance()
- * @generated
- * @ordered
- */
- protected InheritanceKind inheritance = INHERITANCE_EDEFAULT;
-
- /**
- * The cached value of the '{@link #getElementTypeRef() <em>Element Type Ref</em>}' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @see #getElementTypeRef()
- * @generated
- * @ordered
- */
- protected ElementType elementTypeRef;
-
- /**
- * The default value of the '{@link #getElementTypeIDref() <em>Element Type IDref</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @see #getElementTypeIDref()
- * @generated
- * @ordered
- */
- protected static final String ELEMENT_TYPE_IDREF_EDEFAULT = null;
-
- /**
- * The cached value of the '{@link #getElementTypeIDref() <em>Element Type IDref</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @see #getElementTypeIDref()
- * @generated
- * @ordered
- */
- protected String elementTypeIDref = ELEMENT_TYPE_IDREF_EDEFAULT;
+ protected Advice ref;
/**
* <!-- begin-user-doc -->
@@ -161,108 +67,16 @@ public class AdviceBindingImpl extends EObjectImpl implements AdviceBinding {
*
* @generated
*/
- public String getAdvicePath() {
- return advicePath;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @generated
- */
- public void setAdvicePath(String newAdvicePath) {
- String oldAdvicePath = advicePath;
- advicePath = newAdvicePath;
- if(eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.ADVICE_BINDING__ADVICE_PATH, oldAdvicePath, advicePath));
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @generated
- */
- public String getAdviceID() {
- return adviceID;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @generated
- */
- public void setAdviceID(String newAdviceID) {
- String oldAdviceID = adviceID;
- adviceID = newAdviceID;
- if(eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.ADVICE_BINDING__ADVICE_ID, oldAdviceID, adviceID));
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @generated
- */
- public InheritanceKind getInheritance() {
- return inheritance;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @generated
- */
- public void setInheritance(InheritanceKind newInheritance) {
- InheritanceKind oldInheritance = inheritance;
- inheritance = newInheritance == null ? INHERITANCE_EDEFAULT : newInheritance;
- if(eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.ADVICE_BINDING__INHERITANCE, oldInheritance, inheritance));
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @generated
- */
- public ElementType getElementTypeRef() {
- if(elementTypeRef != null && elementTypeRef.eIsProxy()) {
- InternalEObject oldElementTypeRef = (InternalEObject)elementTypeRef;
- elementTypeRef = (ElementType)eResolveProxy(oldElementTypeRef);
- if(elementTypeRef != oldElementTypeRef) {
+ public Advice getRef() {
+ if(ref != null && ref.eIsProxy()) {
+ InternalEObject oldRef = (InternalEObject)ref;
+ ref = (Advice)eResolveProxy(oldRef);
+ if(ref != oldRef) {
if(eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.RESOLVE, DomaincontextcodegenPackage.ADVICE_BINDING__ELEMENT_TYPE_REF, oldElementTypeRef, elementTypeRef));
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DomaincontextcodegenPackage.ADVICE_BINDING__REF, oldRef, ref));
}
}
- return elementTypeRef;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @generated
- */
- public ElementType basicGetElementTypeRef() {
- return elementTypeRef;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @generated
- */
- public void setElementTypeRef(ElementType newElementTypeRef) {
- ElementType oldElementTypeRef = elementTypeRef;
- elementTypeRef = newElementTypeRef;
- if(eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.ADVICE_BINDING__ELEMENT_TYPE_REF, oldElementTypeRef, elementTypeRef));
+ return ref;
}
/**
@@ -271,8 +85,8 @@ public class AdviceBindingImpl extends EObjectImpl implements AdviceBinding {
*
* @generated
*/
- public String getElementTypeIDref() {
- return elementTypeIDref;
+ public Advice basicGetRef() {
+ return ref;
}
/**
@@ -281,11 +95,11 @@ public class AdviceBindingImpl extends EObjectImpl implements AdviceBinding {
*
* @generated
*/
- public void setElementTypeIDref(String newElementTypeIDref) {
- String oldElementTypeIDref = elementTypeIDref;
- elementTypeIDref = newElementTypeIDref;
+ public void setRef(Advice newRef) {
+ Advice oldRef = ref;
+ ref = newRef;
if(eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.ADVICE_BINDING__ELEMENT_TYPE_IDREF, oldElementTypeIDref, elementTypeIDref));
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.ADVICE_BINDING__REF, oldRef, ref));
}
/**
@@ -297,18 +111,10 @@ public class AdviceBindingImpl extends EObjectImpl implements AdviceBinding {
@Override
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch(featureID) {
- case DomaincontextcodegenPackage.ADVICE_BINDING__ADVICE_PATH:
- return getAdvicePath();
- case DomaincontextcodegenPackage.ADVICE_BINDING__ADVICE_ID:
- return getAdviceID();
- case DomaincontextcodegenPackage.ADVICE_BINDING__INHERITANCE:
- return getInheritance();
- case DomaincontextcodegenPackage.ADVICE_BINDING__ELEMENT_TYPE_REF:
+ case DomaincontextcodegenPackage.ADVICE_BINDING__REF:
if(resolve)
- return getElementTypeRef();
- return basicGetElementTypeRef();
- case DomaincontextcodegenPackage.ADVICE_BINDING__ELEMENT_TYPE_IDREF:
- return getElementTypeIDref();
+ return getRef();
+ return basicGetRef();
}
return super.eGet(featureID, resolve, coreType);
}
@@ -322,20 +128,8 @@ public class AdviceBindingImpl extends EObjectImpl implements AdviceBinding {
@Override
public void eSet(int featureID, Object newValue) {
switch(featureID) {
- case DomaincontextcodegenPackage.ADVICE_BINDING__ADVICE_PATH:
- setAdvicePath((String)newValue);
- return;
- case DomaincontextcodegenPackage.ADVICE_BINDING__ADVICE_ID:
- setAdviceID((String)newValue);
- return;
- case DomaincontextcodegenPackage.ADVICE_BINDING__INHERITANCE:
- setInheritance((InheritanceKind)newValue);
- return;
- case DomaincontextcodegenPackage.ADVICE_BINDING__ELEMENT_TYPE_REF:
- setElementTypeRef((ElementType)newValue);
- return;
- case DomaincontextcodegenPackage.ADVICE_BINDING__ELEMENT_TYPE_IDREF:
- setElementTypeIDref((String)newValue);
+ case DomaincontextcodegenPackage.ADVICE_BINDING__REF:
+ setRef((Advice)newValue);
return;
}
super.eSet(featureID, newValue);
@@ -350,20 +144,8 @@ public class AdviceBindingImpl extends EObjectImpl implements AdviceBinding {
@Override
public void eUnset(int featureID) {
switch(featureID) {
- case DomaincontextcodegenPackage.ADVICE_BINDING__ADVICE_PATH:
- setAdvicePath(ADVICE_PATH_EDEFAULT);
- return;
- case DomaincontextcodegenPackage.ADVICE_BINDING__ADVICE_ID:
- setAdviceID(ADVICE_ID_EDEFAULT);
- return;
- case DomaincontextcodegenPackage.ADVICE_BINDING__INHERITANCE:
- setInheritance(INHERITANCE_EDEFAULT);
- return;
- case DomaincontextcodegenPackage.ADVICE_BINDING__ELEMENT_TYPE_REF:
- setElementTypeRef((ElementType)null);
- return;
- case DomaincontextcodegenPackage.ADVICE_BINDING__ELEMENT_TYPE_IDREF:
- setElementTypeIDref(ELEMENT_TYPE_IDREF_EDEFAULT);
+ case DomaincontextcodegenPackage.ADVICE_BINDING__REF:
+ setRef((Advice)null);
return;
}
super.eUnset(featureID);
@@ -378,42 +160,10 @@ public class AdviceBindingImpl extends EObjectImpl implements AdviceBinding {
@Override
public boolean eIsSet(int featureID) {
switch(featureID) {
- case DomaincontextcodegenPackage.ADVICE_BINDING__ADVICE_PATH:
- return ADVICE_PATH_EDEFAULT == null ? advicePath != null : !ADVICE_PATH_EDEFAULT.equals(advicePath);
- case DomaincontextcodegenPackage.ADVICE_BINDING__ADVICE_ID:
- return ADVICE_ID_EDEFAULT == null ? adviceID != null : !ADVICE_ID_EDEFAULT.equals(adviceID);
- case DomaincontextcodegenPackage.ADVICE_BINDING__INHERITANCE:
- return inheritance != INHERITANCE_EDEFAULT;
- case DomaincontextcodegenPackage.ADVICE_BINDING__ELEMENT_TYPE_REF:
- return elementTypeRef != null;
- case DomaincontextcodegenPackage.ADVICE_BINDING__ELEMENT_TYPE_IDREF:
- return ELEMENT_TYPE_IDREF_EDEFAULT == null ? elementTypeIDref != null : !ELEMENT_TYPE_IDREF_EDEFAULT.equals(elementTypeIDref);
+ case DomaincontextcodegenPackage.ADVICE_BINDING__REF:
+ return ref != 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(" (advicePath: ");
- result.append(advicePath);
- result.append(", adviceID: ");
- result.append(adviceID);
- result.append(", inheritance: ");
- result.append(inheritance);
- result.append(", elementTypeIDref: ");
- result.append(elementTypeIDref);
- result.append(')');
- return result.toString();
- }
-
} //AdviceBindingImpl
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/AdviceImpl.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/AdviceImpl.java
new file mode 100644
index 00000000000..028b06c2f8d
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/AdviceImpl.java
@@ -0,0 +1,361 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen.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.domaincontextcodegen.Advice;
+import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage;
+import org.eclipse.papyrus.domaincontextcodegen.ElementType;
+import org.eclipse.papyrus.domaincontextcodegen.InheritanceKind;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Advice</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.AdviceImpl#getAdviceID <em>Advice ID</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.AdviceImpl#getRef <em>Ref</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.AdviceImpl#getAdvicePath <em>Advice Path</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.AdviceImpl#getInheritance <em>Inheritance</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class AdviceImpl extends EObjectImpl implements Advice {
+
+ /**
+ * The default value of the '{@link #getAdviceID() <em>Advice ID</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getAdviceID()
+ * @generated
+ * @ordered
+ */
+ protected static final String ADVICE_ID_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getAdviceID() <em>Advice ID</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getAdviceID()
+ * @generated
+ * @ordered
+ */
+ protected String adviceID = ADVICE_ID_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getRef() <em>Ref</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getRef()
+ * @generated
+ * @ordered
+ */
+ protected ElementType ref;
+
+ /**
+ * The default value of the '{@link #getAdvicePath() <em>Advice Path</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getAdvicePath()
+ * @generated
+ * @ordered
+ */
+ protected static final String ADVICE_PATH_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getAdvicePath() <em>Advice Path</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getAdvicePath()
+ * @generated
+ * @ordered
+ */
+ protected String advicePath = ADVICE_PATH_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getInheritance() <em>Inheritance</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getInheritance()
+ * @generated
+ * @ordered
+ */
+ protected static final InheritanceKind INHERITANCE_EDEFAULT = InheritanceKind.NONE;
+
+ /**
+ * The cached value of the '{@link #getInheritance() <em>Inheritance</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getInheritance()
+ * @generated
+ * @ordered
+ */
+ protected InheritanceKind inheritance = INHERITANCE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected AdviceImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DomaincontextcodegenPackage.Literals.ADVICE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public String getAdviceID() {
+ return adviceID;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setAdviceID(String newAdviceID) {
+ String oldAdviceID = adviceID;
+ adviceID = newAdviceID;
+ if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.ADVICE__ADVICE_ID, oldAdviceID, adviceID));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ElementType getRef() {
+ if(ref != null && ref.eIsProxy()) {
+ InternalEObject oldRef = (InternalEObject)ref;
+ ref = (ElementType)eResolveProxy(oldRef);
+ if(ref != oldRef) {
+ if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DomaincontextcodegenPackage.ADVICE__REF, oldRef, ref));
+ }
+ }
+ return ref;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ElementType basicGetRef() {
+ return ref;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setRef(ElementType newRef) {
+ ElementType oldRef = ref;
+ ref = newRef;
+ if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.ADVICE__REF, oldRef, ref));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public String getAdvicePath() {
+ return advicePath;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setAdvicePath(String newAdvicePath) {
+ String oldAdvicePath = advicePath;
+ advicePath = newAdvicePath;
+ if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.ADVICE__ADVICE_PATH, oldAdvicePath, advicePath));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public InheritanceKind getInheritance() {
+ return inheritance;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setInheritance(InheritanceKind newInheritance) {
+ InheritanceKind oldInheritance = inheritance;
+ inheritance = newInheritance == null ? INHERITANCE_EDEFAULT : newInheritance;
+ if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.ADVICE__INHERITANCE, oldInheritance, inheritance));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.ADVICE__ADVICE_ID:
+ return getAdviceID();
+ case DomaincontextcodegenPackage.ADVICE__REF:
+ if(resolve)
+ return getRef();
+ return basicGetRef();
+ case DomaincontextcodegenPackage.ADVICE__ADVICE_PATH:
+ return getAdvicePath();
+ case DomaincontextcodegenPackage.ADVICE__INHERITANCE:
+ return getInheritance();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.ADVICE__ADVICE_ID:
+ setAdviceID((String)newValue);
+ return;
+ case DomaincontextcodegenPackage.ADVICE__REF:
+ setRef((ElementType)newValue);
+ return;
+ case DomaincontextcodegenPackage.ADVICE__ADVICE_PATH:
+ setAdvicePath((String)newValue);
+ return;
+ case DomaincontextcodegenPackage.ADVICE__INHERITANCE:
+ setInheritance((InheritanceKind)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.ADVICE__ADVICE_ID:
+ setAdviceID(ADVICE_ID_EDEFAULT);
+ return;
+ case DomaincontextcodegenPackage.ADVICE__REF:
+ setRef((ElementType)null);
+ return;
+ case DomaincontextcodegenPackage.ADVICE__ADVICE_PATH:
+ setAdvicePath(ADVICE_PATH_EDEFAULT);
+ return;
+ case DomaincontextcodegenPackage.ADVICE__INHERITANCE:
+ setInheritance(INHERITANCE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.ADVICE__ADVICE_ID:
+ return ADVICE_ID_EDEFAULT == null ? adviceID != null : !ADVICE_ID_EDEFAULT.equals(adviceID);
+ case DomaincontextcodegenPackage.ADVICE__REF:
+ return ref != null;
+ case DomaincontextcodegenPackage.ADVICE__ADVICE_PATH:
+ return ADVICE_PATH_EDEFAULT == null ? advicePath != null : !ADVICE_PATH_EDEFAULT.equals(advicePath);
+ case DomaincontextcodegenPackage.ADVICE__INHERITANCE:
+ return inheritance != INHERITANCE_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(" (adviceID: ");
+ result.append(adviceID);
+ result.append(", advicePath: ");
+ result.append(advicePath);
+ result.append(", inheritance: ");
+ result.append(inheritance);
+ result.append(')');
+ return result.toString();
+ }
+
+} //AdviceImpl
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/BindingImpl.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/BindingImpl.java
index c359f226f6d..0a407d6430c 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/BindingImpl.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/BindingImpl.java
@@ -7,13 +7,15 @@
package org.eclipse.papyrus.domaincontextcodegen.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.emf.ecore.impl.EObjectImpl;
-import org.eclipse.papyrus.domaincontextcodegen.AdviceBinding;
+import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.papyrus.domaincontextcodegen.Binding;
import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage;
+import org.eclipse.papyrus.domaincontextcodegen.ElementTypeBindings;
/**
* <!-- begin-user-doc -->
@@ -22,70 +24,46 @@ import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage;
* <p>
* The following features are implemented:
* <ul>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.BindingImpl#getAdvice <em>Advice</em>}</li>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.BindingImpl#getElementTypePattern <em>Element Type Pattern</em>}</li>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.BindingImpl#getAdviceID <em>Advice ID</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.BindingImpl#getOwner <em>Owner</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.BindingImpl#getPattern <em>Pattern</em>}</li>
* </ul>
* </p>
*
* @generated
*/
-public class BindingImpl extends EObjectImpl implements Binding {
+public abstract class BindingImpl extends EObjectImpl implements Binding {
/**
- * The cached value of the '{@link #getAdvice() <em>Advice</em>}' reference.
+ * The default value of the '{@link #getPattern() <em>Pattern</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @see #getAdvice()
+ * @see #getPattern()
* @generated
* @ordered
*/
- protected AdviceBinding advice;
+ protected static final String PATTERN_EDEFAULT = null;
/**
- * The default value of the '{@link #getElementTypePattern() <em>Element Type Pattern</em>}' attribute.
+ * The cached value of the '{@link #getPattern() <em>Pattern</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @see #getElementTypePattern()
+ * @see #getPattern()
* @generated
* @ordered
*/
- protected static final String ELEMENT_TYPE_PATTERN_EDEFAULT = null;
+ protected String pattern = PATTERN_EDEFAULT;
/**
- * The cached value of the '{@link #getElementTypePattern() <em>Element Type Pattern</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @see #getElementTypePattern()
* @generated
- * @ordered
- */
- protected String elementTypePattern = ELEMENT_TYPE_PATTERN_EDEFAULT;
-
- /**
- * The default value of the '{@link #getAdviceID() <em>Advice ID</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @see #getAdviceID()
- * @generated
- * @ordered
- */
- protected static final String ADVICE_ID_EDEFAULT = null;
-
- /**
- * The cached value of the '{@link #getAdviceID() <em>Advice ID</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @see #getAdviceID()
- * @generated
- * @ordered
*/
- protected String adviceID = ADVICE_ID_EDEFAULT;
+ protected BindingImpl() {
+ super();
+ }
/**
* <!-- begin-user-doc -->
@@ -93,8 +71,9 @@ public class BindingImpl extends EObjectImpl implements Binding {
*
* @generated
*/
- protected BindingImpl() {
- super();
+ @Override
+ protected EClass eStaticClass() {
+ return DomaincontextcodegenPackage.Literals.BINDING;
}
/**
@@ -103,9 +82,10 @@ public class BindingImpl extends EObjectImpl implements Binding {
*
* @generated
*/
- @Override
- protected EClass eStaticClass() {
- return DomaincontextcodegenPackage.Literals.BINDING;
+ public ElementTypeBindings getOwner() {
+ if(eContainerFeatureID() != DomaincontextcodegenPackage.BINDING__OWNER)
+ return null;
+ return (ElementTypeBindings)eContainer();
}
/**
@@ -114,16 +94,9 @@ public class BindingImpl extends EObjectImpl implements Binding {
*
* @generated
*/
- public AdviceBinding getAdvice() {
- if(advice != null && advice.eIsProxy()) {
- InternalEObject oldAdvice = (InternalEObject)advice;
- advice = (AdviceBinding)eResolveProxy(oldAdvice);
- if(advice != oldAdvice) {
- if(eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.RESOLVE, DomaincontextcodegenPackage.BINDING__ADVICE, oldAdvice, advice));
- }
- }
- return advice;
+ public NotificationChain basicSetOwner(ElementTypeBindings newOwner, NotificationChain msgs) {
+ msgs = eBasicSetContainer((InternalEObject)newOwner, DomaincontextcodegenPackage.BINDING__OWNER, msgs);
+ return msgs;
}
/**
@@ -132,8 +105,20 @@ public class BindingImpl extends EObjectImpl implements Binding {
*
* @generated
*/
- public AdviceBinding basicGetAdvice() {
- return advice;
+ public void setOwner(ElementTypeBindings newOwner) {
+ if(newOwner != eInternalContainer() || (eContainerFeatureID() != DomaincontextcodegenPackage.BINDING__OWNER && newOwner != null)) {
+ if(EcoreUtil.isAncestor(this, newOwner))
+ throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
+ NotificationChain msgs = null;
+ if(eInternalContainer() != null)
+ msgs = eBasicRemoveFromContainer(msgs);
+ if(newOwner != null)
+ msgs = ((InternalEObject)newOwner).eInverseAdd(this, DomaincontextcodegenPackage.ELEMENT_TYPE_BINDINGS__BINDINGS, ElementTypeBindings.class, msgs);
+ msgs = basicSetOwner(newOwner, msgs);
+ if(msgs != null)
+ msgs.dispatch();
+ } else if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.BINDING__OWNER, newOwner, newOwner));
}
/**
@@ -142,11 +127,8 @@ public class BindingImpl extends EObjectImpl implements Binding {
*
* @generated
*/
- public void setAdvice(AdviceBinding newAdvice) {
- AdviceBinding oldAdvice = advice;
- advice = newAdvice;
- if(eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.BINDING__ADVICE, oldAdvice, advice));
+ public String getPattern() {
+ return pattern;
}
/**
@@ -155,8 +137,11 @@ public class BindingImpl extends EObjectImpl implements Binding {
*
* @generated
*/
- public String getElementTypePattern() {
- return elementTypePattern;
+ public void setPattern(String newPattern) {
+ String oldPattern = pattern;
+ pattern = newPattern;
+ if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.BINDING__PATTERN, oldPattern, pattern));
}
/**
@@ -165,11 +150,15 @@ public class BindingImpl extends EObjectImpl implements Binding {
*
* @generated
*/
- public void setElementTypePattern(String newElementTypePattern) {
- String oldElementTypePattern = elementTypePattern;
- elementTypePattern = newElementTypePattern;
- if(eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.BINDING__ELEMENT_TYPE_PATTERN, oldElementTypePattern, elementTypePattern));
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.BINDING__OWNER:
+ if(eInternalContainer() != null)
+ msgs = eBasicRemoveFromContainer(msgs);
+ return basicSetOwner((ElementTypeBindings)otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
}
/**
@@ -178,8 +167,13 @@ public class BindingImpl extends EObjectImpl implements Binding {
*
* @generated
*/
- public String getAdviceID() {
- return adviceID;
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.BINDING__OWNER:
+ return basicSetOwner(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
}
/**
@@ -188,11 +182,13 @@ public class BindingImpl extends EObjectImpl implements Binding {
*
* @generated
*/
- public void setAdviceID(String newAdviceID) {
- String oldAdviceID = adviceID;
- adviceID = newAdviceID;
- if(eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.BINDING__ADVICE_ID, oldAdviceID, adviceID));
+ @Override
+ public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
+ switch(eContainerFeatureID()) {
+ case DomaincontextcodegenPackage.BINDING__OWNER:
+ return eInternalContainer().eInverseRemove(this, DomaincontextcodegenPackage.ELEMENT_TYPE_BINDINGS__BINDINGS, ElementTypeBindings.class, msgs);
+ }
+ return super.eBasicRemoveFromContainerFeature(msgs);
}
/**
@@ -204,14 +200,10 @@ public class BindingImpl extends EObjectImpl implements Binding {
@Override
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch(featureID) {
- case DomaincontextcodegenPackage.BINDING__ADVICE:
- if(resolve)
- return getAdvice();
- return basicGetAdvice();
- case DomaincontextcodegenPackage.BINDING__ELEMENT_TYPE_PATTERN:
- return getElementTypePattern();
- case DomaincontextcodegenPackage.BINDING__ADVICE_ID:
- return getAdviceID();
+ case DomaincontextcodegenPackage.BINDING__OWNER:
+ return getOwner();
+ case DomaincontextcodegenPackage.BINDING__PATTERN:
+ return getPattern();
}
return super.eGet(featureID, resolve, coreType);
}
@@ -225,14 +217,11 @@ public class BindingImpl extends EObjectImpl implements Binding {
@Override
public void eSet(int featureID, Object newValue) {
switch(featureID) {
- case DomaincontextcodegenPackage.BINDING__ADVICE:
- setAdvice((AdviceBinding)newValue);
+ case DomaincontextcodegenPackage.BINDING__OWNER:
+ setOwner((ElementTypeBindings)newValue);
return;
- case DomaincontextcodegenPackage.BINDING__ELEMENT_TYPE_PATTERN:
- setElementTypePattern((String)newValue);
- return;
- case DomaincontextcodegenPackage.BINDING__ADVICE_ID:
- setAdviceID((String)newValue);
+ case DomaincontextcodegenPackage.BINDING__PATTERN:
+ setPattern((String)newValue);
return;
}
super.eSet(featureID, newValue);
@@ -247,14 +236,11 @@ public class BindingImpl extends EObjectImpl implements Binding {
@Override
public void eUnset(int featureID) {
switch(featureID) {
- case DomaincontextcodegenPackage.BINDING__ADVICE:
- setAdvice((AdviceBinding)null);
- return;
- case DomaincontextcodegenPackage.BINDING__ELEMENT_TYPE_PATTERN:
- setElementTypePattern(ELEMENT_TYPE_PATTERN_EDEFAULT);
+ case DomaincontextcodegenPackage.BINDING__OWNER:
+ setOwner((ElementTypeBindings)null);
return;
- case DomaincontextcodegenPackage.BINDING__ADVICE_ID:
- setAdviceID(ADVICE_ID_EDEFAULT);
+ case DomaincontextcodegenPackage.BINDING__PATTERN:
+ setPattern(PATTERN_EDEFAULT);
return;
}
super.eUnset(featureID);
@@ -269,12 +255,10 @@ public class BindingImpl extends EObjectImpl implements Binding {
@Override
public boolean eIsSet(int featureID) {
switch(featureID) {
- case DomaincontextcodegenPackage.BINDING__ADVICE:
- return advice != null;
- case DomaincontextcodegenPackage.BINDING__ELEMENT_TYPE_PATTERN:
- return ELEMENT_TYPE_PATTERN_EDEFAULT == null ? elementTypePattern != null : !ELEMENT_TYPE_PATTERN_EDEFAULT.equals(elementTypePattern);
- case DomaincontextcodegenPackage.BINDING__ADVICE_ID:
- return ADVICE_ID_EDEFAULT == null ? adviceID != null : !ADVICE_ID_EDEFAULT.equals(adviceID);
+ case DomaincontextcodegenPackage.BINDING__OWNER:
+ return getOwner() != null;
+ case DomaincontextcodegenPackage.BINDING__PATTERN:
+ return PATTERN_EDEFAULT == null ? pattern != null : !PATTERN_EDEFAULT.equals(pattern);
}
return super.eIsSet(featureID);
}
@@ -291,10 +275,8 @@ public class BindingImpl extends EObjectImpl implements Binding {
return super.toString();
StringBuffer result = new StringBuffer(super.toString());
- result.append(" (elementTypePattern: ");
- result.append(elementTypePattern);
- result.append(", adviceID: ");
- result.append(adviceID);
+ result.append(" (pattern: ");
+ result.append(pattern);
result.append(')');
return result.toString();
}
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/CommandDeclarationImpl.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/CommandDeclarationImpl.java
new file mode 100644
index 00000000000..c1293058e3d
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/CommandDeclarationImpl.java
@@ -0,0 +1,161 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen.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.domaincontextcodegen.Command;
+import org.eclipse.papyrus.domaincontextcodegen.CommandDeclaration;
+import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Command Declaration</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.CommandDeclarationImpl#getCommands <em>Commands</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class CommandDeclarationImpl extends EObjectImpl implements CommandDeclaration {
+
+ /**
+ * The cached value of the '{@link #getCommands() <em>Commands</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getCommands()
+ * @generated
+ * @ordered
+ */
+ protected EList<Command> commands;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected CommandDeclarationImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DomaincontextcodegenPackage.Literals.COMMAND_DECLARATION;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EList<Command> getCommands() {
+ if(commands == null) {
+ commands = new EObjectContainmentEList<Command>(Command.class, this, DomaincontextcodegenPackage.COMMAND_DECLARATION__COMMANDS);
+ }
+ return commands;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.COMMAND_DECLARATION__COMMANDS:
+ return ((InternalEList<?>)getCommands()).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 DomaincontextcodegenPackage.COMMAND_DECLARATION__COMMANDS:
+ return getCommands();
+ }
+ 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 DomaincontextcodegenPackage.COMMAND_DECLARATION__COMMANDS:
+ getCommands().clear();
+ getCommands().addAll((Collection<? extends Command>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.COMMAND_DECLARATION__COMMANDS:
+ getCommands().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.COMMAND_DECLARATION__COMMANDS:
+ return commands != null && !commands.isEmpty();
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //CommandDeclarationImpl
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/CommandImpl.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/CommandImpl.java
new file mode 100644
index 00000000000..1e16821c27b
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/CommandImpl.java
@@ -0,0 +1,244 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen.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.domaincontextcodegen.Command;
+import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage;
+import org.eclipse.papyrus.domaincontextcodegen.ElementType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Command</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.CommandImpl#getElementType <em>Element Type</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.CommandImpl#getIcon <em>Icon</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class CommandImpl extends EObjectImpl implements Command {
+
+ /**
+ * The cached value of the '{@link #getElementType() <em>Element Type</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getElementType()
+ * @generated
+ * @ordered
+ */
+ protected ElementType elementType;
+
+ /**
+ * The default value of the '{@link #getIcon() <em>Icon</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getIcon()
+ * @generated
+ * @ordered
+ */
+ protected static final String ICON_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getIcon() <em>Icon</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getIcon()
+ * @generated
+ * @ordered
+ */
+ protected String icon = ICON_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected CommandImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DomaincontextcodegenPackage.Literals.COMMAND;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ElementType getElementType() {
+ if(elementType != null && elementType.eIsProxy()) {
+ InternalEObject oldElementType = (InternalEObject)elementType;
+ elementType = (ElementType)eResolveProxy(oldElementType);
+ if(elementType != oldElementType) {
+ if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DomaincontextcodegenPackage.COMMAND__ELEMENT_TYPE, oldElementType, elementType));
+ }
+ }
+ return elementType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ElementType basicGetElementType() {
+ return elementType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setElementType(ElementType newElementType) {
+ ElementType oldElementType = elementType;
+ elementType = newElementType;
+ if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.COMMAND__ELEMENT_TYPE, oldElementType, elementType));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public String getIcon() {
+ return icon;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setIcon(String newIcon) {
+ String oldIcon = icon;
+ icon = newIcon;
+ if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.COMMAND__ICON, oldIcon, icon));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.COMMAND__ELEMENT_TYPE:
+ if(resolve)
+ return getElementType();
+ return basicGetElementType();
+ case DomaincontextcodegenPackage.COMMAND__ICON:
+ return getIcon();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.COMMAND__ELEMENT_TYPE:
+ setElementType((ElementType)newValue);
+ return;
+ case DomaincontextcodegenPackage.COMMAND__ICON:
+ setIcon((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.COMMAND__ELEMENT_TYPE:
+ setElementType((ElementType)null);
+ return;
+ case DomaincontextcodegenPackage.COMMAND__ICON:
+ setIcon(ICON_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.COMMAND__ELEMENT_TYPE:
+ return elementType != null;
+ case DomaincontextcodegenPackage.COMMAND__ICON:
+ return ICON_EDEFAULT == null ? icon != null : !ICON_EDEFAULT.equals(icon);
+ }
+ 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(" (icon: ");
+ result.append(icon);
+ result.append(')');
+ return result.toString();
+ }
+
+} //CommandImpl
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/DomainContextImpl.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/DomainContextImpl.java
index 1b4484b475c..0d78c526a65 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/DomainContextImpl.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/DomainContextImpl.java
@@ -18,12 +18,14 @@ 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.domaincontextcodegen.AdviceBinding;
-import org.eclipse.papyrus.domaincontextcodegen.Binding;
+import org.eclipse.papyrus.domaincontextcodegen.Advice;
+import org.eclipse.papyrus.domaincontextcodegen.CommandDeclaration;
import org.eclipse.papyrus.domaincontextcodegen.DomainContext;
import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage;
+import org.eclipse.papyrus.domaincontextcodegen.ElementTypeBindings;
import org.eclipse.papyrus.domaincontextcodegen.ElementTypes;
import org.eclipse.papyrus.domaincontextcodegen.GenHandlers;
+import org.eclipse.papyrus.domaincontextcodegen.MenuDeclaration;
/**
* <!-- begin-user-doc -->
@@ -39,13 +41,14 @@ import org.eclipse.papyrus.domaincontextcodegen.GenHandlers;
* <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.DomainContextImpl#getSpecializationOf <em>Specialization Of</em>}</li>
* <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.DomainContextImpl#getElementTypeIDPrefix <em>Element Type ID Prefix</em>}</li>
* <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.DomainContextImpl#getElementTypeNamePrefix <em>Element Type Name Prefix</em>}</li>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.DomainContextImpl#getMatcherPatch <em>Matcher Patch</em>}</li>
* <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.DomainContextImpl#getElementTypes <em>Element Types</em>}</li>
* <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.DomainContextImpl#getDefaultHelperPath <em>Default Helper Path</em>}</li>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.DomainContextImpl#getAdvicebindings <em>Advicebindings</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.DomainContextImpl#getAdvices <em>Advices</em>}</li>
* <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.DomainContextImpl#getBindings <em>Bindings</em>}</li>
* <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.DomainContextImpl#getGenHandlers <em>Gen Handlers</em>}</li>
* <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.DomainContextImpl#getGeneratedSourceFolder <em>Generated Source Folder</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.DomainContextImpl#getMenu <em>Menu</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.DomainContextImpl#getCommand <em>Command</em>}</li>
* </ul>
* </p>
*
@@ -186,28 +189,6 @@ public class DomainContextImpl extends EObjectImpl implements DomainContext {
protected String elementTypeNamePrefix = ELEMENT_TYPE_NAME_PREFIX_EDEFAULT;
/**
- * The default value of the '{@link #getMatcherPatch() <em>Matcher Patch</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @see #getMatcherPatch()
- * @generated
- * @ordered
- */
- protected static final String MATCHER_PATCH_EDEFAULT = null;
-
- /**
- * The cached value of the '{@link #getMatcherPatch() <em>Matcher Patch</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @see #getMatcherPatch()
- * @generated
- * @ordered
- */
- protected String matcherPatch = MATCHER_PATCH_EDEFAULT;
-
- /**
* The cached value of the '{@link #getElementTypes() <em>Element Types</em>}' containment reference.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
@@ -241,15 +222,15 @@ public class DomainContextImpl extends EObjectImpl implements DomainContext {
protected String defaultHelperPath = DEFAULT_HELPER_PATH_EDEFAULT;
/**
- * The cached value of the '{@link #getAdvicebindings() <em>Advicebindings</em>}' containment reference list.
+ * The cached value of the '{@link #getAdvices() <em>Advices</em>}' containment reference list.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @see #getAdvicebindings()
+ * @see #getAdvices()
* @generated
* @ordered
*/
- protected EList<AdviceBinding> advicebindings;
+ protected EList<Advice> advices;
/**
* The cached value of the '{@link #getBindings() <em>Bindings</em>}' containment reference list.
@@ -260,7 +241,7 @@ public class DomainContextImpl extends EObjectImpl implements DomainContext {
* @generated
* @ordered
*/
- protected EList<Binding> bindings;
+ protected EList<ElementTypeBindings> bindings;
/**
* The cached value of the '{@link #getGenHandlers() <em>Gen Handlers</em>}' containment reference.
@@ -296,6 +277,28 @@ public class DomainContextImpl extends EObjectImpl implements DomainContext {
protected String generatedSourceFolder = GENERATED_SOURCE_FOLDER_EDEFAULT;
/**
+ * The cached value of the '{@link #getMenu() <em>Menu</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getMenu()
+ * @generated
+ * @ordered
+ */
+ protected EList<MenuDeclaration> menu;
+
+ /**
+ * The cached value of the '{@link #getCommand() <em>Command</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getCommand()
+ * @generated
+ * @ordered
+ */
+ protected EList<CommandDeclaration> command;
+
+ /**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
@@ -519,29 +522,6 @@ public class DomainContextImpl extends EObjectImpl implements DomainContext {
*
* @generated
*/
- public String getMatcherPatch() {
- return matcherPatch;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @generated
- */
- public void setMatcherPatch(String newMatcherPatch) {
- String oldMatcherPatch = matcherPatch;
- matcherPatch = newMatcherPatch;
- if(eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.DOMAIN_CONTEXT__MATCHER_PATCH, oldMatcherPatch, matcherPatch));
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @generated
- */
public ElementTypes getElementTypes() {
return elementTypes;
}
@@ -575,9 +555,9 @@ public class DomainContextImpl extends EObjectImpl implements DomainContext {
if(newElementTypes != elementTypes) {
NotificationChain msgs = null;
if(elementTypes != null)
- msgs = ((InternalEObject)elementTypes).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - DomaincontextcodegenPackage.DOMAIN_CONTEXT__ELEMENT_TYPES, null, msgs);
+ msgs = ((InternalEObject)elementTypes).eInverseRemove(this, DomaincontextcodegenPackage.ELEMENT_TYPES__DOMAIN, ElementTypes.class, msgs);
if(newElementTypes != null)
- msgs = ((InternalEObject)newElementTypes).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - DomaincontextcodegenPackage.DOMAIN_CONTEXT__ELEMENT_TYPES, null, msgs);
+ msgs = ((InternalEObject)newElementTypes).eInverseAdd(this, DomaincontextcodegenPackage.ELEMENT_TYPES__DOMAIN, ElementTypes.class, msgs);
msgs = basicSetElementTypes(newElementTypes, msgs);
if(msgs != null)
msgs.dispatch();
@@ -614,11 +594,11 @@ public class DomainContextImpl extends EObjectImpl implements DomainContext {
*
* @generated
*/
- public EList<AdviceBinding> getAdvicebindings() {
- if(advicebindings == null) {
- advicebindings = new EObjectContainmentEList<AdviceBinding>(AdviceBinding.class, this, DomaincontextcodegenPackage.DOMAIN_CONTEXT__ADVICEBINDINGS);
+ public EList<Advice> getAdvices() {
+ if(advices == null) {
+ advices = new EObjectContainmentEList<Advice>(Advice.class, this, DomaincontextcodegenPackage.DOMAIN_CONTEXT__ADVICES);
}
- return advicebindings;
+ return advices;
}
/**
@@ -627,9 +607,9 @@ public class DomainContextImpl extends EObjectImpl implements DomainContext {
*
* @generated
*/
- public EList<Binding> getBindings() {
+ public EList<ElementTypeBindings> getBindings() {
if(bindings == null) {
- bindings = new EObjectContainmentEList<Binding>(Binding.class, this, DomaincontextcodegenPackage.DOMAIN_CONTEXT__BINDINGS);
+ bindings = new EObjectContainmentEList<ElementTypeBindings>(ElementTypeBindings.class, this, DomaincontextcodegenPackage.DOMAIN_CONTEXT__BINDINGS);
}
return bindings;
}
@@ -712,17 +692,64 @@ public class DomainContextImpl extends EObjectImpl implements DomainContext {
*
* @generated
*/
+ public EList<MenuDeclaration> getMenu() {
+ if(menu == null) {
+ menu = new EObjectContainmentEList<MenuDeclaration>(MenuDeclaration.class, this, DomaincontextcodegenPackage.DOMAIN_CONTEXT__MENU);
+ }
+ return menu;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EList<CommandDeclaration> getCommand() {
+ if(command == null) {
+ command = new EObjectContainmentEList<CommandDeclaration>(CommandDeclaration.class, this, DomaincontextcodegenPackage.DOMAIN_CONTEXT__COMMAND);
+ }
+ return command;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.DOMAIN_CONTEXT__ELEMENT_TYPES:
+ if(elementTypes != null)
+ msgs = ((InternalEObject)elementTypes).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - DomaincontextcodegenPackage.DOMAIN_CONTEXT__ELEMENT_TYPES, null, msgs);
+ return basicSetElementTypes((ElementTypes)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 DomaincontextcodegenPackage.DOMAIN_CONTEXT__ELEMENT_TYPES:
return basicSetElementTypes(null, msgs);
- case DomaincontextcodegenPackage.DOMAIN_CONTEXT__ADVICEBINDINGS:
- return ((InternalEList<?>)getAdvicebindings()).basicRemove(otherEnd, msgs);
+ case DomaincontextcodegenPackage.DOMAIN_CONTEXT__ADVICES:
+ return ((InternalEList<?>)getAdvices()).basicRemove(otherEnd, msgs);
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__BINDINGS:
return ((InternalEList<?>)getBindings()).basicRemove(otherEnd, msgs);
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__GEN_HANDLERS:
return basicSetGenHandlers(null, msgs);
+ case DomaincontextcodegenPackage.DOMAIN_CONTEXT__MENU:
+ return ((InternalEList<?>)getMenu()).basicRemove(otherEnd, msgs);
+ case DomaincontextcodegenPackage.DOMAIN_CONTEXT__COMMAND:
+ return ((InternalEList<?>)getCommand()).basicRemove(otherEnd, msgs);
}
return super.eInverseRemove(otherEnd, featureID, msgs);
}
@@ -754,20 +781,22 @@ public class DomainContextImpl extends EObjectImpl implements DomainContext {
return getElementTypeIDPrefix();
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__ELEMENT_TYPE_NAME_PREFIX:
return getElementTypeNamePrefix();
- case DomaincontextcodegenPackage.DOMAIN_CONTEXT__MATCHER_PATCH:
- return getMatcherPatch();
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__ELEMENT_TYPES:
return getElementTypes();
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__DEFAULT_HELPER_PATH:
return getDefaultHelperPath();
- case DomaincontextcodegenPackage.DOMAIN_CONTEXT__ADVICEBINDINGS:
- return getAdvicebindings();
+ case DomaincontextcodegenPackage.DOMAIN_CONTEXT__ADVICES:
+ return getAdvices();
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__BINDINGS:
return getBindings();
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__GEN_HANDLERS:
return getGenHandlers();
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__GENERATED_SOURCE_FOLDER:
return getGeneratedSourceFolder();
+ case DomaincontextcodegenPackage.DOMAIN_CONTEXT__MENU:
+ return getMenu();
+ case DomaincontextcodegenPackage.DOMAIN_CONTEXT__COMMAND:
+ return getCommand();
}
return super.eGet(featureID, resolve, coreType);
}
@@ -803,22 +832,19 @@ public class DomainContextImpl extends EObjectImpl implements DomainContext {
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__ELEMENT_TYPE_NAME_PREFIX:
setElementTypeNamePrefix((String)newValue);
return;
- case DomaincontextcodegenPackage.DOMAIN_CONTEXT__MATCHER_PATCH:
- setMatcherPatch((String)newValue);
- return;
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__ELEMENT_TYPES:
setElementTypes((ElementTypes)newValue);
return;
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__DEFAULT_HELPER_PATH:
setDefaultHelperPath((String)newValue);
return;
- case DomaincontextcodegenPackage.DOMAIN_CONTEXT__ADVICEBINDINGS:
- getAdvicebindings().clear();
- getAdvicebindings().addAll((Collection<? extends AdviceBinding>)newValue);
+ case DomaincontextcodegenPackage.DOMAIN_CONTEXT__ADVICES:
+ getAdvices().clear();
+ getAdvices().addAll((Collection<? extends Advice>)newValue);
return;
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__BINDINGS:
getBindings().clear();
- getBindings().addAll((Collection<? extends Binding>)newValue);
+ getBindings().addAll((Collection<? extends ElementTypeBindings>)newValue);
return;
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__GEN_HANDLERS:
setGenHandlers((GenHandlers)newValue);
@@ -826,6 +852,14 @@ public class DomainContextImpl extends EObjectImpl implements DomainContext {
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__GENERATED_SOURCE_FOLDER:
setGeneratedSourceFolder((String)newValue);
return;
+ case DomaincontextcodegenPackage.DOMAIN_CONTEXT__MENU:
+ getMenu().clear();
+ getMenu().addAll((Collection<? extends MenuDeclaration>)newValue);
+ return;
+ case DomaincontextcodegenPackage.DOMAIN_CONTEXT__COMMAND:
+ getCommand().clear();
+ getCommand().addAll((Collection<? extends CommandDeclaration>)newValue);
+ return;
}
super.eSet(featureID, newValue);
}
@@ -860,17 +894,14 @@ public class DomainContextImpl extends EObjectImpl implements DomainContext {
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__ELEMENT_TYPE_NAME_PREFIX:
setElementTypeNamePrefix(ELEMENT_TYPE_NAME_PREFIX_EDEFAULT);
return;
- case DomaincontextcodegenPackage.DOMAIN_CONTEXT__MATCHER_PATCH:
- setMatcherPatch(MATCHER_PATCH_EDEFAULT);
- return;
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__ELEMENT_TYPES:
setElementTypes((ElementTypes)null);
return;
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__DEFAULT_HELPER_PATH:
setDefaultHelperPath(DEFAULT_HELPER_PATH_EDEFAULT);
return;
- case DomaincontextcodegenPackage.DOMAIN_CONTEXT__ADVICEBINDINGS:
- getAdvicebindings().clear();
+ case DomaincontextcodegenPackage.DOMAIN_CONTEXT__ADVICES:
+ getAdvices().clear();
return;
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__BINDINGS:
getBindings().clear();
@@ -881,6 +912,12 @@ public class DomainContextImpl extends EObjectImpl implements DomainContext {
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__GENERATED_SOURCE_FOLDER:
setGeneratedSourceFolder(GENERATED_SOURCE_FOLDER_EDEFAULT);
return;
+ case DomaincontextcodegenPackage.DOMAIN_CONTEXT__MENU:
+ getMenu().clear();
+ return;
+ case DomaincontextcodegenPackage.DOMAIN_CONTEXT__COMMAND:
+ getCommand().clear();
+ return;
}
super.eUnset(featureID);
}
@@ -908,20 +945,22 @@ public class DomainContextImpl extends EObjectImpl implements DomainContext {
return ELEMENT_TYPE_ID_PREFIX_EDEFAULT == null ? elementTypeIDPrefix != null : !ELEMENT_TYPE_ID_PREFIX_EDEFAULT.equals(elementTypeIDPrefix);
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__ELEMENT_TYPE_NAME_PREFIX:
return ELEMENT_TYPE_NAME_PREFIX_EDEFAULT == null ? elementTypeNamePrefix != null : !ELEMENT_TYPE_NAME_PREFIX_EDEFAULT.equals(elementTypeNamePrefix);
- case DomaincontextcodegenPackage.DOMAIN_CONTEXT__MATCHER_PATCH:
- return MATCHER_PATCH_EDEFAULT == null ? matcherPatch != null : !MATCHER_PATCH_EDEFAULT.equals(matcherPatch);
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__ELEMENT_TYPES:
return elementTypes != null;
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__DEFAULT_HELPER_PATH:
return DEFAULT_HELPER_PATH_EDEFAULT == null ? defaultHelperPath != null : !DEFAULT_HELPER_PATH_EDEFAULT.equals(defaultHelperPath);
- case DomaincontextcodegenPackage.DOMAIN_CONTEXT__ADVICEBINDINGS:
- return advicebindings != null && !advicebindings.isEmpty();
+ case DomaincontextcodegenPackage.DOMAIN_CONTEXT__ADVICES:
+ return advices != null && !advices.isEmpty();
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__BINDINGS:
return bindings != null && !bindings.isEmpty();
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__GEN_HANDLERS:
return genHandlers != null;
case DomaincontextcodegenPackage.DOMAIN_CONTEXT__GENERATED_SOURCE_FOLDER:
return GENERATED_SOURCE_FOLDER_EDEFAULT == null ? generatedSourceFolder != null : !GENERATED_SOURCE_FOLDER_EDEFAULT.equals(generatedSourceFolder);
+ case DomaincontextcodegenPackage.DOMAIN_CONTEXT__MENU:
+ return menu != null && !menu.isEmpty();
+ case DomaincontextcodegenPackage.DOMAIN_CONTEXT__COMMAND:
+ return command != null && !command.isEmpty();
}
return super.eIsSet(featureID);
}
@@ -948,8 +987,6 @@ public class DomainContextImpl extends EObjectImpl implements DomainContext {
result.append(elementTypeIDPrefix);
result.append(", elementTypeNamePrefix: ");
result.append(elementTypeNamePrefix);
- result.append(", matcherPatch: ");
- result.append(matcherPatch);
result.append(", defaultHelperPath: ");
result.append(defaultHelperPath);
result.append(", generatedSourceFolder: ");
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/DomaincontextcodegenFactoryImpl.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/DomaincontextcodegenFactoryImpl.java
index 302940d5f26..3ce9d717561 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/DomaincontextcodegenFactoryImpl.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/DomaincontextcodegenFactoryImpl.java
@@ -12,15 +12,23 @@ 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.domaincontextcodegen.Advice;
import org.eclipse.papyrus.domaincontextcodegen.AdviceBinding;
-import org.eclipse.papyrus.domaincontextcodegen.Binding;
+import org.eclipse.papyrus.domaincontextcodegen.Command;
+import org.eclipse.papyrus.domaincontextcodegen.CommandDeclaration;
import org.eclipse.papyrus.domaincontextcodegen.DomainContext;
import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenFactory;
import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage;
-import org.eclipse.papyrus.domaincontextcodegen.ElementType;
+import org.eclipse.papyrus.domaincontextcodegen.ElementTypeBinding;
+import org.eclipse.papyrus.domaincontextcodegen.ElementTypeBindings;
import org.eclipse.papyrus.domaincontextcodegen.ElementTypes;
import org.eclipse.papyrus.domaincontextcodegen.GenHandlers;
import org.eclipse.papyrus.domaincontextcodegen.InheritanceKind;
+import org.eclipse.papyrus.domaincontextcodegen.MenuDeclaration;
+import org.eclipse.papyrus.domaincontextcodegen.MetaClassType;
+import org.eclipse.papyrus.domaincontextcodegen.SpecializationType;
+import org.eclipse.papyrus.domaincontextcodegen.StereotypedElementHelper;
+import org.eclipse.papyrus.domaincontextcodegen.StereotypedElementMatcher;
/**
* <!-- begin-user-doc -->
@@ -74,14 +82,30 @@ public class DomaincontextcodegenFactoryImpl extends EFactoryImpl implements Dom
return createDomainContext();
case DomaincontextcodegenPackage.ELEMENT_TYPES:
return createElementTypes();
- case DomaincontextcodegenPackage.ELEMENT_TYPE:
- return createElementType();
+ case DomaincontextcodegenPackage.META_CLASS_TYPE:
+ return createMetaClassType();
+ case DomaincontextcodegenPackage.SPECIALIZATION_TYPE:
+ return createSpecializationType();
+ case DomaincontextcodegenPackage.ADVICE:
+ return createAdvice();
+ case DomaincontextcodegenPackage.ELEMENT_TYPE_BINDINGS:
+ return createElementTypeBindings();
+ case DomaincontextcodegenPackage.ELEMENT_TYPE_BINDING:
+ return createElementTypeBinding();
case DomaincontextcodegenPackage.ADVICE_BINDING:
return createAdviceBinding();
- case DomaincontextcodegenPackage.BINDING:
- return createBinding();
case DomaincontextcodegenPackage.GEN_HANDLERS:
return createGenHandlers();
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_MATCHER:
+ return createStereotypedElementMatcher();
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_HELPER:
+ return createStereotypedElementHelper();
+ case DomaincontextcodegenPackage.MENU_DECLARATION:
+ return createMenuDeclaration();
+ case DomaincontextcodegenPackage.COMMAND_DECLARATION:
+ return createCommandDeclaration();
+ case DomaincontextcodegenPackage.COMMAND:
+ return createCommand();
default:
throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
}
@@ -147,9 +171,9 @@ public class DomaincontextcodegenFactoryImpl extends EFactoryImpl implements Dom
*
* @generated
*/
- public ElementType createElementType() {
- ElementTypeImpl elementType = new ElementTypeImpl();
- return elementType;
+ public MetaClassType createMetaClassType() {
+ MetaClassTypeImpl metaClassType = new MetaClassTypeImpl();
+ return metaClassType;
}
/**
@@ -158,9 +182,20 @@ public class DomaincontextcodegenFactoryImpl extends EFactoryImpl implements Dom
*
* @generated
*/
- public AdviceBinding createAdviceBinding() {
- AdviceBindingImpl adviceBinding = new AdviceBindingImpl();
- return adviceBinding;
+ public SpecializationType createSpecializationType() {
+ SpecializationTypeImpl specializationType = new SpecializationTypeImpl();
+ return specializationType;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public Advice createAdvice() {
+ AdviceImpl advice = new AdviceImpl();
+ return advice;
}
/**
@@ -169,9 +204,31 @@ public class DomaincontextcodegenFactoryImpl extends EFactoryImpl implements Dom
*
* @generated
*/
- public Binding createBinding() {
- BindingImpl binding = new BindingImpl();
- return binding;
+ public ElementTypeBindings createElementTypeBindings() {
+ ElementTypeBindingsImpl elementTypeBindings = new ElementTypeBindingsImpl();
+ return elementTypeBindings;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ElementTypeBinding createElementTypeBinding() {
+ ElementTypeBindingImpl elementTypeBinding = new ElementTypeBindingImpl();
+ return elementTypeBinding;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public AdviceBinding createAdviceBinding() {
+ AdviceBindingImpl adviceBinding = new AdviceBindingImpl();
+ return adviceBinding;
}
/**
@@ -191,6 +248,61 @@ public class DomaincontextcodegenFactoryImpl extends EFactoryImpl implements Dom
*
* @generated
*/
+ public StereotypedElementMatcher createStereotypedElementMatcher() {
+ StereotypedElementMatcherImpl stereotypedElementMatcher = new StereotypedElementMatcherImpl();
+ return stereotypedElementMatcher;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public StereotypedElementHelper createStereotypedElementHelper() {
+ StereotypedElementHelperImpl stereotypedElementHelper = new StereotypedElementHelperImpl();
+ return stereotypedElementHelper;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public MenuDeclaration createMenuDeclaration() {
+ MenuDeclarationImpl menuDeclaration = new MenuDeclarationImpl();
+ return menuDeclaration;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public CommandDeclaration createCommandDeclaration() {
+ CommandDeclarationImpl commandDeclaration = new CommandDeclarationImpl();
+ return commandDeclaration;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public Command createCommand() {
+ CommandImpl command = new CommandImpl();
+ return command;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
public InheritanceKind createInheritanceKindFromString(EDataType eDataType, String initialValue) {
InheritanceKind result = InheritanceKind.get(initialValue);
if(result == null)
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/DomaincontextcodegenPackageImpl.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/DomaincontextcodegenPackageImpl.java
index 9c731fb89c8..8deaf37093c 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/DomaincontextcodegenPackageImpl.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/DomaincontextcodegenPackageImpl.java
@@ -13,15 +13,27 @@ 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.domaincontextcodegen.Advice;
import org.eclipse.papyrus.domaincontextcodegen.AdviceBinding;
import org.eclipse.papyrus.domaincontextcodegen.Binding;
+import org.eclipse.papyrus.domaincontextcodegen.Command;
+import org.eclipse.papyrus.domaincontextcodegen.CommandDeclaration;
import org.eclipse.papyrus.domaincontextcodegen.DomainContext;
import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenFactory;
import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage;
import org.eclipse.papyrus.domaincontextcodegen.ElementType;
+import org.eclipse.papyrus.domaincontextcodegen.ElementTypeBinding;
+import org.eclipse.papyrus.domaincontextcodegen.ElementTypeBindings;
import org.eclipse.papyrus.domaincontextcodegen.ElementTypes;
import org.eclipse.papyrus.domaincontextcodegen.GenHandlers;
+import org.eclipse.papyrus.domaincontextcodegen.GenHelper;
+import org.eclipse.papyrus.domaincontextcodegen.GenMatcher;
import org.eclipse.papyrus.domaincontextcodegen.InheritanceKind;
+import org.eclipse.papyrus.domaincontextcodegen.MenuDeclaration;
+import org.eclipse.papyrus.domaincontextcodegen.MetaClassType;
+import org.eclipse.papyrus.domaincontextcodegen.SpecializationType;
+import org.eclipse.papyrus.domaincontextcodegen.StereotypedElementHelper;
+import org.eclipse.papyrus.domaincontextcodegen.StereotypedElementMatcher;
/**
* <!-- begin-user-doc -->
@@ -62,6 +74,38 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
*
* @generated
*/
+ private EClass metaClassTypeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass specializationTypeEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass adviceEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass elementTypeBindingsEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
private EClass adviceBindingEClass = null;
/**
@@ -78,6 +122,14 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
*
* @generated
*/
+ private EClass elementTypeBindingEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
private EClass genHandlersEClass = null;
/**
@@ -86,6 +138,62 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
*
* @generated
*/
+ private EClass genMatcherEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass genHelperEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass stereotypedElementMatcherEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass stereotypedElementHelperEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass menuDeclarationEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass commandDeclarationEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ private EClass commandEClass = null;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
private EEnum inheritanceKindEEnum = null;
/**
@@ -146,7 +254,6 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
// Mark meta-data to indicate it can't be changed
theDomaincontextcodegenPackage.freeze();
-
// Update the registry and return the package
EPackage.Registry.INSTANCE.put(DomaincontextcodegenPackage.eNS_URI, theDomaincontextcodegenPackage);
return theDomaincontextcodegenPackage;
@@ -238,8 +345,8 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
*
* @generated
*/
- public EAttribute getDomainContext_MatcherPatch() {
- return (EAttribute)domainContextEClass.getEStructuralFeatures().get(7);
+ public EReference getDomainContext_ElementTypes() {
+ return (EReference)domainContextEClass.getEStructuralFeatures().get(7);
}
/**
@@ -248,8 +355,8 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
*
* @generated
*/
- public EReference getDomainContext_ElementTypes() {
- return (EReference)domainContextEClass.getEStructuralFeatures().get(8);
+ public EAttribute getDomainContext_DefaultHelperPath() {
+ return (EAttribute)domainContextEClass.getEStructuralFeatures().get(8);
}
/**
@@ -258,8 +365,8 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
*
* @generated
*/
- public EAttribute getDomainContext_DefaultHelperPath() {
- return (EAttribute)domainContextEClass.getEStructuralFeatures().get(9);
+ public EReference getDomainContext_Advices() {
+ return (EReference)domainContextEClass.getEStructuralFeatures().get(9);
}
/**
@@ -268,7 +375,7 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
*
* @generated
*/
- public EReference getDomainContext_Advicebindings() {
+ public EReference getDomainContext_Bindings() {
return (EReference)domainContextEClass.getEStructuralFeatures().get(10);
}
@@ -278,7 +385,7 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
*
* @generated
*/
- public EReference getDomainContext_Bindings() {
+ public EReference getDomainContext_GenHandlers() {
return (EReference)domainContextEClass.getEStructuralFeatures().get(11);
}
@@ -288,8 +395,8 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
*
* @generated
*/
- public EReference getDomainContext_GenHandlers() {
- return (EReference)domainContextEClass.getEStructuralFeatures().get(12);
+ public EAttribute getDomainContext_GeneratedSourceFolder() {
+ return (EAttribute)domainContextEClass.getEStructuralFeatures().get(12);
}
/**
@@ -298,8 +405,18 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
*
* @generated
*/
- public EAttribute getDomainContext_GeneratedSourceFolder() {
- return (EAttribute)domainContextEClass.getEStructuralFeatures().get(13);
+ public EReference getDomainContext_Menu() {
+ return (EReference)domainContextEClass.getEStructuralFeatures().get(13);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EReference getDomainContext_Command() {
+ return (EReference)domainContextEClass.getEStructuralFeatures().get(14);
}
/**
@@ -328,6 +445,16 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
*
* @generated
*/
+ public EReference getElementTypes_Domain() {
+ return (EReference)elementTypesEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
public EClass getElementType() {
return elementTypeEClass;
}
@@ -338,8 +465,8 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
*
* @generated
*/
- public EReference getElementType_MetaClass() {
- return (EReference)elementTypeEClass.getEStructuralFeatures().get(0);
+ public EAttribute getElementType_Name() {
+ return (EAttribute)elementTypeEClass.getEStructuralFeatures().get(0);
}
/**
@@ -348,7 +475,7 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
*
* @generated
*/
- public EAttribute getElementType_SpecificName() {
+ public EAttribute getElementType_Helper() {
return (EAttribute)elementTypeEClass.getEStructuralFeatures().get(1);
}
@@ -358,8 +485,8 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
*
* @generated
*/
- public EAttribute getElementType_Edithelper_EditHelperAdvicePath() {
- return (EAttribute)elementTypeEClass.getEStructuralFeatures().get(2);
+ public EReference getElementType_Owner() {
+ return (EReference)elementTypeEClass.getEStructuralFeatures().get(2);
}
/**
@@ -368,7 +495,7 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
*
* @generated
*/
- public EAttribute getElementType_Kind() {
+ public EAttribute getElementType_Icon() {
return (EAttribute)elementTypeEClass.getEStructuralFeatures().get(3);
}
@@ -378,8 +505,8 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
*
* @generated
*/
- public EReference getElementType_Specializationof() {
- return (EReference)elementTypeEClass.getEStructuralFeatures().get(4);
+ public EClass getMetaClassType() {
+ return metaClassTypeEClass;
}
/**
@@ -388,8 +515,8 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
*
* @generated
*/
- public EAttribute getElementType_SpecializationIDof() {
- return (EAttribute)elementTypeEClass.getEStructuralFeatures().get(5);
+ public EReference getMetaClassType_MetaClass() {
+ return (EReference)metaClassTypeEClass.getEStructuralFeatures().get(0);
}
/**
@@ -398,8 +525,98 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
*
* @generated
*/
- public EClass getAdviceBinding() {
- return adviceBindingEClass;
+ public EClass getSpecializationType() {
+ return specializationTypeEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EReference getSpecializationType_Ref() {
+ return (EReference)specializationTypeEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EAttribute getSpecializationType_Matcher() {
+ return (EAttribute)specializationTypeEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EReference getSpecializationType_GenMatcher() {
+ return (EReference)specializationTypeEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EReference getSpecializationType_GenHelper() {
+ return (EReference)specializationTypeEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EClass getAdvice() {
+ return adviceEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EAttribute getAdvice_AdviceID() {
+ return (EAttribute)adviceEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EReference getAdvice_Ref() {
+ return (EReference)adviceEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EAttribute getAdvice_AdvicePath() {
+ return (EAttribute)adviceEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EAttribute getAdvice_Inheritance() {
+ return (EAttribute)adviceEClass.getEStructuralFeatures().get(3);
}
/**
@@ -408,8 +625,8 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
*
* @generated
*/
- public EAttribute getAdviceBinding_AdvicePath() {
- return (EAttribute)adviceBindingEClass.getEStructuralFeatures().get(0);
+ public EClass getElementTypeBindings() {
+ return elementTypeBindingsEClass;
}
/**
@@ -418,8 +635,8 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
*
* @generated
*/
- public EAttribute getAdviceBinding_AdviceID() {
- return (EAttribute)adviceBindingEClass.getEStructuralFeatures().get(1);
+ public EAttribute getElementTypeBindings_ClientContextID() {
+ return (EAttribute)elementTypeBindingsEClass.getEStructuralFeatures().get(0);
}
/**
@@ -428,8 +645,8 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
*
* @generated
*/
- public EAttribute getAdviceBinding_Inheritance() {
- return (EAttribute)adviceBindingEClass.getEStructuralFeatures().get(2);
+ public EReference getElementTypeBindings_Bindings() {
+ return (EReference)elementTypeBindingsEClass.getEStructuralFeatures().get(1);
}
/**
@@ -438,8 +655,8 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
*
* @generated
*/
- public EReference getAdviceBinding_ElementTypeRef() {
- return (EReference)adviceBindingEClass.getEStructuralFeatures().get(3);
+ public EClass getAdviceBinding() {
+ return adviceBindingEClass;
}
/**
@@ -448,8 +665,8 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
*
* @generated
*/
- public EAttribute getAdviceBinding_ElementTypeIDref() {
- return (EAttribute)adviceBindingEClass.getEStructuralFeatures().get(4);
+ public EReference getAdviceBinding_Ref() {
+ return (EReference)adviceBindingEClass.getEStructuralFeatures().get(0);
}
/**
@@ -468,7 +685,7 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
*
* @generated
*/
- public EReference getBinding_Advice() {
+ public EReference getBinding_Owner() {
return (EReference)bindingEClass.getEStructuralFeatures().get(0);
}
@@ -478,7 +695,7 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
*
* @generated
*/
- public EAttribute getBinding_ElementTypePattern() {
+ public EAttribute getBinding_Pattern() {
return (EAttribute)bindingEClass.getEStructuralFeatures().get(1);
}
@@ -488,8 +705,18 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
*
* @generated
*/
- public EAttribute getBinding_AdviceID() {
- return (EAttribute)bindingEClass.getEStructuralFeatures().get(2);
+ public EClass getElementTypeBinding() {
+ return elementTypeBindingEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EReference getElementTypeBinding_Ref() {
+ return (EReference)elementTypeBindingEClass.getEStructuralFeatures().get(0);
}
/**
@@ -558,6 +785,256 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
*
* @generated
*/
+ public EReference getGenHandlers_VisibleCreateChildHandlers() {
+ return (EReference)genHandlersEClass.getEStructuralFeatures().get(5);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EReference getGenHandlers_ParentDomainCreateChild() {
+ return (EReference)genHandlersEClass.getEStructuralFeatures().get(6);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EAttribute getGenHandlers_CreateChildMenuLocationURI() {
+ return (EAttribute)genHandlersEClass.getEStructuralFeatures().get(7);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EClass getGenMatcher() {
+ return genMatcherEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EAttribute getGenMatcher_Name() {
+ return (EAttribute)genMatcherEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EClass getGenHelper() {
+ return genHelperEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EAttribute getGenHelper_Name() {
+ return (EAttribute)genHelperEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EClass getStereotypedElementMatcher() {
+ return stereotypedElementMatcherEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EAttribute getStereotypedElementMatcher_StereotypeName() {
+ return (EAttribute)stereotypedElementMatcherEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EAttribute getStereotypedElementMatcher_StereotypePackage() {
+ return (EAttribute)stereotypedElementMatcherEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EAttribute getStereotypedElementMatcher_BaseElementName() {
+ return (EAttribute)stereotypedElementMatcherEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EAttribute getStereotypedElementMatcher_BaseElementPackage() {
+ return (EAttribute)stereotypedElementMatcherEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EClass getStereotypedElementHelper() {
+ return stereotypedElementHelperEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EAttribute getStereotypedElementHelper_StereotypeName() {
+ return (EAttribute)stereotypedElementHelperEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EAttribute getStereotypedElementHelper_StereotypePackage() {
+ return (EAttribute)stereotypedElementHelperEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EAttribute getStereotypedElementHelper_BaseElementName() {
+ return (EAttribute)stereotypedElementHelperEClass.getEStructuralFeatures().get(2);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EAttribute getStereotypedElementHelper_BaseElementPackage() {
+ return (EAttribute)stereotypedElementHelperEClass.getEStructuralFeatures().get(3);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EClass getMenuDeclaration() {
+ return menuDeclarationEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EAttribute getMenuDeclaration_LocationURI() {
+ return (EAttribute)menuDeclarationEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EReference getMenuDeclaration_Commands() {
+ return (EReference)menuDeclarationEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EClass getCommandDeclaration() {
+ return commandDeclarationEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EReference getCommandDeclaration_Commands() {
+ return (EReference)commandDeclarationEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EClass getCommand() {
+ return commandEClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EReference getCommand_ElementType() {
+ return (EReference)commandEClass.getEStructuralFeatures().get(0);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EAttribute getCommand_Icon() {
+ return (EAttribute)commandEClass.getEStructuralFeatures().get(1);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
public EEnum getInheritanceKind() {
return inheritanceKindEEnum;
}
@@ -602,36 +1079,53 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
createEReference(domainContextEClass, DOMAIN_CONTEXT__SPECIALIZATION_OF);
createEAttribute(domainContextEClass, DOMAIN_CONTEXT__ELEMENT_TYPE_ID_PREFIX);
createEAttribute(domainContextEClass, DOMAIN_CONTEXT__ELEMENT_TYPE_NAME_PREFIX);
- createEAttribute(domainContextEClass, DOMAIN_CONTEXT__MATCHER_PATCH);
createEReference(domainContextEClass, DOMAIN_CONTEXT__ELEMENT_TYPES);
createEAttribute(domainContextEClass, DOMAIN_CONTEXT__DEFAULT_HELPER_PATH);
- createEReference(domainContextEClass, DOMAIN_CONTEXT__ADVICEBINDINGS);
+ createEReference(domainContextEClass, DOMAIN_CONTEXT__ADVICES);
createEReference(domainContextEClass, DOMAIN_CONTEXT__BINDINGS);
createEReference(domainContextEClass, DOMAIN_CONTEXT__GEN_HANDLERS);
createEAttribute(domainContextEClass, DOMAIN_CONTEXT__GENERATED_SOURCE_FOLDER);
+ createEReference(domainContextEClass, DOMAIN_CONTEXT__MENU);
+ createEReference(domainContextEClass, DOMAIN_CONTEXT__COMMAND);
elementTypesEClass = createEClass(ELEMENT_TYPES);
createEReference(elementTypesEClass, ELEMENT_TYPES__TYPES);
+ createEReference(elementTypesEClass, ELEMENT_TYPES__DOMAIN);
elementTypeEClass = createEClass(ELEMENT_TYPE);
- createEReference(elementTypeEClass, ELEMENT_TYPE__META_CLASS);
- createEAttribute(elementTypeEClass, ELEMENT_TYPE__SPECIFIC_NAME);
- createEAttribute(elementTypeEClass, ELEMENT_TYPE__EDITHELPER_EDIT_HELPER_ADVICE_PATH);
- createEAttribute(elementTypeEClass, ELEMENT_TYPE__KIND);
- createEReference(elementTypeEClass, ELEMENT_TYPE__SPECIALIZATIONOF);
- createEAttribute(elementTypeEClass, ELEMENT_TYPE__SPECIALIZATION_IDOF);
-
- adviceBindingEClass = createEClass(ADVICE_BINDING);
- createEAttribute(adviceBindingEClass, ADVICE_BINDING__ADVICE_PATH);
- createEAttribute(adviceBindingEClass, ADVICE_BINDING__ADVICE_ID);
- createEAttribute(adviceBindingEClass, ADVICE_BINDING__INHERITANCE);
- createEReference(adviceBindingEClass, ADVICE_BINDING__ELEMENT_TYPE_REF);
- createEAttribute(adviceBindingEClass, ADVICE_BINDING__ELEMENT_TYPE_IDREF);
+ createEAttribute(elementTypeEClass, ELEMENT_TYPE__NAME);
+ createEAttribute(elementTypeEClass, ELEMENT_TYPE__HELPER);
+ createEReference(elementTypeEClass, ELEMENT_TYPE__OWNER);
+ createEAttribute(elementTypeEClass, ELEMENT_TYPE__ICON);
+
+ metaClassTypeEClass = createEClass(META_CLASS_TYPE);
+ createEReference(metaClassTypeEClass, META_CLASS_TYPE__META_CLASS);
+
+ specializationTypeEClass = createEClass(SPECIALIZATION_TYPE);
+ createEReference(specializationTypeEClass, SPECIALIZATION_TYPE__REF);
+ createEAttribute(specializationTypeEClass, SPECIALIZATION_TYPE__MATCHER);
+ createEReference(specializationTypeEClass, SPECIALIZATION_TYPE__GEN_MATCHER);
+ createEReference(specializationTypeEClass, SPECIALIZATION_TYPE__GEN_HELPER);
+
+ adviceEClass = createEClass(ADVICE);
+ createEAttribute(adviceEClass, ADVICE__ADVICE_ID);
+ createEReference(adviceEClass, ADVICE__REF);
+ createEAttribute(adviceEClass, ADVICE__ADVICE_PATH);
+ createEAttribute(adviceEClass, ADVICE__INHERITANCE);
+
+ elementTypeBindingsEClass = createEClass(ELEMENT_TYPE_BINDINGS);
+ createEAttribute(elementTypeBindingsEClass, ELEMENT_TYPE_BINDINGS__CLIENT_CONTEXT_ID);
+ createEReference(elementTypeBindingsEClass, ELEMENT_TYPE_BINDINGS__BINDINGS);
bindingEClass = createEClass(BINDING);
- createEReference(bindingEClass, BINDING__ADVICE);
- createEAttribute(bindingEClass, BINDING__ELEMENT_TYPE_PATTERN);
- createEAttribute(bindingEClass, BINDING__ADVICE_ID);
+ createEReference(bindingEClass, BINDING__OWNER);
+ createEAttribute(bindingEClass, BINDING__PATTERN);
+
+ elementTypeBindingEClass = createEClass(ELEMENT_TYPE_BINDING);
+ createEReference(elementTypeBindingEClass, ELEMENT_TYPE_BINDING__REF);
+
+ adviceBindingEClass = createEClass(ADVICE_BINDING);
+ createEReference(adviceBindingEClass, ADVICE_BINDING__REF);
genHandlersEClass = createEClass(GEN_HANDLERS);
createEAttribute(genHandlersEClass, GEN_HANDLERS__HANDLER_PACKAGE);
@@ -639,6 +1133,38 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
createEAttribute(genHandlersEClass, GEN_HANDLERS__SUPER_CLASS_PACKAGE);
createEAttribute(genHandlersEClass, GEN_HANDLERS__ELEMENT_TYPE_ENUMERATOR);
createEAttribute(genHandlersEClass, GEN_HANDLERS__ELEMENT_TYPE_ENUMERATOR_PACKAGE);
+ createEReference(genHandlersEClass, GEN_HANDLERS__VISIBLE_CREATE_CHILD_HANDLERS);
+ createEReference(genHandlersEClass, GEN_HANDLERS__PARENT_DOMAIN_CREATE_CHILD);
+ createEAttribute(genHandlersEClass, GEN_HANDLERS__CREATE_CHILD_MENU_LOCATION_URI);
+
+ genMatcherEClass = createEClass(GEN_MATCHER);
+ createEAttribute(genMatcherEClass, GEN_MATCHER__NAME);
+
+ genHelperEClass = createEClass(GEN_HELPER);
+ createEAttribute(genHelperEClass, GEN_HELPER__NAME);
+
+ stereotypedElementMatcherEClass = createEClass(STEREOTYPED_ELEMENT_MATCHER);
+ createEAttribute(stereotypedElementMatcherEClass, STEREOTYPED_ELEMENT_MATCHER__STEREOTYPE_NAME);
+ createEAttribute(stereotypedElementMatcherEClass, STEREOTYPED_ELEMENT_MATCHER__STEREOTYPE_PACKAGE);
+ createEAttribute(stereotypedElementMatcherEClass, STEREOTYPED_ELEMENT_MATCHER__BASE_ELEMENT_NAME);
+ createEAttribute(stereotypedElementMatcherEClass, STEREOTYPED_ELEMENT_MATCHER__BASE_ELEMENT_PACKAGE);
+
+ stereotypedElementHelperEClass = createEClass(STEREOTYPED_ELEMENT_HELPER);
+ createEAttribute(stereotypedElementHelperEClass, STEREOTYPED_ELEMENT_HELPER__STEREOTYPE_NAME);
+ createEAttribute(stereotypedElementHelperEClass, STEREOTYPED_ELEMENT_HELPER__STEREOTYPE_PACKAGE);
+ createEAttribute(stereotypedElementHelperEClass, STEREOTYPED_ELEMENT_HELPER__BASE_ELEMENT_NAME);
+ createEAttribute(stereotypedElementHelperEClass, STEREOTYPED_ELEMENT_HELPER__BASE_ELEMENT_PACKAGE);
+
+ menuDeclarationEClass = createEClass(MENU_DECLARATION);
+ createEAttribute(menuDeclarationEClass, MENU_DECLARATION__LOCATION_URI);
+ createEReference(menuDeclarationEClass, MENU_DECLARATION__COMMANDS);
+
+ commandDeclarationEClass = createEClass(COMMAND_DECLARATION);
+ createEReference(commandDeclarationEClass, COMMAND_DECLARATION__COMMANDS);
+
+ commandEClass = createEClass(COMMAND);
+ createEReference(commandEClass, COMMAND__ELEMENT_TYPE);
+ createEAttribute(commandEClass, COMMAND__ICON);
// Create enums
inheritanceKindEEnum = createEEnum(INHERITANCE_KIND);
@@ -670,11 +1196,20 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
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
+ metaClassTypeEClass.getESuperTypes().add(this.getElementType());
+ specializationTypeEClass.getESuperTypes().add(this.getElementType());
+ elementTypeBindingEClass.getESuperTypes().add(this.getBinding());
+ adviceBindingEClass.getESuperTypes().add(this.getBinding());
+ stereotypedElementMatcherEClass.getESuperTypes().add(this.getGenMatcher());
+ stereotypedElementHelperEClass.getESuperTypes().add(this.getGenHelper());
// Initialize classes and features; add operations and parameters
initEClass(domainContextEClass, DomainContext.class, "DomainContext", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
@@ -685,36 +1220,53 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
initEReference(getDomainContext_SpecializationOf(), this.getDomainContext(), null, "specializationOf", null, 0, 1, DomainContext.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getDomainContext_ElementTypeIDPrefix(), ecorePackage.getEString(), "elementTypeIDPrefix", null, 1, 1, DomainContext.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getDomainContext_ElementTypeNamePrefix(), ecorePackage.getEString(), "elementTypeNamePrefix", null, 1, 1, DomainContext.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEAttribute(getDomainContext_MatcherPatch(), ecorePackage.getEString(), "matcherPatch", null, 1, 1, DomainContext.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEReference(getDomainContext_ElementTypes(), this.getElementTypes(), null, "elementTypes", null, 0, 1, DomainContext.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDomainContext_ElementTypes(), this.getElementTypes(), this.getElementTypes_Domain(), "elementTypes", null, 0, 1, DomainContext.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getDomainContext_DefaultHelperPath(), ecorePackage.getEString(), "defaultHelperPath", null, 1, 1, DomainContext.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEReference(getDomainContext_Advicebindings(), this.getAdviceBinding(), null, "advicebindings", null, 0, -1, DomainContext.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEReference(getDomainContext_Bindings(), this.getBinding(), null, "bindings", null, 0, -1, DomainContext.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDomainContext_Advices(), this.getAdvice(), null, "advices", null, 0, -1, DomainContext.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDomainContext_Bindings(), this.getElementTypeBindings(), null, "bindings", null, 0, -1, DomainContext.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEReference(getDomainContext_GenHandlers(), this.getGenHandlers(), null, "genHandlers", null, 0, 1, DomainContext.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getDomainContext_GeneratedSourceFolder(), ecorePackage.getEString(), "generatedSourceFolder", null, 1, 1, DomainContext.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDomainContext_Menu(), this.getMenuDeclaration(), null, "menu", null, 0, -1, DomainContext.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getDomainContext_Command(), this.getCommandDeclaration(), null, "command", null, 0, -1, DomainContext.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(elementTypesEClass, ElementTypes.class, "ElementTypes", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
- initEReference(getElementTypes_Types(), this.getElementType(), null, "types", null, 0, -1, ElementTypes.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getElementTypes_Types(), this.getElementType(), this.getElementType_Owner(), "types", null, 0, -1, ElementTypes.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getElementTypes_Domain(), this.getDomainContext(), this.getDomainContext_ElementTypes(), "domain", null, 0, 1, ElementTypes.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEClass(elementTypeEClass, ElementType.class, "ElementType", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
- initEReference(getElementType_MetaClass(), ecorePackage.getEClass(), null, "metaClass", null, 1, 1, ElementType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEAttribute(getElementType_SpecificName(), ecorePackage.getEString(), "specificName", null, 0, 1, ElementType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEAttribute(getElementType_Edithelper_EditHelperAdvicePath(), ecorePackage.getEString(), "edithelper_EditHelperAdvicePath", null, 0, 1, ElementType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEAttribute(getElementType_Kind(), ecorePackage.getEString(), "kind", null, 0, 1, ElementType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEReference(getElementType_Specializationof(), this.getElementType(), null, "specializationof", null, 0, 1, ElementType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEAttribute(getElementType_SpecializationIDof(), ecorePackage.getEString(), "specializationIDof", null, 0, 1, ElementType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEClass(elementTypeEClass, ElementType.class, "ElementType", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getElementType_Name(), ecorePackage.getEString(), "name", null, 0, 1, ElementType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getElementType_Helper(), ecorePackage.getEString(), "helper", null, 0, 1, ElementType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getElementType_Owner(), this.getElementTypes(), this.getElementTypes_Types(), "owner", null, 0, 1, ElementType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getElementType_Icon(), theEcorePackage.getEString(), "icon", null, 0, 1, ElementType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEClass(adviceBindingEClass, AdviceBinding.class, "AdviceBinding", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
- initEAttribute(getAdviceBinding_AdvicePath(), ecorePackage.getEString(), "advicePath", null, 0, 1, AdviceBinding.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEAttribute(getAdviceBinding_AdviceID(), ecorePackage.getEString(), "adviceID", null, 0, 1, AdviceBinding.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEAttribute(getAdviceBinding_Inheritance(), this.getInheritanceKind(), "inheritance", null, 0, 1, AdviceBinding.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEReference(getAdviceBinding_ElementTypeRef(), this.getElementType(), null, "elementTypeRef", null, 0, 1, AdviceBinding.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEAttribute(getAdviceBinding_ElementTypeIDref(), ecorePackage.getEString(), "elementTypeIDref", null, 0, 1, AdviceBinding.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEClass(metaClassTypeEClass, MetaClassType.class, "MetaClassType", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getMetaClassType_MetaClass(), ecorePackage.getEClass(), null, "metaClass", null, 1, 1, MetaClassType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEClass(bindingEClass, Binding.class, "Binding", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
- initEReference(getBinding_Advice(), this.getAdviceBinding(), null, "advice", null, 0, 1, Binding.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEAttribute(getBinding_ElementTypePattern(), ecorePackage.getEString(), "elementTypePattern", null, 0, 1, Binding.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
- initEAttribute(getBinding_AdviceID(), ecorePackage.getEString(), "adviceID", null, 0, 1, Binding.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEClass(specializationTypeEClass, SpecializationType.class, "SpecializationType", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getSpecializationType_Ref(), this.getElementType(), null, "ref", null, 0, 1, SpecializationType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getSpecializationType_Matcher(), ecorePackage.getEString(), "matcher", null, 0, 1, SpecializationType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getSpecializationType_GenMatcher(), this.getGenMatcher(), null, "genMatcher", null, 0, 1, SpecializationType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getSpecializationType_GenHelper(), this.getGenHelper(), null, "genHelper", null, 0, 1, SpecializationType.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(adviceEClass, Advice.class, "Advice", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getAdvice_AdviceID(), ecorePackage.getEString(), "adviceID", null, 0, 1, Advice.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getAdvice_Ref(), this.getElementType(), null, "ref", null, 0, 1, Advice.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getAdvice_AdvicePath(), ecorePackage.getEString(), "advicePath", null, 0, 1, Advice.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getAdvice_Inheritance(), this.getInheritanceKind(), "inheritance", null, 0, 1, Advice.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(elementTypeBindingsEClass, ElementTypeBindings.class, "ElementTypeBindings", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getElementTypeBindings_ClientContextID(), ecorePackage.getEString(), "clientContextID", null, 0, 1, ElementTypeBindings.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getElementTypeBindings_Bindings(), this.getBinding(), this.getBinding_Owner(), "bindings", null, 0, -1, ElementTypeBindings.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(bindingEClass, Binding.class, "Binding", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getBinding_Owner(), this.getElementTypeBindings(), this.getElementTypeBindings_Bindings(), "owner", null, 1, 1, Binding.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getBinding_Pattern(), ecorePackage.getEString(), "pattern", null, 0, 1, Binding.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(elementTypeBindingEClass, ElementTypeBinding.class, "ElementTypeBinding", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getElementTypeBinding_Ref(), this.getElementType(), null, "ref", null, 0, 1, ElementTypeBinding.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(adviceBindingEClass, AdviceBinding.class, "AdviceBinding", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getAdviceBinding_Ref(), this.getAdvice(), null, "ref", null, 0, 1, AdviceBinding.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEClass(genHandlersEClass, GenHandlers.class, "GenHandlers", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
initEAttribute(getGenHandlers_HandlerPackage(), ecorePackage.getEString(), "handlerPackage", null, 0, 1, GenHandlers.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
@@ -722,6 +1274,38 @@ public class DomaincontextcodegenPackageImpl extends EPackageImpl implements Dom
initEAttribute(getGenHandlers_SuperClassPackage(), ecorePackage.getEString(), "superClassPackage", null, 0, 1, GenHandlers.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getGenHandlers_ElementTypeEnumerator(), ecorePackage.getEString(), "elementTypeEnumerator", null, 0, 1, GenHandlers.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
initEAttribute(getGenHandlers_ElementTypeEnumeratorPackage(), ecorePackage.getEString(), "elementTypeEnumeratorPackage", null, 0, 1, GenHandlers.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getGenHandlers_VisibleCreateChildHandlers(), this.getElementType(), null, "visibleCreateChildHandlers", null, 0, -1, GenHandlers.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getGenHandlers_ParentDomainCreateChild(), this.getElementType(), null, "parentDomainCreateChild", null, 0, -1, GenHandlers.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getGenHandlers_CreateChildMenuLocationURI(), theEcorePackage.getEString(), "createChildMenuLocationURI", null, 0, 1, GenHandlers.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(genMatcherEClass, GenMatcher.class, "GenMatcher", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getGenMatcher_Name(), ecorePackage.getEString(), "name", null, 0, 1, GenMatcher.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(genHelperEClass, GenHelper.class, "GenHelper", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getGenHelper_Name(), ecorePackage.getEString(), "name", null, 0, 1, GenHelper.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(stereotypedElementMatcherEClass, StereotypedElementMatcher.class, "StereotypedElementMatcher", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getStereotypedElementMatcher_StereotypeName(), theEcorePackage.getEString(), "stereotypeName", null, 0, 1, StereotypedElementMatcher.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getStereotypedElementMatcher_StereotypePackage(), theEcorePackage.getEString(), "stereotypePackage", null, 0, 1, StereotypedElementMatcher.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getStereotypedElementMatcher_BaseElementName(), theEcorePackage.getEString(), "baseElementName", null, 0, 1, StereotypedElementMatcher.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getStereotypedElementMatcher_BaseElementPackage(), theEcorePackage.getEString(), "baseElementPackage", null, 0, 1, StereotypedElementMatcher.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(stereotypedElementHelperEClass, StereotypedElementHelper.class, "StereotypedElementHelper", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getStereotypedElementHelper_StereotypeName(), theEcorePackage.getEString(), "stereotypeName", null, 0, 1, StereotypedElementHelper.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getStereotypedElementHelper_StereotypePackage(), theEcorePackage.getEString(), "stereotypePackage", null, 0, 1, StereotypedElementHelper.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getStereotypedElementHelper_BaseElementName(), theEcorePackage.getEString(), "baseElementName", null, 0, 1, StereotypedElementHelper.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getStereotypedElementHelper_BaseElementPackage(), theEcorePackage.getEString(), "baseElementPackage", null, 0, 1, StereotypedElementHelper.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(menuDeclarationEClass, MenuDeclaration.class, "MenuDeclaration", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEAttribute(getMenuDeclaration_LocationURI(), theEcorePackage.getEString(), "locationURI", null, 0, 1, MenuDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEReference(getMenuDeclaration_Commands(), this.getCommand(), null, "commands", null, 0, -1, MenuDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(commandDeclarationEClass, CommandDeclaration.class, "CommandDeclaration", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getCommandDeclaration_Commands(), this.getCommand(), null, "commands", null, 0, -1, CommandDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+
+ initEClass(commandEClass, Command.class, "Command", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
+ initEReference(getCommand_ElementType(), this.getElementType(), null, "elementType", null, 0, 1, Command.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+ initEAttribute(getCommand_Icon(), theEcorePackage.getEString(), "icon", null, 0, 1, Command.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
// Initialize enums and add enum literals
initEEnum(inheritanceKindEEnum, InheritanceKind.class, "InheritanceKind");
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/ElementTypeBindingImpl.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/ElementTypeBindingImpl.java
new file mode 100644
index 00000000000..70a4968d110
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/ElementTypeBindingImpl.java
@@ -0,0 +1,169 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen.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.papyrus.domaincontextcodegen.DomaincontextcodegenPackage;
+import org.eclipse.papyrus.domaincontextcodegen.ElementType;
+import org.eclipse.papyrus.domaincontextcodegen.ElementTypeBinding;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Element Type Binding</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.ElementTypeBindingImpl#getRef <em>Ref</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ElementTypeBindingImpl extends BindingImpl implements ElementTypeBinding {
+
+ /**
+ * The cached value of the '{@link #getRef() <em>Ref</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getRef()
+ * @generated
+ * @ordered
+ */
+ protected ElementType ref;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected ElementTypeBindingImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DomaincontextcodegenPackage.Literals.ELEMENT_TYPE_BINDING;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ElementType getRef() {
+ if(ref != null && ref.eIsProxy()) {
+ InternalEObject oldRef = (InternalEObject)ref;
+ ref = (ElementType)eResolveProxy(oldRef);
+ if(ref != oldRef) {
+ if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DomaincontextcodegenPackage.ELEMENT_TYPE_BINDING__REF, oldRef, ref));
+ }
+ }
+ return ref;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ElementType basicGetRef() {
+ return ref;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setRef(ElementType newRef) {
+ ElementType oldRef = ref;
+ ref = newRef;
+ if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.ELEMENT_TYPE_BINDING__REF, oldRef, ref));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.ELEMENT_TYPE_BINDING__REF:
+ if(resolve)
+ return getRef();
+ return basicGetRef();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.ELEMENT_TYPE_BINDING__REF:
+ setRef((ElementType)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.ELEMENT_TYPE_BINDING__REF:
+ setRef((ElementType)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.ELEMENT_TYPE_BINDING__REF:
+ return ref != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //ElementTypeBindingImpl
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/ElementTypeBindingsImpl.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/ElementTypeBindingsImpl.java
new file mode 100644
index 00000000000..bb01b62bebf
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/ElementTypeBindingsImpl.java
@@ -0,0 +1,253 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen.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.InternalEList;
+import org.eclipse.papyrus.domaincontextcodegen.Binding;
+import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage;
+import org.eclipse.papyrus.domaincontextcodegen.ElementTypeBindings;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Element Type Bindings</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.ElementTypeBindingsImpl#getClientContextID <em>Client Context ID</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.ElementTypeBindingsImpl#getBindings <em>Bindings</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class ElementTypeBindingsImpl extends EObjectImpl implements ElementTypeBindings {
+
+ /**
+ * The default value of the '{@link #getClientContextID() <em>Client Context ID</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getClientContextID()
+ * @generated
+ * @ordered
+ */
+ protected static final String CLIENT_CONTEXT_ID_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getClientContextID() <em>Client Context ID</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getClientContextID()
+ * @generated
+ * @ordered
+ */
+ protected String clientContextID = CLIENT_CONTEXT_ID_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getBindings() <em>Bindings</em>}' containment reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getBindings()
+ * @generated
+ * @ordered
+ */
+ protected EList<Binding> bindings;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected ElementTypeBindingsImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DomaincontextcodegenPackage.Literals.ELEMENT_TYPE_BINDINGS;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public String getClientContextID() {
+ return clientContextID;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setClientContextID(String newClientContextID) {
+ String oldClientContextID = clientContextID;
+ clientContextID = newClientContextID;
+ if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.ELEMENT_TYPE_BINDINGS__CLIENT_CONTEXT_ID, oldClientContextID, clientContextID));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EList<Binding> getBindings() {
+ if(bindings == null) {
+ bindings = new EObjectContainmentWithInverseEList<Binding>(Binding.class, this, DomaincontextcodegenPackage.ELEMENT_TYPE_BINDINGS__BINDINGS, DomaincontextcodegenPackage.BINDING__OWNER);
+ }
+ return bindings;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.ELEMENT_TYPE_BINDINGS__BINDINGS:
+ return ((InternalEList<InternalEObject>)(InternalEList<?>)getBindings()).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 DomaincontextcodegenPackage.ELEMENT_TYPE_BINDINGS__BINDINGS:
+ return ((InternalEList<?>)getBindings()).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 DomaincontextcodegenPackage.ELEMENT_TYPE_BINDINGS__CLIENT_CONTEXT_ID:
+ return getClientContextID();
+ case DomaincontextcodegenPackage.ELEMENT_TYPE_BINDINGS__BINDINGS:
+ return getBindings();
+ }
+ 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 DomaincontextcodegenPackage.ELEMENT_TYPE_BINDINGS__CLIENT_CONTEXT_ID:
+ setClientContextID((String)newValue);
+ return;
+ case DomaincontextcodegenPackage.ELEMENT_TYPE_BINDINGS__BINDINGS:
+ getBindings().clear();
+ getBindings().addAll((Collection<? extends Binding>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.ELEMENT_TYPE_BINDINGS__CLIENT_CONTEXT_ID:
+ setClientContextID(CLIENT_CONTEXT_ID_EDEFAULT);
+ return;
+ case DomaincontextcodegenPackage.ELEMENT_TYPE_BINDINGS__BINDINGS:
+ getBindings().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.ELEMENT_TYPE_BINDINGS__CLIENT_CONTEXT_ID:
+ return CLIENT_CONTEXT_ID_EDEFAULT == null ? clientContextID != null : !CLIENT_CONTEXT_ID_EDEFAULT.equals(clientContextID);
+ case DomaincontextcodegenPackage.ELEMENT_TYPE_BINDINGS__BINDINGS:
+ return bindings != null && !bindings.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(" (clientContextID: ");
+ result.append(clientContextID);
+ result.append(')');
+ return result.toString();
+ }
+
+} //ElementTypeBindingsImpl
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/ElementTypeImpl.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/ElementTypeImpl.java
index 5d4d4b71181..ee57132fc1f 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/ElementTypeImpl.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/ElementTypeImpl.java
@@ -7,12 +7,15 @@
package org.eclipse.papyrus.domaincontextcodegen.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.emf.ecore.impl.EObjectImpl;
+import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage;
import org.eclipse.papyrus.domaincontextcodegen.ElementType;
+import org.eclipse.papyrus.domaincontextcodegen.ElementTypes;
/**
* <!-- begin-user-doc -->
@@ -21,129 +24,82 @@ import org.eclipse.papyrus.domaincontextcodegen.ElementType;
* <p>
* The following features are implemented:
* <ul>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.ElementTypeImpl#getMetaClass <em>Meta Class</em>}</li>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.ElementTypeImpl#getSpecificName <em>Specific Name</em>}</li>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.ElementTypeImpl#getEdithelper_EditHelperAdvicePath <em>Edithelper Edit Helper Advice Path
- * </em>}</li>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.ElementTypeImpl#getKind <em>Kind</em>}</li>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.ElementTypeImpl#getSpecializationof <em>Specializationof</em>}</li>
- * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.ElementTypeImpl#getSpecializationIDof <em>Specialization IDof</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.ElementTypeImpl#getName <em>Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.ElementTypeImpl#getHelper <em>Helper</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.ElementTypeImpl#getOwner <em>Owner</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.ElementTypeImpl#getIcon <em>Icon</em>}</li>
* </ul>
* </p>
*
* @generated
*/
-public class ElementTypeImpl extends EObjectImpl implements ElementType {
+public abstract class ElementTypeImpl extends EObjectImpl implements ElementType {
/**
- * The cached value of the '{@link #getMetaClass() <em>Meta Class</em>}' reference.
+ * The default value of the '{@link #getName() <em>Name</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @see #getMetaClass()
+ * @see #getName()
* @generated
* @ordered
*/
- protected EClass metaClass;
+ protected static final String NAME_EDEFAULT = null;
/**
- * The default value of the '{@link #getSpecificName() <em>Specific Name</em>}' attribute.
+ * The cached value of the '{@link #getName() <em>Name</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @see #getSpecificName()
+ * @see #getName()
* @generated
* @ordered
*/
- protected static final String SPECIFIC_NAME_EDEFAULT = null;
+ protected String name = NAME_EDEFAULT;
/**
- * The cached value of the '{@link #getSpecificName() <em>Specific Name</em>}' attribute.
+ * The default value of the '{@link #getHelper() <em>Helper</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @see #getSpecificName()
+ * @see #getHelper()
* @generated
* @ordered
*/
- protected String specificName = SPECIFIC_NAME_EDEFAULT;
+ protected static final String HELPER_EDEFAULT = null;
/**
- * The default value of the '{@link #getEdithelper_EditHelperAdvicePath() <em>Edithelper Edit Helper Advice Path</em>}' attribute.
+ * The cached value of the '{@link #getHelper() <em>Helper</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @see #getEdithelper_EditHelperAdvicePath()
+ * @see #getHelper()
* @generated
* @ordered
*/
- protected static final String EDITHELPER_EDIT_HELPER_ADVICE_PATH_EDEFAULT = null;
+ protected String helper = HELPER_EDEFAULT;
/**
- * The cached value of the '{@link #getEdithelper_EditHelperAdvicePath() <em>Edithelper Edit Helper Advice Path</em>}' attribute.
+ * The default value of the '{@link #getIcon() <em>Icon</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @see #getEdithelper_EditHelperAdvicePath()
+ * @see #getIcon()
* @generated
* @ordered
*/
- protected String edithelper_EditHelperAdvicePath = EDITHELPER_EDIT_HELPER_ADVICE_PATH_EDEFAULT;
+ protected static final String ICON_EDEFAULT = null;
/**
- * The default value of the '{@link #getKind() <em>Kind</em>}' attribute.
+ * The cached value of the '{@link #getIcon() <em>Icon</em>}' attribute.
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
- * @see #getKind()
+ * @see #getIcon()
* @generated
* @ordered
*/
- protected static final String KIND_EDEFAULT = null;
-
- /**
- * The cached value of the '{@link #getKind() <em>Kind</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @see #getKind()
- * @generated
- * @ordered
- */
- protected String kind = KIND_EDEFAULT;
-
- /**
- * The cached value of the '{@link #getSpecializationof() <em>Specializationof</em>}' reference.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @see #getSpecializationof()
- * @generated
- * @ordered
- */
- protected ElementType specializationof;
-
- /**
- * The default value of the '{@link #getSpecializationIDof() <em>Specialization IDof</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @see #getSpecializationIDof()
- * @generated
- * @ordered
- */
- protected static final String SPECIALIZATION_IDOF_EDEFAULT = null;
-
- /**
- * The cached value of the '{@link #getSpecializationIDof() <em>Specialization IDof</em>}' attribute.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @see #getSpecializationIDof()
- * @generated
- * @ordered
- */
- protected String specializationIDof = SPECIALIZATION_IDOF_EDEFAULT;
+ protected String icon = ICON_EDEFAULT;
/**
* <!-- begin-user-doc -->
@@ -172,16 +128,8 @@ public class ElementTypeImpl extends EObjectImpl implements ElementType {
*
* @generated
*/
- public EClass getMetaClass() {
- if(metaClass != null && metaClass.eIsProxy()) {
- InternalEObject oldMetaClass = (InternalEObject)metaClass;
- metaClass = (EClass)eResolveProxy(oldMetaClass);
- if(metaClass != oldMetaClass) {
- if(eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.RESOLVE, DomaincontextcodegenPackage.ELEMENT_TYPE__META_CLASS, oldMetaClass, metaClass));
- }
- }
- return metaClass;
+ public String getName() {
+ return name;
}
/**
@@ -190,21 +138,11 @@ public class ElementTypeImpl extends EObjectImpl implements ElementType {
*
* @generated
*/
- public EClass basicGetMetaClass() {
- return metaClass;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @generated
- */
- public void setMetaClass(EClass newMetaClass) {
- EClass oldMetaClass = metaClass;
- metaClass = newMetaClass;
+ public void setName(String newName) {
+ String oldName = name;
+ name = newName;
if(eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.ELEMENT_TYPE__META_CLASS, oldMetaClass, metaClass));
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.ELEMENT_TYPE__NAME, oldName, name));
}
/**
@@ -213,8 +151,8 @@ public class ElementTypeImpl extends EObjectImpl implements ElementType {
*
* @generated
*/
- public String getSpecificName() {
- return specificName;
+ public String getHelper() {
+ return helper;
}
/**
@@ -223,11 +161,11 @@ public class ElementTypeImpl extends EObjectImpl implements ElementType {
*
* @generated
*/
- public void setSpecificName(String newSpecificName) {
- String oldSpecificName = specificName;
- specificName = newSpecificName;
+ public void setHelper(String newHelper) {
+ String oldHelper = helper;
+ helper = newHelper;
if(eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.ELEMENT_TYPE__SPECIFIC_NAME, oldSpecificName, specificName));
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.ELEMENT_TYPE__HELPER, oldHelper, helper));
}
/**
@@ -236,8 +174,10 @@ public class ElementTypeImpl extends EObjectImpl implements ElementType {
*
* @generated
*/
- public String getEdithelper_EditHelperAdvicePath() {
- return edithelper_EditHelperAdvicePath;
+ public ElementTypes getOwner() {
+ if(eContainerFeatureID() != DomaincontextcodegenPackage.ELEMENT_TYPE__OWNER)
+ return null;
+ return (ElementTypes)eContainer();
}
/**
@@ -246,11 +186,9 @@ public class ElementTypeImpl extends EObjectImpl implements ElementType {
*
* @generated
*/
- public void setEdithelper_EditHelperAdvicePath(String newEdithelper_EditHelperAdvicePath) {
- String oldEdithelper_EditHelperAdvicePath = edithelper_EditHelperAdvicePath;
- edithelper_EditHelperAdvicePath = newEdithelper_EditHelperAdvicePath;
- if(eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.ELEMENT_TYPE__EDITHELPER_EDIT_HELPER_ADVICE_PATH, oldEdithelper_EditHelperAdvicePath, edithelper_EditHelperAdvicePath));
+ public NotificationChain basicSetOwner(ElementTypes newOwner, NotificationChain msgs) {
+ msgs = eBasicSetContainer((InternalEObject)newOwner, DomaincontextcodegenPackage.ELEMENT_TYPE__OWNER, msgs);
+ return msgs;
}
/**
@@ -259,8 +197,20 @@ public class ElementTypeImpl extends EObjectImpl implements ElementType {
*
* @generated
*/
- public String getKind() {
- return kind;
+ public void setOwner(ElementTypes newOwner) {
+ if(newOwner != eInternalContainer() || (eContainerFeatureID() != DomaincontextcodegenPackage.ELEMENT_TYPE__OWNER && newOwner != null)) {
+ if(EcoreUtil.isAncestor(this, newOwner))
+ throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
+ NotificationChain msgs = null;
+ if(eInternalContainer() != null)
+ msgs = eBasicRemoveFromContainer(msgs);
+ if(newOwner != null)
+ msgs = ((InternalEObject)newOwner).eInverseAdd(this, DomaincontextcodegenPackage.ELEMENT_TYPES__TYPES, ElementTypes.class, msgs);
+ msgs = basicSetOwner(newOwner, msgs);
+ if(msgs != null)
+ msgs.dispatch();
+ } else if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.ELEMENT_TYPE__OWNER, newOwner, newOwner));
}
/**
@@ -269,11 +219,8 @@ public class ElementTypeImpl extends EObjectImpl implements ElementType {
*
* @generated
*/
- public void setKind(String newKind) {
- String oldKind = kind;
- kind = newKind;
- if(eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.ELEMENT_TYPE__KIND, oldKind, kind));
+ public String getIcon() {
+ return icon;
}
/**
@@ -282,26 +229,11 @@ public class ElementTypeImpl extends EObjectImpl implements ElementType {
*
* @generated
*/
- public ElementType getSpecializationof() {
- if(specializationof != null && specializationof.eIsProxy()) {
- InternalEObject oldSpecializationof = (InternalEObject)specializationof;
- specializationof = (ElementType)eResolveProxy(oldSpecializationof);
- if(specializationof != oldSpecializationof) {
- if(eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.RESOLVE, DomaincontextcodegenPackage.ELEMENT_TYPE__SPECIALIZATIONOF, oldSpecializationof, specializationof));
- }
- }
- return specializationof;
- }
-
- /**
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- *
- * @generated
- */
- public ElementType basicGetSpecializationof() {
- return specializationof;
+ public void setIcon(String newIcon) {
+ String oldIcon = icon;
+ icon = newIcon;
+ if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.ELEMENT_TYPE__ICON, oldIcon, icon));
}
/**
@@ -310,11 +242,15 @@ public class ElementTypeImpl extends EObjectImpl implements ElementType {
*
* @generated
*/
- public void setSpecializationof(ElementType newSpecializationof) {
- ElementType oldSpecializationof = specializationof;
- specializationof = newSpecializationof;
- if(eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.ELEMENT_TYPE__SPECIALIZATIONOF, oldSpecializationof, specializationof));
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.ELEMENT_TYPE__OWNER:
+ if(eInternalContainer() != null)
+ msgs = eBasicRemoveFromContainer(msgs);
+ return basicSetOwner((ElementTypes)otherEnd, msgs);
+ }
+ return super.eInverseAdd(otherEnd, featureID, msgs);
}
/**
@@ -323,8 +259,13 @@ public class ElementTypeImpl extends EObjectImpl implements ElementType {
*
* @generated
*/
- public String getSpecializationIDof() {
- return specializationIDof;
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.ELEMENT_TYPE__OWNER:
+ return basicSetOwner(null, msgs);
+ }
+ return super.eInverseRemove(otherEnd, featureID, msgs);
}
/**
@@ -333,11 +274,13 @@ public class ElementTypeImpl extends EObjectImpl implements ElementType {
*
* @generated
*/
- public void setSpecializationIDof(String newSpecializationIDof) {
- String oldSpecializationIDof = specializationIDof;
- specializationIDof = newSpecializationIDof;
- if(eNotificationRequired())
- eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.ELEMENT_TYPE__SPECIALIZATION_IDOF, oldSpecializationIDof, specializationIDof));
+ @Override
+ public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
+ switch(eContainerFeatureID()) {
+ case DomaincontextcodegenPackage.ELEMENT_TYPE__OWNER:
+ return eInternalContainer().eInverseRemove(this, DomaincontextcodegenPackage.ELEMENT_TYPES__TYPES, ElementTypes.class, msgs);
+ }
+ return super.eBasicRemoveFromContainerFeature(msgs);
}
/**
@@ -349,22 +292,14 @@ public class ElementTypeImpl extends EObjectImpl implements ElementType {
@Override
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch(featureID) {
- case DomaincontextcodegenPackage.ELEMENT_TYPE__META_CLASS:
- if(resolve)
- return getMetaClass();
- return basicGetMetaClass();
- case DomaincontextcodegenPackage.ELEMENT_TYPE__SPECIFIC_NAME:
- return getSpecificName();
- case DomaincontextcodegenPackage.ELEMENT_TYPE__EDITHELPER_EDIT_HELPER_ADVICE_PATH:
- return getEdithelper_EditHelperAdvicePath();
- case DomaincontextcodegenPackage.ELEMENT_TYPE__KIND:
- return getKind();
- case DomaincontextcodegenPackage.ELEMENT_TYPE__SPECIALIZATIONOF:
- if(resolve)
- return getSpecializationof();
- return basicGetSpecializationof();
- case DomaincontextcodegenPackage.ELEMENT_TYPE__SPECIALIZATION_IDOF:
- return getSpecializationIDof();
+ case DomaincontextcodegenPackage.ELEMENT_TYPE__NAME:
+ return getName();
+ case DomaincontextcodegenPackage.ELEMENT_TYPE__HELPER:
+ return getHelper();
+ case DomaincontextcodegenPackage.ELEMENT_TYPE__OWNER:
+ return getOwner();
+ case DomaincontextcodegenPackage.ELEMENT_TYPE__ICON:
+ return getIcon();
}
return super.eGet(featureID, resolve, coreType);
}
@@ -378,23 +313,17 @@ public class ElementTypeImpl extends EObjectImpl implements ElementType {
@Override
public void eSet(int featureID, Object newValue) {
switch(featureID) {
- case DomaincontextcodegenPackage.ELEMENT_TYPE__META_CLASS:
- setMetaClass((EClass)newValue);
+ case DomaincontextcodegenPackage.ELEMENT_TYPE__NAME:
+ setName((String)newValue);
return;
- case DomaincontextcodegenPackage.ELEMENT_TYPE__SPECIFIC_NAME:
- setSpecificName((String)newValue);
+ case DomaincontextcodegenPackage.ELEMENT_TYPE__HELPER:
+ setHelper((String)newValue);
return;
- case DomaincontextcodegenPackage.ELEMENT_TYPE__EDITHELPER_EDIT_HELPER_ADVICE_PATH:
- setEdithelper_EditHelperAdvicePath((String)newValue);
+ case DomaincontextcodegenPackage.ELEMENT_TYPE__OWNER:
+ setOwner((ElementTypes)newValue);
return;
- case DomaincontextcodegenPackage.ELEMENT_TYPE__KIND:
- setKind((String)newValue);
- return;
- case DomaincontextcodegenPackage.ELEMENT_TYPE__SPECIALIZATIONOF:
- setSpecializationof((ElementType)newValue);
- return;
- case DomaincontextcodegenPackage.ELEMENT_TYPE__SPECIALIZATION_IDOF:
- setSpecializationIDof((String)newValue);
+ case DomaincontextcodegenPackage.ELEMENT_TYPE__ICON:
+ setIcon((String)newValue);
return;
}
super.eSet(featureID, newValue);
@@ -409,23 +338,17 @@ public class ElementTypeImpl extends EObjectImpl implements ElementType {
@Override
public void eUnset(int featureID) {
switch(featureID) {
- case DomaincontextcodegenPackage.ELEMENT_TYPE__META_CLASS:
- setMetaClass((EClass)null);
- return;
- case DomaincontextcodegenPackage.ELEMENT_TYPE__SPECIFIC_NAME:
- setSpecificName(SPECIFIC_NAME_EDEFAULT);
- return;
- case DomaincontextcodegenPackage.ELEMENT_TYPE__EDITHELPER_EDIT_HELPER_ADVICE_PATH:
- setEdithelper_EditHelperAdvicePath(EDITHELPER_EDIT_HELPER_ADVICE_PATH_EDEFAULT);
+ case DomaincontextcodegenPackage.ELEMENT_TYPE__NAME:
+ setName(NAME_EDEFAULT);
return;
- case DomaincontextcodegenPackage.ELEMENT_TYPE__KIND:
- setKind(KIND_EDEFAULT);
+ case DomaincontextcodegenPackage.ELEMENT_TYPE__HELPER:
+ setHelper(HELPER_EDEFAULT);
return;
- case DomaincontextcodegenPackage.ELEMENT_TYPE__SPECIALIZATIONOF:
- setSpecializationof((ElementType)null);
+ case DomaincontextcodegenPackage.ELEMENT_TYPE__OWNER:
+ setOwner((ElementTypes)null);
return;
- case DomaincontextcodegenPackage.ELEMENT_TYPE__SPECIALIZATION_IDOF:
- setSpecializationIDof(SPECIALIZATION_IDOF_EDEFAULT);
+ case DomaincontextcodegenPackage.ELEMENT_TYPE__ICON:
+ setIcon(ICON_EDEFAULT);
return;
}
super.eUnset(featureID);
@@ -440,18 +363,14 @@ public class ElementTypeImpl extends EObjectImpl implements ElementType {
@Override
public boolean eIsSet(int featureID) {
switch(featureID) {
- case DomaincontextcodegenPackage.ELEMENT_TYPE__META_CLASS:
- return metaClass != null;
- case DomaincontextcodegenPackage.ELEMENT_TYPE__SPECIFIC_NAME:
- return SPECIFIC_NAME_EDEFAULT == null ? specificName != null : !SPECIFIC_NAME_EDEFAULT.equals(specificName);
- case DomaincontextcodegenPackage.ELEMENT_TYPE__EDITHELPER_EDIT_HELPER_ADVICE_PATH:
- return EDITHELPER_EDIT_HELPER_ADVICE_PATH_EDEFAULT == null ? edithelper_EditHelperAdvicePath != null : !EDITHELPER_EDIT_HELPER_ADVICE_PATH_EDEFAULT.equals(edithelper_EditHelperAdvicePath);
- case DomaincontextcodegenPackage.ELEMENT_TYPE__KIND:
- return KIND_EDEFAULT == null ? kind != null : !KIND_EDEFAULT.equals(kind);
- case DomaincontextcodegenPackage.ELEMENT_TYPE__SPECIALIZATIONOF:
- return specializationof != null;
- case DomaincontextcodegenPackage.ELEMENT_TYPE__SPECIALIZATION_IDOF:
- return SPECIALIZATION_IDOF_EDEFAULT == null ? specializationIDof != null : !SPECIALIZATION_IDOF_EDEFAULT.equals(specializationIDof);
+ case DomaincontextcodegenPackage.ELEMENT_TYPE__NAME:
+ return NAME_EDEFAULT == null ? name != null : !NAME_EDEFAULT.equals(name);
+ case DomaincontextcodegenPackage.ELEMENT_TYPE__HELPER:
+ return HELPER_EDEFAULT == null ? helper != null : !HELPER_EDEFAULT.equals(helper);
+ case DomaincontextcodegenPackage.ELEMENT_TYPE__OWNER:
+ return getOwner() != null;
+ case DomaincontextcodegenPackage.ELEMENT_TYPE__ICON:
+ return ICON_EDEFAULT == null ? icon != null : !ICON_EDEFAULT.equals(icon);
}
return super.eIsSet(featureID);
}
@@ -468,14 +387,12 @@ public class ElementTypeImpl extends EObjectImpl implements ElementType {
return super.toString();
StringBuffer result = new StringBuffer(super.toString());
- result.append(" (specificName: ");
- result.append(specificName);
- result.append(", edithelper_EditHelperAdvicePath: ");
- result.append(edithelper_EditHelperAdvicePath);
- result.append(", kind: ");
- result.append(kind);
- result.append(", specializationIDof: ");
- result.append(specializationIDof);
+ result.append(" (name: ");
+ result.append(name);
+ result.append(", helper: ");
+ result.append(helper);
+ result.append(", icon: ");
+ result.append(icon);
result.append(')');
return result.toString();
}
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/ElementTypesImpl.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/ElementTypesImpl.java
index bc4a3ce3772..264a752da86 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/ElementTypesImpl.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/ElementTypesImpl.java
@@ -8,13 +8,17 @@ package org.eclipse.papyrus.domaincontextcodegen.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.EObjectContainmentWithInverseEList;
+import org.eclipse.emf.ecore.util.EcoreUtil;
import org.eclipse.emf.ecore.util.InternalEList;
+import org.eclipse.papyrus.domaincontextcodegen.DomainContext;
import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage;
import org.eclipse.papyrus.domaincontextcodegen.ElementType;
import org.eclipse.papyrus.domaincontextcodegen.ElementTypes;
@@ -27,6 +31,7 @@ import org.eclipse.papyrus.domaincontextcodegen.ElementTypes;
* The following features are implemented:
* <ul>
* <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.ElementTypesImpl#getTypes <em>Types</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.ElementTypesImpl#getDomain <em>Domain</em>}</li>
* </ul>
* </p>
*
@@ -74,7 +79,7 @@ public class ElementTypesImpl extends EObjectImpl implements ElementTypes {
*/
public EList<ElementType> getTypes() {
if(types == null) {
- types = new EObjectContainmentEList<ElementType>(ElementType.class, this, DomaincontextcodegenPackage.ELEMENT_TYPES__TYPES);
+ types = new EObjectContainmentWithInverseEList<ElementType>(ElementType.class, this, DomaincontextcodegenPackage.ELEMENT_TYPES__TYPES, DomaincontextcodegenPackage.ELEMENT_TYPE__OWNER);
}
return types;
}
@@ -85,11 +90,78 @@ public class ElementTypesImpl extends EObjectImpl implements ElementTypes {
*
* @generated
*/
+ public DomainContext getDomain() {
+ if(eContainerFeatureID() != DomaincontextcodegenPackage.ELEMENT_TYPES__DOMAIN)
+ return null;
+ return (DomainContext)eContainer();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public NotificationChain basicSetDomain(DomainContext newDomain, NotificationChain msgs) {
+ msgs = eBasicSetContainer((InternalEObject)newDomain, DomaincontextcodegenPackage.ELEMENT_TYPES__DOMAIN, msgs);
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setDomain(DomainContext newDomain) {
+ if(newDomain != eInternalContainer() || (eContainerFeatureID() != DomaincontextcodegenPackage.ELEMENT_TYPES__DOMAIN && newDomain != null)) {
+ if(EcoreUtil.isAncestor(this, newDomain))
+ throw new IllegalArgumentException("Recursive containment not allowed for " + toString());
+ NotificationChain msgs = null;
+ if(eInternalContainer() != null)
+ msgs = eBasicRemoveFromContainer(msgs);
+ if(newDomain != null)
+ msgs = ((InternalEObject)newDomain).eInverseAdd(this, DomaincontextcodegenPackage.DOMAIN_CONTEXT__ELEMENT_TYPES, DomainContext.class, msgs);
+ msgs = basicSetDomain(newDomain, msgs);
+ if(msgs != null)
+ msgs.dispatch();
+ } else if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.ELEMENT_TYPES__DOMAIN, newDomain, newDomain));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @SuppressWarnings("unchecked")
+ @Override
+ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.ELEMENT_TYPES__TYPES:
+ return ((InternalEList<InternalEObject>)(InternalEList<?>)getTypes()).basicAdd(otherEnd, msgs);
+ case DomaincontextcodegenPackage.ELEMENT_TYPES__DOMAIN:
+ if(eInternalContainer() != null)
+ msgs = eBasicRemoveFromContainer(msgs);
+ return basicSetDomain((DomainContext)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 DomaincontextcodegenPackage.ELEMENT_TYPES__TYPES:
return ((InternalEList<?>)getTypes()).basicRemove(otherEnd, msgs);
+ case DomaincontextcodegenPackage.ELEMENT_TYPES__DOMAIN:
+ return basicSetDomain(null, msgs);
}
return super.eInverseRemove(otherEnd, featureID, msgs);
}
@@ -101,10 +173,27 @@ public class ElementTypesImpl extends EObjectImpl implements ElementTypes {
* @generated
*/
@Override
+ public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
+ switch(eContainerFeatureID()) {
+ case DomaincontextcodegenPackage.ELEMENT_TYPES__DOMAIN:
+ return eInternalContainer().eInverseRemove(this, DomaincontextcodegenPackage.DOMAIN_CONTEXT__ELEMENT_TYPES, DomainContext.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 DomaincontextcodegenPackage.ELEMENT_TYPES__TYPES:
return getTypes();
+ case DomaincontextcodegenPackage.ELEMENT_TYPES__DOMAIN:
+ return getDomain();
}
return super.eGet(featureID, resolve, coreType);
}
@@ -123,6 +212,9 @@ public class ElementTypesImpl extends EObjectImpl implements ElementTypes {
getTypes().clear();
getTypes().addAll((Collection<? extends ElementType>)newValue);
return;
+ case DomaincontextcodegenPackage.ELEMENT_TYPES__DOMAIN:
+ setDomain((DomainContext)newValue);
+ return;
}
super.eSet(featureID, newValue);
}
@@ -139,6 +231,9 @@ public class ElementTypesImpl extends EObjectImpl implements ElementTypes {
case DomaincontextcodegenPackage.ELEMENT_TYPES__TYPES:
getTypes().clear();
return;
+ case DomaincontextcodegenPackage.ELEMENT_TYPES__DOMAIN:
+ setDomain((DomainContext)null);
+ return;
}
super.eUnset(featureID);
}
@@ -154,6 +249,8 @@ public class ElementTypesImpl extends EObjectImpl implements ElementTypes {
switch(featureID) {
case DomaincontextcodegenPackage.ELEMENT_TYPES__TYPES:
return types != null && !types.isEmpty();
+ case DomaincontextcodegenPackage.ELEMENT_TYPES__DOMAIN:
+ return getDomain() != null;
}
return super.eIsSet(featureID);
}
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/GenHandlersImpl.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/GenHandlersImpl.java
index 8b0d6ed1be3..e47f7ee904c 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/GenHandlersImpl.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/GenHandlersImpl.java
@@ -6,11 +6,16 @@
*/
package org.eclipse.papyrus.domaincontextcodegen.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.EObjectImpl;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage;
+import org.eclipse.papyrus.domaincontextcodegen.ElementType;
import org.eclipse.papyrus.domaincontextcodegen.GenHandlers;
/**
@@ -25,6 +30,9 @@ import org.eclipse.papyrus.domaincontextcodegen.GenHandlers;
* <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.GenHandlersImpl#getSuperClassPackage <em>Super Class Package</em>}</li>
* <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.GenHandlersImpl#getElementTypeEnumerator <em>Element Type Enumerator</em>}</li>
* <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.GenHandlersImpl#getElementTypeEnumeratorPackage <em>Element Type Enumerator Package</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.GenHandlersImpl#getVisibleCreateChildHandlers <em>Visible Create Child Handlers</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.GenHandlersImpl#getParentDomainCreateChild <em>Parent Domain Create Child</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.GenHandlersImpl#getCreateChildMenuLocationURI <em>Create Child Menu Location URI</em>}</li>
* </ul>
* </p>
*
@@ -143,6 +151,50 @@ public class GenHandlersImpl extends EObjectImpl implements GenHandlers {
protected String elementTypeEnumeratorPackage = ELEMENT_TYPE_ENUMERATOR_PACKAGE_EDEFAULT;
/**
+ * The cached value of the '{@link #getVisibleCreateChildHandlers() <em>Visible Create Child Handlers</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getVisibleCreateChildHandlers()
+ * @generated
+ * @ordered
+ */
+ protected EList<ElementType> visibleCreateChildHandlers;
+
+ /**
+ * The cached value of the '{@link #getParentDomainCreateChild() <em>Parent Domain Create Child</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getParentDomainCreateChild()
+ * @generated
+ * @ordered
+ */
+ protected EList<ElementType> parentDomainCreateChild;
+
+ /**
+ * The default value of the '{@link #getCreateChildMenuLocationURI() <em>Create Child Menu Location URI</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getCreateChildMenuLocationURI()
+ * @generated
+ * @ordered
+ */
+ protected static final String CREATE_CHILD_MENU_LOCATION_URI_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getCreateChildMenuLocationURI() <em>Create Child Menu Location URI</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getCreateChildMenuLocationURI()
+ * @generated
+ * @ordered
+ */
+ protected String createChildMenuLocationURI = CREATE_CHILD_MENU_LOCATION_URI_EDEFAULT;
+
+ /**
* <!-- begin-user-doc -->
* <!-- end-user-doc -->
*
@@ -284,6 +336,55 @@ public class GenHandlersImpl extends EObjectImpl implements GenHandlers {
*
* @generated
*/
+ public EList<ElementType> getVisibleCreateChildHandlers() {
+ if(visibleCreateChildHandlers == null) {
+ visibleCreateChildHandlers = new EObjectResolvingEList<ElementType>(ElementType.class, this, DomaincontextcodegenPackage.GEN_HANDLERS__VISIBLE_CREATE_CHILD_HANDLERS);
+ }
+ return visibleCreateChildHandlers;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EList<ElementType> getParentDomainCreateChild() {
+ if(parentDomainCreateChild == null) {
+ parentDomainCreateChild = new EObjectResolvingEList<ElementType>(ElementType.class, this, DomaincontextcodegenPackage.GEN_HANDLERS__PARENT_DOMAIN_CREATE_CHILD);
+ }
+ return parentDomainCreateChild;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public String getCreateChildMenuLocationURI() {
+ return createChildMenuLocationURI;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setCreateChildMenuLocationURI(String newCreateChildMenuLocationURI) {
+ String oldCreateChildMenuLocationURI = createChildMenuLocationURI;
+ createChildMenuLocationURI = newCreateChildMenuLocationURI;
+ if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.GEN_HANDLERS__CREATE_CHILD_MENU_LOCATION_URI, oldCreateChildMenuLocationURI, createChildMenuLocationURI));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
@Override
public Object eGet(int featureID, boolean resolve, boolean coreType) {
switch(featureID) {
@@ -297,6 +398,12 @@ public class GenHandlersImpl extends EObjectImpl implements GenHandlers {
return getElementTypeEnumerator();
case DomaincontextcodegenPackage.GEN_HANDLERS__ELEMENT_TYPE_ENUMERATOR_PACKAGE:
return getElementTypeEnumeratorPackage();
+ case DomaincontextcodegenPackage.GEN_HANDLERS__VISIBLE_CREATE_CHILD_HANDLERS:
+ return getVisibleCreateChildHandlers();
+ case DomaincontextcodegenPackage.GEN_HANDLERS__PARENT_DOMAIN_CREATE_CHILD:
+ return getParentDomainCreateChild();
+ case DomaincontextcodegenPackage.GEN_HANDLERS__CREATE_CHILD_MENU_LOCATION_URI:
+ return getCreateChildMenuLocationURI();
}
return super.eGet(featureID, resolve, coreType);
}
@@ -307,6 +414,7 @@ public class GenHandlersImpl extends EObjectImpl implements GenHandlers {
*
* @generated
*/
+ @SuppressWarnings("unchecked")
@Override
public void eSet(int featureID, Object newValue) {
switch(featureID) {
@@ -325,6 +433,17 @@ public class GenHandlersImpl extends EObjectImpl implements GenHandlers {
case DomaincontextcodegenPackage.GEN_HANDLERS__ELEMENT_TYPE_ENUMERATOR_PACKAGE:
setElementTypeEnumeratorPackage((String)newValue);
return;
+ case DomaincontextcodegenPackage.GEN_HANDLERS__VISIBLE_CREATE_CHILD_HANDLERS:
+ getVisibleCreateChildHandlers().clear();
+ getVisibleCreateChildHandlers().addAll((Collection<? extends ElementType>)newValue);
+ return;
+ case DomaincontextcodegenPackage.GEN_HANDLERS__PARENT_DOMAIN_CREATE_CHILD:
+ getParentDomainCreateChild().clear();
+ getParentDomainCreateChild().addAll((Collection<? extends ElementType>)newValue);
+ return;
+ case DomaincontextcodegenPackage.GEN_HANDLERS__CREATE_CHILD_MENU_LOCATION_URI:
+ setCreateChildMenuLocationURI((String)newValue);
+ return;
}
super.eSet(featureID, newValue);
}
@@ -353,6 +472,15 @@ public class GenHandlersImpl extends EObjectImpl implements GenHandlers {
case DomaincontextcodegenPackage.GEN_HANDLERS__ELEMENT_TYPE_ENUMERATOR_PACKAGE:
setElementTypeEnumeratorPackage(ELEMENT_TYPE_ENUMERATOR_PACKAGE_EDEFAULT);
return;
+ case DomaincontextcodegenPackage.GEN_HANDLERS__VISIBLE_CREATE_CHILD_HANDLERS:
+ getVisibleCreateChildHandlers().clear();
+ return;
+ case DomaincontextcodegenPackage.GEN_HANDLERS__PARENT_DOMAIN_CREATE_CHILD:
+ getParentDomainCreateChild().clear();
+ return;
+ case DomaincontextcodegenPackage.GEN_HANDLERS__CREATE_CHILD_MENU_LOCATION_URI:
+ setCreateChildMenuLocationURI(CREATE_CHILD_MENU_LOCATION_URI_EDEFAULT);
+ return;
}
super.eUnset(featureID);
}
@@ -376,6 +504,12 @@ public class GenHandlersImpl extends EObjectImpl implements GenHandlers {
return ELEMENT_TYPE_ENUMERATOR_EDEFAULT == null ? elementTypeEnumerator != null : !ELEMENT_TYPE_ENUMERATOR_EDEFAULT.equals(elementTypeEnumerator);
case DomaincontextcodegenPackage.GEN_HANDLERS__ELEMENT_TYPE_ENUMERATOR_PACKAGE:
return ELEMENT_TYPE_ENUMERATOR_PACKAGE_EDEFAULT == null ? elementTypeEnumeratorPackage != null : !ELEMENT_TYPE_ENUMERATOR_PACKAGE_EDEFAULT.equals(elementTypeEnumeratorPackage);
+ case DomaincontextcodegenPackage.GEN_HANDLERS__VISIBLE_CREATE_CHILD_HANDLERS:
+ return visibleCreateChildHandlers != null && !visibleCreateChildHandlers.isEmpty();
+ case DomaincontextcodegenPackage.GEN_HANDLERS__PARENT_DOMAIN_CREATE_CHILD:
+ return parentDomainCreateChild != null && !parentDomainCreateChild.isEmpty();
+ case DomaincontextcodegenPackage.GEN_HANDLERS__CREATE_CHILD_MENU_LOCATION_URI:
+ return CREATE_CHILD_MENU_LOCATION_URI_EDEFAULT == null ? createChildMenuLocationURI != null : !CREATE_CHILD_MENU_LOCATION_URI_EDEFAULT.equals(createChildMenuLocationURI);
}
return super.eIsSet(featureID);
}
@@ -402,6 +536,8 @@ public class GenHandlersImpl extends EObjectImpl implements GenHandlers {
result.append(elementTypeEnumerator);
result.append(", elementTypeEnumeratorPackage: ");
result.append(elementTypeEnumeratorPackage);
+ result.append(", createChildMenuLocationURI: ");
+ result.append(createChildMenuLocationURI);
result.append(')');
return result.toString();
}
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/GenHelperImpl.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/GenHelperImpl.java
new file mode 100644
index 00000000000..555987f9ff9
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/GenHelperImpl.java
@@ -0,0 +1,177 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen.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.domaincontextcodegen.DomaincontextcodegenPackage;
+import org.eclipse.papyrus.domaincontextcodegen.GenHelper;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Gen Helper</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.GenHelperImpl#getName <em>Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public abstract class GenHelperImpl extends EObjectImpl implements GenHelper {
+
+ /**
+ * 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 GenHelperImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DomaincontextcodegenPackage.Literals.GEN_HELPER;
+ }
+
+ /**
+ * <!-- 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, DomaincontextcodegenPackage.GEN_HELPER__NAME, oldName, name));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.GEN_HELPER__NAME:
+ return getName();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.GEN_HELPER__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 DomaincontextcodegenPackage.GEN_HELPER__NAME:
+ setName(NAME_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.GEN_HELPER__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();
+ }
+
+} //GenHelperImpl
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/GenMatcherImpl.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/GenMatcherImpl.java
new file mode 100644
index 00000000000..f44fb7f5861
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/GenMatcherImpl.java
@@ -0,0 +1,177 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen.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.domaincontextcodegen.DomaincontextcodegenPackage;
+import org.eclipse.papyrus.domaincontextcodegen.GenMatcher;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Gen Matcher</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.GenMatcherImpl#getName <em>Name</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public abstract class GenMatcherImpl extends EObjectImpl implements GenMatcher {
+
+ /**
+ * 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 GenMatcherImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DomaincontextcodegenPackage.Literals.GEN_MATCHER;
+ }
+
+ /**
+ * <!-- 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, DomaincontextcodegenPackage.GEN_MATCHER__NAME, oldName, name));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.GEN_MATCHER__NAME:
+ return getName();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.GEN_MATCHER__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 DomaincontextcodegenPackage.GEN_MATCHER__NAME:
+ setName(NAME_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.GEN_MATCHER__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();
+ }
+
+} //GenMatcherImpl
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/MenuDeclarationImpl.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/MenuDeclarationImpl.java
new file mode 100644
index 00000000000..4f1c456b767
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/MenuDeclarationImpl.java
@@ -0,0 +1,219 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen.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.EObjectImpl;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
+import org.eclipse.papyrus.domaincontextcodegen.Command;
+import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage;
+import org.eclipse.papyrus.domaincontextcodegen.MenuDeclaration;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Menu Declaration</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.MenuDeclarationImpl#getLocationURI <em>Location URI</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.MenuDeclarationImpl#getCommands <em>Commands</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class MenuDeclarationImpl extends EObjectImpl implements MenuDeclaration {
+
+ /**
+ * The default value of the '{@link #getLocationURI() <em>Location URI</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getLocationURI()
+ * @generated
+ * @ordered
+ */
+ protected static final String LOCATION_URI_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getLocationURI() <em>Location URI</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getLocationURI()
+ * @generated
+ * @ordered
+ */
+ protected String locationURI = LOCATION_URI_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getCommands() <em>Commands</em>}' reference list.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getCommands()
+ * @generated
+ * @ordered
+ */
+ protected EList<Command> commands;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected MenuDeclarationImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DomaincontextcodegenPackage.Literals.MENU_DECLARATION;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public String getLocationURI() {
+ return locationURI;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setLocationURI(String newLocationURI) {
+ String oldLocationURI = locationURI;
+ locationURI = newLocationURI;
+ if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.MENU_DECLARATION__LOCATION_URI, oldLocationURI, locationURI));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EList<Command> getCommands() {
+ if(commands == null) {
+ commands = new EObjectResolvingEList<Command>(Command.class, this, DomaincontextcodegenPackage.MENU_DECLARATION__COMMANDS);
+ }
+ return commands;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.MENU_DECLARATION__LOCATION_URI:
+ return getLocationURI();
+ case DomaincontextcodegenPackage.MENU_DECLARATION__COMMANDS:
+ return getCommands();
+ }
+ 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 DomaincontextcodegenPackage.MENU_DECLARATION__LOCATION_URI:
+ setLocationURI((String)newValue);
+ return;
+ case DomaincontextcodegenPackage.MENU_DECLARATION__COMMANDS:
+ getCommands().clear();
+ getCommands().addAll((Collection<? extends Command>)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.MENU_DECLARATION__LOCATION_URI:
+ setLocationURI(LOCATION_URI_EDEFAULT);
+ return;
+ case DomaincontextcodegenPackage.MENU_DECLARATION__COMMANDS:
+ getCommands().clear();
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.MENU_DECLARATION__LOCATION_URI:
+ return LOCATION_URI_EDEFAULT == null ? locationURI != null : !LOCATION_URI_EDEFAULT.equals(locationURI);
+ case DomaincontextcodegenPackage.MENU_DECLARATION__COMMANDS:
+ return commands != null && !commands.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(" (locationURI: ");
+ result.append(locationURI);
+ result.append(')');
+ return result.toString();
+ }
+
+} //MenuDeclarationImpl
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/MetaClassTypeImpl.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/MetaClassTypeImpl.java
new file mode 100644
index 00000000000..d103975e4ff
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/MetaClassTypeImpl.java
@@ -0,0 +1,168 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen.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.papyrus.domaincontextcodegen.DomaincontextcodegenPackage;
+import org.eclipse.papyrus.domaincontextcodegen.MetaClassType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Meta Class Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.MetaClassTypeImpl#getMetaClass <em>Meta Class</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class MetaClassTypeImpl extends ElementTypeImpl implements MetaClassType {
+
+ /**
+ * The cached value of the '{@link #getMetaClass() <em>Meta Class</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getMetaClass()
+ * @generated
+ * @ordered
+ */
+ protected EClass metaClass;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected MetaClassTypeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DomaincontextcodegenPackage.Literals.META_CLASS_TYPE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EClass getMetaClass() {
+ if(metaClass != null && metaClass.eIsProxy()) {
+ InternalEObject oldMetaClass = (InternalEObject)metaClass;
+ metaClass = (EClass)eResolveProxy(oldMetaClass);
+ if(metaClass != oldMetaClass) {
+ if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DomaincontextcodegenPackage.META_CLASS_TYPE__META_CLASS, oldMetaClass, metaClass));
+ }
+ }
+ return metaClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public EClass basicGetMetaClass() {
+ return metaClass;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setMetaClass(EClass newMetaClass) {
+ EClass oldMetaClass = metaClass;
+ metaClass = newMetaClass;
+ if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.META_CLASS_TYPE__META_CLASS, oldMetaClass, metaClass));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.META_CLASS_TYPE__META_CLASS:
+ if(resolve)
+ return getMetaClass();
+ return basicGetMetaClass();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.META_CLASS_TYPE__META_CLASS:
+ setMetaClass((EClass)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.META_CLASS_TYPE__META_CLASS:
+ setMetaClass((EClass)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.META_CLASS_TYPE__META_CLASS:
+ return metaClass != null;
+ }
+ return super.eIsSet(featureID);
+ }
+
+} //MetaClassTypeImpl
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/SpecializationTypeImpl.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/SpecializationTypeImpl.java
new file mode 100644
index 00000000000..933dedcc145
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/SpecializationTypeImpl.java
@@ -0,0 +1,405 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen.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.domaincontextcodegen.DomaincontextcodegenPackage;
+import org.eclipse.papyrus.domaincontextcodegen.ElementType;
+import org.eclipse.papyrus.domaincontextcodegen.GenHelper;
+import org.eclipse.papyrus.domaincontextcodegen.GenMatcher;
+import org.eclipse.papyrus.domaincontextcodegen.SpecializationType;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Specialization Type</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.SpecializationTypeImpl#getRef <em>Ref</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.SpecializationTypeImpl#getMatcher <em>Matcher</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.SpecializationTypeImpl#getGenMatcher <em>Gen Matcher</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.SpecializationTypeImpl#getGenHelper <em>Gen Helper</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class SpecializationTypeImpl extends ElementTypeImpl implements SpecializationType {
+
+ /**
+ * The cached value of the '{@link #getRef() <em>Ref</em>}' reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getRef()
+ * @generated
+ * @ordered
+ */
+ protected ElementType ref;
+
+ /**
+ * The default value of the '{@link #getMatcher() <em>Matcher</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getMatcher()
+ * @generated
+ * @ordered
+ */
+ protected static final String MATCHER_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getMatcher() <em>Matcher</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getMatcher()
+ * @generated
+ * @ordered
+ */
+ protected String matcher = MATCHER_EDEFAULT;
+
+ /**
+ * The cached value of the '{@link #getGenMatcher() <em>Gen Matcher</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getGenMatcher()
+ * @generated
+ * @ordered
+ */
+ protected GenMatcher genMatcher;
+
+ /**
+ * The cached value of the '{@link #getGenHelper() <em>Gen Helper</em>}' containment reference.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getGenHelper()
+ * @generated
+ * @ordered
+ */
+ protected GenHelper genHelper;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected SpecializationTypeImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DomaincontextcodegenPackage.Literals.SPECIALIZATION_TYPE;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ElementType getRef() {
+ if(ref != null && ref.eIsProxy()) {
+ InternalEObject oldRef = (InternalEObject)ref;
+ ref = (ElementType)eResolveProxy(oldRef);
+ if(ref != oldRef) {
+ if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.RESOLVE, DomaincontextcodegenPackage.SPECIALIZATION_TYPE__REF, oldRef, ref));
+ }
+ }
+ return ref;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public ElementType basicGetRef() {
+ return ref;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setRef(ElementType newRef) {
+ ElementType oldRef = ref;
+ ref = newRef;
+ if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.SPECIALIZATION_TYPE__REF, oldRef, ref));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public String getMatcher() {
+ return matcher;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setMatcher(String newMatcher) {
+ String oldMatcher = matcher;
+ matcher = newMatcher;
+ if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.SPECIALIZATION_TYPE__MATCHER, oldMatcher, matcher));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public GenMatcher getGenMatcher() {
+ return genMatcher;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public NotificationChain basicSetGenMatcher(GenMatcher newGenMatcher, NotificationChain msgs) {
+ GenMatcher oldGenMatcher = genMatcher;
+ genMatcher = newGenMatcher;
+ if(eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.SPECIALIZATION_TYPE__GEN_MATCHER, oldGenMatcher, newGenMatcher);
+ if(msgs == null)
+ msgs = notification;
+ else
+ msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setGenMatcher(GenMatcher newGenMatcher) {
+ if(newGenMatcher != genMatcher) {
+ NotificationChain msgs = null;
+ if(genMatcher != null)
+ msgs = ((InternalEObject)genMatcher).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - DomaincontextcodegenPackage.SPECIALIZATION_TYPE__GEN_MATCHER, null, msgs);
+ if(newGenMatcher != null)
+ msgs = ((InternalEObject)newGenMatcher).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - DomaincontextcodegenPackage.SPECIALIZATION_TYPE__GEN_MATCHER, null, msgs);
+ msgs = basicSetGenMatcher(newGenMatcher, msgs);
+ if(msgs != null)
+ msgs.dispatch();
+ } else if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.SPECIALIZATION_TYPE__GEN_MATCHER, newGenMatcher, newGenMatcher));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public GenHelper getGenHelper() {
+ return genHelper;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public NotificationChain basicSetGenHelper(GenHelper newGenHelper, NotificationChain msgs) {
+ GenHelper oldGenHelper = genHelper;
+ genHelper = newGenHelper;
+ if(eNotificationRequired()) {
+ ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.SPECIALIZATION_TYPE__GEN_HELPER, oldGenHelper, newGenHelper);
+ if(msgs == null)
+ msgs = notification;
+ else
+ msgs.add(notification);
+ }
+ return msgs;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setGenHelper(GenHelper newGenHelper) {
+ if(newGenHelper != genHelper) {
+ NotificationChain msgs = null;
+ if(genHelper != null)
+ msgs = ((InternalEObject)genHelper).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - DomaincontextcodegenPackage.SPECIALIZATION_TYPE__GEN_HELPER, null, msgs);
+ if(newGenHelper != null)
+ msgs = ((InternalEObject)newGenHelper).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - DomaincontextcodegenPackage.SPECIALIZATION_TYPE__GEN_HELPER, null, msgs);
+ msgs = basicSetGenHelper(newGenHelper, msgs);
+ if(msgs != null)
+ msgs.dispatch();
+ } else if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.SPECIALIZATION_TYPE__GEN_HELPER, newGenHelper, newGenHelper));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.SPECIALIZATION_TYPE__GEN_MATCHER:
+ return basicSetGenMatcher(null, msgs);
+ case DomaincontextcodegenPackage.SPECIALIZATION_TYPE__GEN_HELPER:
+ return basicSetGenHelper(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 DomaincontextcodegenPackage.SPECIALIZATION_TYPE__REF:
+ if(resolve)
+ return getRef();
+ return basicGetRef();
+ case DomaincontextcodegenPackage.SPECIALIZATION_TYPE__MATCHER:
+ return getMatcher();
+ case DomaincontextcodegenPackage.SPECIALIZATION_TYPE__GEN_MATCHER:
+ return getGenMatcher();
+ case DomaincontextcodegenPackage.SPECIALIZATION_TYPE__GEN_HELPER:
+ return getGenHelper();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.SPECIALIZATION_TYPE__REF:
+ setRef((ElementType)newValue);
+ return;
+ case DomaincontextcodegenPackage.SPECIALIZATION_TYPE__MATCHER:
+ setMatcher((String)newValue);
+ return;
+ case DomaincontextcodegenPackage.SPECIALIZATION_TYPE__GEN_MATCHER:
+ setGenMatcher((GenMatcher)newValue);
+ return;
+ case DomaincontextcodegenPackage.SPECIALIZATION_TYPE__GEN_HELPER:
+ setGenHelper((GenHelper)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.SPECIALIZATION_TYPE__REF:
+ setRef((ElementType)null);
+ return;
+ case DomaincontextcodegenPackage.SPECIALIZATION_TYPE__MATCHER:
+ setMatcher(MATCHER_EDEFAULT);
+ return;
+ case DomaincontextcodegenPackage.SPECIALIZATION_TYPE__GEN_MATCHER:
+ setGenMatcher((GenMatcher)null);
+ return;
+ case DomaincontextcodegenPackage.SPECIALIZATION_TYPE__GEN_HELPER:
+ setGenHelper((GenHelper)null);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.SPECIALIZATION_TYPE__REF:
+ return ref != null;
+ case DomaincontextcodegenPackage.SPECIALIZATION_TYPE__MATCHER:
+ return MATCHER_EDEFAULT == null ? matcher != null : !MATCHER_EDEFAULT.equals(matcher);
+ case DomaincontextcodegenPackage.SPECIALIZATION_TYPE__GEN_MATCHER:
+ return genMatcher != null;
+ case DomaincontextcodegenPackage.SPECIALIZATION_TYPE__GEN_HELPER:
+ return genHelper != 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(" (matcher: ");
+ result.append(matcher);
+ result.append(')');
+ return result.toString();
+ }
+
+} //SpecializationTypeImpl
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/StereotypedElementHelperImpl.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/StereotypedElementHelperImpl.java
new file mode 100644
index 00000000000..f19783d7a4c
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/StereotypedElementHelperImpl.java
@@ -0,0 +1,350 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen.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.domaincontextcodegen.DomaincontextcodegenPackage;
+import org.eclipse.papyrus.domaincontextcodegen.StereotypedElementHelper;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Stereotyped Element Helper</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.StereotypedElementHelperImpl#getStereotypeName <em>Stereotype Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.StereotypedElementHelperImpl#getStereotypePackage <em>Stereotype Package</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.StereotypedElementHelperImpl#getBaseElementName <em>Base Element Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.StereotypedElementHelperImpl#getBaseElementPackage <em>Base Element Package</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class StereotypedElementHelperImpl extends GenHelperImpl implements StereotypedElementHelper {
+
+ /**
+ * The default value of the '{@link #getStereotypeName() <em>Stereotype Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getStereotypeName()
+ * @generated
+ * @ordered
+ */
+ protected static final String STEREOTYPE_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getStereotypeName() <em>Stereotype Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getStereotypeName()
+ * @generated
+ * @ordered
+ */
+ protected String stereotypeName = STEREOTYPE_NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getStereotypePackage() <em>Stereotype Package</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getStereotypePackage()
+ * @generated
+ * @ordered
+ */
+ protected static final String STEREOTYPE_PACKAGE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getStereotypePackage() <em>Stereotype Package</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getStereotypePackage()
+ * @generated
+ * @ordered
+ */
+ protected String stereotypePackage = STEREOTYPE_PACKAGE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getBaseElementName() <em>Base Element Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getBaseElementName()
+ * @generated
+ * @ordered
+ */
+ protected static final String BASE_ELEMENT_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getBaseElementName() <em>Base Element Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getBaseElementName()
+ * @generated
+ * @ordered
+ */
+ protected String baseElementName = BASE_ELEMENT_NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getBaseElementPackage() <em>Base Element Package</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getBaseElementPackage()
+ * @generated
+ * @ordered
+ */
+ protected static final String BASE_ELEMENT_PACKAGE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getBaseElementPackage() <em>Base Element Package</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getBaseElementPackage()
+ * @generated
+ * @ordered
+ */
+ protected String baseElementPackage = BASE_ELEMENT_PACKAGE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected StereotypedElementHelperImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DomaincontextcodegenPackage.Literals.STEREOTYPED_ELEMENT_HELPER;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public String getStereotypeName() {
+ return stereotypeName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setStereotypeName(String newStereotypeName) {
+ String oldStereotypeName = stereotypeName;
+ stereotypeName = newStereotypeName;
+ if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_HELPER__STEREOTYPE_NAME, oldStereotypeName, stereotypeName));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public String getStereotypePackage() {
+ return stereotypePackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setStereotypePackage(String newStereotypePackage) {
+ String oldStereotypePackage = stereotypePackage;
+ stereotypePackage = newStereotypePackage;
+ if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_HELPER__STEREOTYPE_PACKAGE, oldStereotypePackage, stereotypePackage));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public String getBaseElementName() {
+ return baseElementName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setBaseElementName(String newBaseElementName) {
+ String oldBaseElementName = baseElementName;
+ baseElementName = newBaseElementName;
+ if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_HELPER__BASE_ELEMENT_NAME, oldBaseElementName, baseElementName));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public String getBaseElementPackage() {
+ return baseElementPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setBaseElementPackage(String newBaseElementPackage) {
+ String oldBaseElementPackage = baseElementPackage;
+ baseElementPackage = newBaseElementPackage;
+ if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_HELPER__BASE_ELEMENT_PACKAGE, oldBaseElementPackage, baseElementPackage));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_HELPER__STEREOTYPE_NAME:
+ return getStereotypeName();
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_HELPER__STEREOTYPE_PACKAGE:
+ return getStereotypePackage();
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_HELPER__BASE_ELEMENT_NAME:
+ return getBaseElementName();
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_HELPER__BASE_ELEMENT_PACKAGE:
+ return getBaseElementPackage();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_HELPER__STEREOTYPE_NAME:
+ setStereotypeName((String)newValue);
+ return;
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_HELPER__STEREOTYPE_PACKAGE:
+ setStereotypePackage((String)newValue);
+ return;
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_HELPER__BASE_ELEMENT_NAME:
+ setBaseElementName((String)newValue);
+ return;
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_HELPER__BASE_ELEMENT_PACKAGE:
+ setBaseElementPackage((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_HELPER__STEREOTYPE_NAME:
+ setStereotypeName(STEREOTYPE_NAME_EDEFAULT);
+ return;
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_HELPER__STEREOTYPE_PACKAGE:
+ setStereotypePackage(STEREOTYPE_PACKAGE_EDEFAULT);
+ return;
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_HELPER__BASE_ELEMENT_NAME:
+ setBaseElementName(BASE_ELEMENT_NAME_EDEFAULT);
+ return;
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_HELPER__BASE_ELEMENT_PACKAGE:
+ setBaseElementPackage(BASE_ELEMENT_PACKAGE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_HELPER__STEREOTYPE_NAME:
+ return STEREOTYPE_NAME_EDEFAULT == null ? stereotypeName != null : !STEREOTYPE_NAME_EDEFAULT.equals(stereotypeName);
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_HELPER__STEREOTYPE_PACKAGE:
+ return STEREOTYPE_PACKAGE_EDEFAULT == null ? stereotypePackage != null : !STEREOTYPE_PACKAGE_EDEFAULT.equals(stereotypePackage);
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_HELPER__BASE_ELEMENT_NAME:
+ return BASE_ELEMENT_NAME_EDEFAULT == null ? baseElementName != null : !BASE_ELEMENT_NAME_EDEFAULT.equals(baseElementName);
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_HELPER__BASE_ELEMENT_PACKAGE:
+ return BASE_ELEMENT_PACKAGE_EDEFAULT == null ? baseElementPackage != null : !BASE_ELEMENT_PACKAGE_EDEFAULT.equals(baseElementPackage);
+ }
+ 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(" (stereotypeName: ");
+ result.append(stereotypeName);
+ result.append(", stereotypePackage: ");
+ result.append(stereotypePackage);
+ result.append(", baseElementName: ");
+ result.append(baseElementName);
+ result.append(", baseElementPackage: ");
+ result.append(baseElementPackage);
+ result.append(')');
+ return result.toString();
+ }
+
+} //StereotypedElementHelperImpl
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/StereotypedElementMatcherImpl.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/StereotypedElementMatcherImpl.java
new file mode 100644
index 00000000000..5456f04c403
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/impl/StereotypedElementMatcherImpl.java
@@ -0,0 +1,350 @@
+/**
+ * <copyright>
+ * </copyright>
+ *
+ * $Id$
+ */
+package org.eclipse.papyrus.domaincontextcodegen.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.domaincontextcodegen.DomaincontextcodegenPackage;
+import org.eclipse.papyrus.domaincontextcodegen.StereotypedElementMatcher;
+
+/**
+ * <!-- begin-user-doc -->
+ * An implementation of the model object '<em><b>Stereotyped Element Matcher</b></em>'.
+ * <!-- end-user-doc -->
+ * <p>
+ * The following features are implemented:
+ * <ul>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.StereotypedElementMatcherImpl#getStereotypeName <em>Stereotype Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.StereotypedElementMatcherImpl#getStereotypePackage <em>Stereotype Package</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.StereotypedElementMatcherImpl#getBaseElementName <em>Base Element Name</em>}</li>
+ * <li>{@link org.eclipse.papyrus.domaincontextcodegen.impl.StereotypedElementMatcherImpl#getBaseElementPackage <em>Base Element Package</em>}</li>
+ * </ul>
+ * </p>
+ *
+ * @generated
+ */
+public class StereotypedElementMatcherImpl extends GenMatcherImpl implements StereotypedElementMatcher {
+
+ /**
+ * The default value of the '{@link #getStereotypeName() <em>Stereotype Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getStereotypeName()
+ * @generated
+ * @ordered
+ */
+ protected static final String STEREOTYPE_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getStereotypeName() <em>Stereotype Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getStereotypeName()
+ * @generated
+ * @ordered
+ */
+ protected String stereotypeName = STEREOTYPE_NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getStereotypePackage() <em>Stereotype Package</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getStereotypePackage()
+ * @generated
+ * @ordered
+ */
+ protected static final String STEREOTYPE_PACKAGE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getStereotypePackage() <em>Stereotype Package</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getStereotypePackage()
+ * @generated
+ * @ordered
+ */
+ protected String stereotypePackage = STEREOTYPE_PACKAGE_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getBaseElementName() <em>Base Element Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getBaseElementName()
+ * @generated
+ * @ordered
+ */
+ protected static final String BASE_ELEMENT_NAME_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getBaseElementName() <em>Base Element Name</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getBaseElementName()
+ * @generated
+ * @ordered
+ */
+ protected String baseElementName = BASE_ELEMENT_NAME_EDEFAULT;
+
+ /**
+ * The default value of the '{@link #getBaseElementPackage() <em>Base Element Package</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getBaseElementPackage()
+ * @generated
+ * @ordered
+ */
+ protected static final String BASE_ELEMENT_PACKAGE_EDEFAULT = null;
+
+ /**
+ * The cached value of the '{@link #getBaseElementPackage() <em>Base Element Package</em>}' attribute.
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @see #getBaseElementPackage()
+ * @generated
+ * @ordered
+ */
+ protected String baseElementPackage = BASE_ELEMENT_PACKAGE_EDEFAULT;
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ protected StereotypedElementMatcherImpl() {
+ super();
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ protected EClass eStaticClass() {
+ return DomaincontextcodegenPackage.Literals.STEREOTYPED_ELEMENT_MATCHER;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public String getStereotypeName() {
+ return stereotypeName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setStereotypeName(String newStereotypeName) {
+ String oldStereotypeName = stereotypeName;
+ stereotypeName = newStereotypeName;
+ if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_MATCHER__STEREOTYPE_NAME, oldStereotypeName, stereotypeName));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public String getStereotypePackage() {
+ return stereotypePackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setStereotypePackage(String newStereotypePackage) {
+ String oldStereotypePackage = stereotypePackage;
+ stereotypePackage = newStereotypePackage;
+ if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_MATCHER__STEREOTYPE_PACKAGE, oldStereotypePackage, stereotypePackage));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public String getBaseElementName() {
+ return baseElementName;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setBaseElementName(String newBaseElementName) {
+ String oldBaseElementName = baseElementName;
+ baseElementName = newBaseElementName;
+ if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_MATCHER__BASE_ELEMENT_NAME, oldBaseElementName, baseElementName));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public String getBaseElementPackage() {
+ return baseElementPackage;
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ public void setBaseElementPackage(String newBaseElementPackage) {
+ String oldBaseElementPackage = baseElementPackage;
+ baseElementPackage = newBaseElementPackage;
+ if(eNotificationRequired())
+ eNotify(new ENotificationImpl(this, Notification.SET, DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_MATCHER__BASE_ELEMENT_PACKAGE, oldBaseElementPackage, baseElementPackage));
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public Object eGet(int featureID, boolean resolve, boolean coreType) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_MATCHER__STEREOTYPE_NAME:
+ return getStereotypeName();
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_MATCHER__STEREOTYPE_PACKAGE:
+ return getStereotypePackage();
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_MATCHER__BASE_ELEMENT_NAME:
+ return getBaseElementName();
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_MATCHER__BASE_ELEMENT_PACKAGE:
+ return getBaseElementPackage();
+ }
+ return super.eGet(featureID, resolve, coreType);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eSet(int featureID, Object newValue) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_MATCHER__STEREOTYPE_NAME:
+ setStereotypeName((String)newValue);
+ return;
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_MATCHER__STEREOTYPE_PACKAGE:
+ setStereotypePackage((String)newValue);
+ return;
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_MATCHER__BASE_ELEMENT_NAME:
+ setBaseElementName((String)newValue);
+ return;
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_MATCHER__BASE_ELEMENT_PACKAGE:
+ setBaseElementPackage((String)newValue);
+ return;
+ }
+ super.eSet(featureID, newValue);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public void eUnset(int featureID) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_MATCHER__STEREOTYPE_NAME:
+ setStereotypeName(STEREOTYPE_NAME_EDEFAULT);
+ return;
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_MATCHER__STEREOTYPE_PACKAGE:
+ setStereotypePackage(STEREOTYPE_PACKAGE_EDEFAULT);
+ return;
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_MATCHER__BASE_ELEMENT_NAME:
+ setBaseElementName(BASE_ELEMENT_NAME_EDEFAULT);
+ return;
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_MATCHER__BASE_ELEMENT_PACKAGE:
+ setBaseElementPackage(BASE_ELEMENT_PACKAGE_EDEFAULT);
+ return;
+ }
+ super.eUnset(featureID);
+ }
+
+ /**
+ * <!-- begin-user-doc -->
+ * <!-- end-user-doc -->
+ *
+ * @generated
+ */
+ @Override
+ public boolean eIsSet(int featureID) {
+ switch(featureID) {
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_MATCHER__STEREOTYPE_NAME:
+ return STEREOTYPE_NAME_EDEFAULT == null ? stereotypeName != null : !STEREOTYPE_NAME_EDEFAULT.equals(stereotypeName);
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_MATCHER__STEREOTYPE_PACKAGE:
+ return STEREOTYPE_PACKAGE_EDEFAULT == null ? stereotypePackage != null : !STEREOTYPE_PACKAGE_EDEFAULT.equals(stereotypePackage);
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_MATCHER__BASE_ELEMENT_NAME:
+ return BASE_ELEMENT_NAME_EDEFAULT == null ? baseElementName != null : !BASE_ELEMENT_NAME_EDEFAULT.equals(baseElementName);
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_MATCHER__BASE_ELEMENT_PACKAGE:
+ return BASE_ELEMENT_PACKAGE_EDEFAULT == null ? baseElementPackage != null : !BASE_ELEMENT_PACKAGE_EDEFAULT.equals(baseElementPackage);
+ }
+ 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(" (stereotypeName: ");
+ result.append(stereotypeName);
+ result.append(", stereotypePackage: ");
+ result.append(stereotypePackage);
+ result.append(", baseElementName: ");
+ result.append(baseElementName);
+ result.append(", baseElementPackage: ");
+ result.append(baseElementPackage);
+ result.append(')');
+ return result.toString();
+ }
+
+} //StereotypedElementMatcherImpl
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/util/DomaincontextcodegenAdapterFactory.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/util/DomaincontextcodegenAdapterFactory.java
index 5a28d76365a..c4717c77403 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/util/DomaincontextcodegenAdapterFactory.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/util/DomaincontextcodegenAdapterFactory.java
@@ -10,13 +10,25 @@ 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.domaincontextcodegen.Advice;
import org.eclipse.papyrus.domaincontextcodegen.AdviceBinding;
import org.eclipse.papyrus.domaincontextcodegen.Binding;
+import org.eclipse.papyrus.domaincontextcodegen.Command;
+import org.eclipse.papyrus.domaincontextcodegen.CommandDeclaration;
import org.eclipse.papyrus.domaincontextcodegen.DomainContext;
import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage;
import org.eclipse.papyrus.domaincontextcodegen.ElementType;
+import org.eclipse.papyrus.domaincontextcodegen.ElementTypeBinding;
+import org.eclipse.papyrus.domaincontextcodegen.ElementTypeBindings;
import org.eclipse.papyrus.domaincontextcodegen.ElementTypes;
import org.eclipse.papyrus.domaincontextcodegen.GenHandlers;
+import org.eclipse.papyrus.domaincontextcodegen.GenHelper;
+import org.eclipse.papyrus.domaincontextcodegen.GenMatcher;
+import org.eclipse.papyrus.domaincontextcodegen.MenuDeclaration;
+import org.eclipse.papyrus.domaincontextcodegen.MetaClassType;
+import org.eclipse.papyrus.domaincontextcodegen.SpecializationType;
+import org.eclipse.papyrus.domaincontextcodegen.StereotypedElementHelper;
+import org.eclipse.papyrus.domaincontextcodegen.StereotypedElementMatcher;
/**
* <!-- begin-user-doc -->
@@ -96,8 +108,23 @@ public class DomaincontextcodegenAdapterFactory extends AdapterFactoryImpl {
}
@Override
- public Adapter caseAdviceBinding(AdviceBinding object) {
- return createAdviceBindingAdapter();
+ public Adapter caseMetaClassType(MetaClassType object) {
+ return createMetaClassTypeAdapter();
+ }
+
+ @Override
+ public Adapter caseSpecializationType(SpecializationType object) {
+ return createSpecializationTypeAdapter();
+ }
+
+ @Override
+ public Adapter caseAdvice(Advice object) {
+ return createAdviceAdapter();
+ }
+
+ @Override
+ public Adapter caseElementTypeBindings(ElementTypeBindings object) {
+ return createElementTypeBindingsAdapter();
}
@Override
@@ -106,11 +133,56 @@ public class DomaincontextcodegenAdapterFactory extends AdapterFactoryImpl {
}
@Override
+ public Adapter caseElementTypeBinding(ElementTypeBinding object) {
+ return createElementTypeBindingAdapter();
+ }
+
+ @Override
+ public Adapter caseAdviceBinding(AdviceBinding object) {
+ return createAdviceBindingAdapter();
+ }
+
+ @Override
public Adapter caseGenHandlers(GenHandlers object) {
return createGenHandlersAdapter();
}
@Override
+ public Adapter caseGenMatcher(GenMatcher object) {
+ return createGenMatcherAdapter();
+ }
+
+ @Override
+ public Adapter caseGenHelper(GenHelper object) {
+ return createGenHelperAdapter();
+ }
+
+ @Override
+ public Adapter caseStereotypedElementMatcher(StereotypedElementMatcher object) {
+ return createStereotypedElementMatcherAdapter();
+ }
+
+ @Override
+ public Adapter caseStereotypedElementHelper(StereotypedElementHelper object) {
+ return createStereotypedElementHelperAdapter();
+ }
+
+ @Override
+ public Adapter caseMenuDeclaration(MenuDeclaration object) {
+ return createMenuDeclarationAdapter();
+ }
+
+ @Override
+ public Adapter caseCommandDeclaration(CommandDeclaration object) {
+ return createCommandDeclarationAdapter();
+ }
+
+ @Override
+ public Adapter caseCommand(Command object) {
+ return createCommandAdapter();
+ }
+
+ @Override
public Adapter defaultCase(EObject object) {
return createEObjectAdapter();
}
@@ -131,7 +203,6 @@ public class DomaincontextcodegenAdapterFactory extends AdapterFactoryImpl {
return modelSwitch.doSwitch((EObject)target);
}
-
/**
* Creates a new adapter for an object of class '{@link org.eclipse.papyrus.domaincontextcodegen.DomainContext <em>Domain Context</em>}'.
* <!-- begin-user-doc -->
@@ -178,6 +249,68 @@ public class DomaincontextcodegenAdapterFactory extends AdapterFactoryImpl {
}
/**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.domaincontextcodegen.MetaClassType <em>Meta Class Type</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.domaincontextcodegen.MetaClassType
+ * @generated
+ */
+ public Adapter createMetaClassTypeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.domaincontextcodegen.SpecializationType <em>Specialization Type</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.domaincontextcodegen.SpecializationType
+ * @generated
+ */
+ public Adapter createSpecializationTypeAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.domaincontextcodegen.Advice <em>Advice</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.domaincontextcodegen.Advice
+ * @generated
+ */
+ public Adapter createAdviceAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.domaincontextcodegen.ElementTypeBindings
+ * <em>Element Type Bindings</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.domaincontextcodegen.ElementTypeBindings
+ * @generated
+ */
+ public Adapter createElementTypeBindingsAdapter() {
+ return null;
+ }
+
+ /**
* Creates a new adapter for an object of class '{@link org.eclipse.papyrus.domaincontextcodegen.AdviceBinding <em>Advice Binding</em>}'.
* <!-- begin-user-doc -->
* This default implementation returns null so that we can easily ignore cases;
@@ -208,6 +341,22 @@ public class DomaincontextcodegenAdapterFactory extends AdapterFactoryImpl {
}
/**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.domaincontextcodegen.ElementTypeBinding <em>Element Type Binding</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.domaincontextcodegen.ElementTypeBinding
+ * @generated
+ */
+ public Adapter createElementTypeBindingAdapter() {
+ return null;
+ }
+
+ /**
* Creates a new adapter for an object of class '{@link org.eclipse.papyrus.domaincontextcodegen.GenHandlers <em>Gen Handlers</em>}'.
* <!-- begin-user-doc -->
* This default implementation returns null so that we can easily ignore cases;
@@ -223,6 +372,114 @@ public class DomaincontextcodegenAdapterFactory extends AdapterFactoryImpl {
}
/**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.domaincontextcodegen.GenMatcher <em>Gen Matcher</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.domaincontextcodegen.GenMatcher
+ * @generated
+ */
+ public Adapter createGenMatcherAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.domaincontextcodegen.GenHelper <em>Gen Helper</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.domaincontextcodegen.GenHelper
+ * @generated
+ */
+ public Adapter createGenHelperAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementMatcher
+ * <em>Stereotyped Element Matcher</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.domaincontextcodegen.StereotypedElementMatcher
+ * @generated
+ */
+ public Adapter createStereotypedElementMatcherAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.domaincontextcodegen.StereotypedElementHelper
+ * <em>Stereotyped Element Helper</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.domaincontextcodegen.StereotypedElementHelper
+ * @generated
+ */
+ public Adapter createStereotypedElementHelperAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.domaincontextcodegen.MenuDeclaration <em>Menu Declaration</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.domaincontextcodegen.MenuDeclaration
+ * @generated
+ */
+ public Adapter createMenuDeclarationAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.domaincontextcodegen.CommandDeclaration <em>Command Declaration</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.domaincontextcodegen.CommandDeclaration
+ * @generated
+ */
+ public Adapter createCommandDeclarationAdapter() {
+ return null;
+ }
+
+ /**
+ * Creates a new adapter for an object of class '{@link org.eclipse.papyrus.domaincontextcodegen.Command <em>Command</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.domaincontextcodegen.Command
+ * @generated
+ */
+ public Adapter createCommandAdapter() {
+ return null;
+ }
+
+ /**
* Creates a new adapter for the default case.
* <!-- begin-user-doc -->
* This default implementation returns null.
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/util/DomaincontextcodegenSwitch.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/util/DomaincontextcodegenSwitch.java
index 7343b9ed0ac..2e0803f0ceb 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/util/DomaincontextcodegenSwitch.java
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/src/org/eclipse/papyrus/domaincontextcodegen/util/DomaincontextcodegenSwitch.java
@@ -10,13 +10,25 @@ import java.util.List;
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.ecore.EObject;
+import org.eclipse.papyrus.domaincontextcodegen.Advice;
import org.eclipse.papyrus.domaincontextcodegen.AdviceBinding;
import org.eclipse.papyrus.domaincontextcodegen.Binding;
+import org.eclipse.papyrus.domaincontextcodegen.Command;
+import org.eclipse.papyrus.domaincontextcodegen.CommandDeclaration;
import org.eclipse.papyrus.domaincontextcodegen.DomainContext;
import org.eclipse.papyrus.domaincontextcodegen.DomaincontextcodegenPackage;
import org.eclipse.papyrus.domaincontextcodegen.ElementType;
+import org.eclipse.papyrus.domaincontextcodegen.ElementTypeBinding;
+import org.eclipse.papyrus.domaincontextcodegen.ElementTypeBindings;
import org.eclipse.papyrus.domaincontextcodegen.ElementTypes;
import org.eclipse.papyrus.domaincontextcodegen.GenHandlers;
+import org.eclipse.papyrus.domaincontextcodegen.GenHelper;
+import org.eclipse.papyrus.domaincontextcodegen.GenMatcher;
+import org.eclipse.papyrus.domaincontextcodegen.MenuDeclaration;
+import org.eclipse.papyrus.domaincontextcodegen.MetaClassType;
+import org.eclipse.papyrus.domaincontextcodegen.SpecializationType;
+import org.eclipse.papyrus.domaincontextcodegen.StereotypedElementHelper;
+import org.eclipse.papyrus.domaincontextcodegen.StereotypedElementMatcher;
/**
* <!-- begin-user-doc -->
@@ -118,10 +130,38 @@ public class DomaincontextcodegenSwitch<T> {
result = defaultCase(theEObject);
return result;
}
- case DomaincontextcodegenPackage.ADVICE_BINDING:
+ case DomaincontextcodegenPackage.META_CLASS_TYPE:
{
- AdviceBinding adviceBinding = (AdviceBinding)theEObject;
- T result = caseAdviceBinding(adviceBinding);
+ MetaClassType metaClassType = (MetaClassType)theEObject;
+ T result = caseMetaClassType(metaClassType);
+ if(result == null)
+ result = caseElementType(metaClassType);
+ if(result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case DomaincontextcodegenPackage.SPECIALIZATION_TYPE:
+ {
+ SpecializationType specializationType = (SpecializationType)theEObject;
+ T result = caseSpecializationType(specializationType);
+ if(result == null)
+ result = caseElementType(specializationType);
+ if(result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case DomaincontextcodegenPackage.ADVICE:
+ {
+ Advice advice = (Advice)theEObject;
+ T result = caseAdvice(advice);
+ if(result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case DomaincontextcodegenPackage.ELEMENT_TYPE_BINDINGS:
+ {
+ ElementTypeBindings elementTypeBindings = (ElementTypeBindings)theEObject;
+ T result = caseElementTypeBindings(elementTypeBindings);
if(result == null)
result = defaultCase(theEObject);
return result;
@@ -134,6 +174,26 @@ public class DomaincontextcodegenSwitch<T> {
result = defaultCase(theEObject);
return result;
}
+ case DomaincontextcodegenPackage.ELEMENT_TYPE_BINDING:
+ {
+ ElementTypeBinding elementTypeBinding = (ElementTypeBinding)theEObject;
+ T result = caseElementTypeBinding(elementTypeBinding);
+ if(result == null)
+ result = caseBinding(elementTypeBinding);
+ if(result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case DomaincontextcodegenPackage.ADVICE_BINDING:
+ {
+ AdviceBinding adviceBinding = (AdviceBinding)theEObject;
+ T result = caseAdviceBinding(adviceBinding);
+ if(result == null)
+ result = caseBinding(adviceBinding);
+ if(result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
case DomaincontextcodegenPackage.GEN_HANDLERS:
{
GenHandlers genHandlers = (GenHandlers)theEObject;
@@ -142,6 +202,66 @@ public class DomaincontextcodegenSwitch<T> {
result = defaultCase(theEObject);
return result;
}
+ case DomaincontextcodegenPackage.GEN_MATCHER:
+ {
+ GenMatcher genMatcher = (GenMatcher)theEObject;
+ T result = caseGenMatcher(genMatcher);
+ if(result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case DomaincontextcodegenPackage.GEN_HELPER:
+ {
+ GenHelper genHelper = (GenHelper)theEObject;
+ T result = caseGenHelper(genHelper);
+ if(result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_MATCHER:
+ {
+ StereotypedElementMatcher stereotypedElementMatcher = (StereotypedElementMatcher)theEObject;
+ T result = caseStereotypedElementMatcher(stereotypedElementMatcher);
+ if(result == null)
+ result = caseGenMatcher(stereotypedElementMatcher);
+ if(result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case DomaincontextcodegenPackage.STEREOTYPED_ELEMENT_HELPER:
+ {
+ StereotypedElementHelper stereotypedElementHelper = (StereotypedElementHelper)theEObject;
+ T result = caseStereotypedElementHelper(stereotypedElementHelper);
+ if(result == null)
+ result = caseGenHelper(stereotypedElementHelper);
+ if(result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case DomaincontextcodegenPackage.MENU_DECLARATION:
+ {
+ MenuDeclaration menuDeclaration = (MenuDeclaration)theEObject;
+ T result = caseMenuDeclaration(menuDeclaration);
+ if(result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case DomaincontextcodegenPackage.COMMAND_DECLARATION:
+ {
+ CommandDeclaration commandDeclaration = (CommandDeclaration)theEObject;
+ T result = caseCommandDeclaration(commandDeclaration);
+ if(result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
+ case DomaincontextcodegenPackage.COMMAND:
+ {
+ Command command = (Command)theEObject;
+ T result = caseCommand(command);
+ if(result == null)
+ result = defaultCase(theEObject);
+ return result;
+ }
default:
return defaultCase(theEObject);
}
@@ -199,6 +319,74 @@ public class DomaincontextcodegenSwitch<T> {
}
/**
+ * Returns the result of interpreting the object as an instance of '<em>Meta Class Type</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>Meta Class Type</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseMetaClassType(MetaClassType object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Specialization Type</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>Specialization Type</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseSpecializationType(SpecializationType object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Advice</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>Advice</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseAdvice(Advice object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Element Type Bindings</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>Element Type Bindings</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseElementTypeBindings(ElementTypeBindings object) {
+ return null;
+ }
+
+ /**
* Returns the result of interpreting the object as an instance of '<em>Advice Binding</em>'.
* <!-- begin-user-doc -->
* This implementation returns null;
@@ -233,6 +421,23 @@ public class DomaincontextcodegenSwitch<T> {
}
/**
+ * Returns the result of interpreting the object as an instance of '<em>Element Type Binding</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>Element Type Binding</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseElementTypeBinding(ElementTypeBinding object) {
+ return null;
+ }
+
+ /**
* Returns the result of interpreting the object as an instance of '<em>Gen Handlers</em>'.
* <!-- begin-user-doc -->
* This implementation returns null;
@@ -250,6 +455,125 @@ public class DomaincontextcodegenSwitch<T> {
}
/**
+ * Returns the result of interpreting the object as an instance of '<em>Gen Matcher</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>Gen Matcher</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseGenMatcher(GenMatcher object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Gen Helper</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>Gen Helper</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseGenHelper(GenHelper object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Stereotyped Element Matcher</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>Stereotyped Element Matcher</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseStereotypedElementMatcher(StereotypedElementMatcher object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Stereotyped Element Helper</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>Stereotyped Element Helper</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseStereotypedElementHelper(StereotypedElementHelper object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Menu Declaration</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>Menu Declaration</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseMenuDeclaration(MenuDeclaration object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Command Declaration</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>Command Declaration</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseCommandDeclaration(CommandDeclaration object) {
+ return null;
+ }
+
+ /**
+ * Returns the result of interpreting the object as an instance of '<em>Command</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>Command</em>'.
+ * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
+ * @generated
+ */
+ public T caseCommand(Command object) {
+ return null;
+ }
+
+ /**
* Returns the result of interpreting the object as an instance of '<em>EObject</em>'.
* <!-- begin-user-doc -->
* This implementation returns null;
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/ModelUtils.mtl b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/ModelUtils.mtl
new file mode 100644
index 00000000000..f9de3698e01
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/ModelUtils.mtl
@@ -0,0 +1,13 @@
+[comment encoding = UTF-8 /]
+[module ModelUtils('http://www.eclipse.org/papyrus/2010/domaincontextcodegen', 'http://www.eclipse.org/emf/2002/GenModel', 'http://www.eclipse.org/emf/2002/Ecore')/]
+
+[query public getSemanticHint(type : ElementType) : String = type.owner.domain.elementTypeNamePrefix + '::' + type.name/]
+[query public getElementTypeID(type : ElementType) : String = type.owner.domain.elementTypeIDPrefix + '.' + type.name/]
+[query public getCommandID(type : ElementType) : String = type.owner.domain.handlerProjectName + '.' + type.name + 'CreateCommand'/]
+[query public getCommandHandler(type : ElementType) : String = type.owner.domain.handlerProjectName + '.handler.' + type.name + 'Handler'/]
+
+[query public formatUpperWithSep(str : String) : String = invoke('org.eclipse.papyrus.domaincontextcodegen.utils.StringUtils', 'formatUpperWithSep(java.lang.String)', Sequence{str})/]
+
+[query public isAbstract(type : ElementType) : Boolean = invoke('org.eclipse.papyrus.domaincontextcodegen.utils.ModelUtils', 'isAbstract(org.eclipse.papyrus.domaincontextcodegen.ElementType)', Sequence{type})/]
+
+ \ No newline at end of file
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/generateElementHandler.mtl b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/generateElementHandler.mtl
index f3488bb82cb..eef9d694b66 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/generateElementHandler.mtl
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/generateElementHandler.mtl
@@ -1,12 +1,14 @@
[comment encoding = UTF-8 /]
[module generateElementHandler('http://www.eclipse.org/papyrus/2010/domaincontextcodegen','http://www.eclipse.org/emf/2002/Ecore')/]
+[import org::eclipse::papyrus::domaincontextcodegen::ModelUtils /]
+
[template public generateElementHandler(domain : DomainContext)]
[comment this template is used to generate an enumeration of all handlers + an abstract handler/]
-[for (type:ElementType |domain.elementTypes.types)]
-[file (domain.handlerProjectName+'/'+domain.generatedSourceFolder+'/'+domain.handlerProjectName.substituteAll('.', '/').concat('/handler/'+type.metaClass.name.concat('Handler.java')), false, 'UTF-8')]
+[for (type : ElementType | domain.elementTypes.types)]
+[file (domain.handlerProjectName+'/'+domain.generatedSourceFolder+'/'+type.getCommandHandler().substituteAll('.', '/').concat('.java'), false, 'UTF-8')]
package [domain.genHandlers.handlerPackage/];
import org.eclipse.core.commands.IHandler;
@@ -16,16 +18,16 @@ import [domain.genHandlers.superClassPackage/].[domain.genHandlers.superClass/];
/**
* <pre>
- * Command handler for [type.metaClass.name/] creation
+ * Command handler for [type.name/] creation
*
* </pre>
* @generated
*/
-public class [type.metaClass.name/]Handler extends [domain.genHandlers.superClass/] implements IHandler {
+public class [type.name/]Handler extends [domain.genHandlers.superClass/] implements IHandler {
/**
* <pre>
- * @see org.eclipse.papyrus.uml.service.creation.handler.CreateHandler#getElementTypeToCreate()
+ * @see [domain.genHandlers.superClassPackage/].[domain.genHandlers.superClass/]#getElementTypeToCreate()
*
* @return the IElementType this handler is supposed to create
*
@@ -33,7 +35,7 @@ public class [type.metaClass.name/]Handler extends [domain.genHandlers.superClas
* @generated
*/
protected IElementType getElementTypeToCreate() {
- return [domain.genHandlers.elementTypeEnumerator/].[type.specificName/];
+ return [domain.genHandlers.elementTypeEnumerator/].[type.name.formatUpperWithSep()/];
}
}
@@ -41,3 +43,42 @@ public class [type.metaClass.name/]Handler extends [domain.genHandlers.superClas
[/for]
[/template]
+
+
+[template public generateCommandFilter(domain : DomainContext)]
+[file (domain.handlerProjectName+'/'+domain.generatedSourceFolder+'/'+domain.handlerProjectName.substituteAll('.', '/').concat('/filter/CommandFilter.java'), false, 'UTF-8')]
+package [domain.handlerProjectName/].filter;
+
+import java.util.ArrayList;
+import java.util.List;
+
+import org.eclipse.gmf.runtime.emf.type.core.IElementType;
+import [domain.genHandlers.elementTypeEnumeratorPackage/].[domain.genHandlers.elementTypeEnumerator/];
+[if (not domain.specializationOf.oclIsUndefined())]
+import [domain.specializationOf.genHandlers.elementTypeEnumeratorPackage/].[domain.specializationOf.genHandlers.elementTypeEnumerator/];
+[/if]
+
+public class CommandFilter {
+
+ private static List<IElementType> visibleCommands;
+
+ public static List<IElementType> getVisibleCommands() {
+ if(visibleCommands == null) {
+ visibleCommands = new ArrayList<IElementType>();
+
+[for (domainElt : ElementType | domain.elementTypes.types->select(not isAbstract()))]
+ [if (domain.genHandlers.visibleCreateChildHandlers->includes(domainElt))]
+ visibleCommands.add([domain.genHandlers.elementTypeEnumerator/].[domainElt.name.formatUpperWithSep()/]);
+ [/if]
+ [if (not domain.genHandlers.visibleCreateChildHandlers->includes(domainElt))]
+ // visibleCommands.add([domain.genHandlers.elementTypeEnumerator/].[domainElt.name.formatUpperWithSep()/]);
+ [/if]
+[/for]
+ }
+
+ return visibleCommands;
+ }
+}
+[/file]
+
+[/template] \ No newline at end of file
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/generateElementTypeClass.mtl b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/generateElementTypeClass.mtl
index 50ec33bc053..2188ae8337c 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/generateElementTypeClass.mtl
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/generateElementTypeClass.mtl
@@ -1,26 +1,150 @@
[comment encoding = UTF-8 /]
[module generateElementTypeClass('http://www.eclipse.org/papyrus/2010/domaincontextcodegen','http://www.eclipse.org/emf/2002/Ecore')/]
+[import org::eclipse::papyrus::domaincontextcodegen::ModelUtils /]
+
[template public generateElementTypeClass(domain : DomainContext)]
[comment @main /]
[comment this template is used to generate an enumeration of all elementtypes/]
[file (domain.typeProjectName+'/'+domain.generatedSourceFolder+'/'+domain.typeProjectName.substituteAll('.', '/').concat('/element/'+domain.elementTypeNamePrefix.concat('ElementTypes.java')), false, 'UTF-8')]
-
package [ domain.typeProjectName.concat('.element')/];
+
import org.eclipse.gmf.runtime.emf.type.core.AbstractElementTypeEnumerator;
import org.eclipse.gmf.runtime.emf.type.core.IHintedType;
/** Convenient utility class listing IElementType declared in plugin.xml */
public class [domain.elementTypeNamePrefix/]ElementTypes extends AbstractElementTypeEnumerator {
-[for (type:ElementType|domain.elementTypes.types)]
- /** IElementType for [domain.elementTypeNamePrefix /] [ type.metaClass.name/] */
- public static final IHintedType [type.specificName/] = (IHintedType)getElementType("[domain.elementTypeIDPrefix.concat('.'+type.metaClass.name)/]");
+[for (type : MetaClassType | domain.elementTypes.types->select(oclIsTypeOf(MetaClassType)))]
+ /** IElementType for [domain.elementTypeNamePrefix/] [type.name/] */
+ public static final IHintedType [type.name.formatUpperWithSep()/] = (IHintedType)getElementType("[type.getElementTypeID()/]"); //$NON-NLS-1$
+
+[/for ]
+[for (type : SpecializationType | domain.elementTypes.types->select(oclIsTypeOf(SpecializationType)))]
+ /** IElementType for [domain.elementTypeNamePrefix/] [type.name/] */
+ public static final IHintedType [type.name.formatUpperWithSep()/] = (IHintedType)getElementType("[type.getElementTypeID()/]"); //$NON-NLS-1$
[/for ]
}
[/file]
-
+
+
+[comment generate Matcher and Helper if possible /]
+[for (type : SpecializationType | domain.elementTypes.types->select(oclIsTypeOf(SpecializationType)))]
+
+[comment generate Matcher /]
+[if (not type.genMatcher.oclIsUndefined())]
+[file (domain.typeProjectName+'/'+domain.generatedSourceFolder+'/'+domain.typeProjectName.substituteAll('.', '/').concat('/matcher/'+type.genMatcher.name.concat('.java')), false, 'UTF-8')]
+[comment type.generateMatcher()/]
+[/file]
+[/if]
+
+[comment generate Helper /]
+[if (not type.genHelper.oclIsUndefined())]
+[file (domain.typeProjectName+'/'+domain.generatedSourceFolder+'/'+domain.typeProjectName.substituteAll('.', '/').concat('/helper/'+type.genHelper.name.concat('.java')), false, 'UTF-8')]
+[comment type.generateHelper()/]
+[/file]
+[/if]
+
+[/for ]
+[/template]
+
+[template public generateMatcher(type : SpecializationType)]
+/*****************************************************************************
+ * 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
+ *
+ *****************************************************************************/
+package [type.owner.domain.typeProjectName/].matcher;
+
+import org.eclipse.emf.ecore.EObject;
+import org.eclipse.gmf.runtime.emf.type.core.IElementMatcher;
+import [type.genMatcher.oclAsType(StereotypedElementMatcher).baseElementPackage/].[type.genMatcher.oclAsType(StereotypedElementMatcher).baseElementName/];
+import [type.genMatcher.oclAsType(StereotypedElementMatcher).stereotypePackage/].[type.genMatcher.oclAsType(StereotypedElementMatcher).stereotypeName/];
+import org.eclipse.papyrus.sysml.service.types.utils.ElementUtil;
+
+/**
+ * Test if current [type.genMatcher.oclAsType(StereotypedElementMatcher).baseElementName/] is a [type.name/]
+ */
+public class [type.genMatcher.name/] implements IElementMatcher {
+
+ public boolean matches(EObject eObject) {
+
+ boolean isMatch = false;
+ if(eObject instanceof [type.genMatcher.oclAsType(StereotypedElementMatcher).baseElementName/]) {
+
+ [type.genMatcher.oclAsType(StereotypedElementMatcher).baseElementName/] element = ([type.genMatcher.oclAsType(StereotypedElementMatcher).baseElementName/])eObject;
+ if(ElementUtil.getStereotypeApplication(element, [type.genMatcher.oclAsType(StereotypedElementMatcher).stereotypeName/].class) != null) {
+ isMatch = true;
+ }
+ }
+ return isMatch;
+ }
+
+}
+[/template]
+
+[template public generateHelper(type : SpecializationType)]
+/*****************************************************************************
+ * 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
+ *
+ *****************************************************************************/
+package [type.owner.domain.typeProjectName/].helper;
+
+import org.eclipse.core.commands.ExecutionException;
+import org.eclipse.core.runtime.IAdaptable;
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.gmf.runtime.common.core.command.CommandResult;
+import org.eclipse.gmf.runtime.common.core.command.ICommand;
+import org.eclipse.gmf.runtime.emf.type.core.commands.ConfigureElementCommand;
+import org.eclipse.gmf.runtime.emf.type.core.requests.ConfigureRequest;
+import org.eclipse.papyrus.sysml.requirements.RequirementsPackage;
+import org.eclipse.papyrus.sysml.service.types.utils.NamedElementHelper;
+import org.eclipse.papyrus.sysml.util.SysmlResource;
+import org.eclipse.uml2.uml.NamedElement;
+import org.eclipse.uml2.uml.Stereotype;
+
+/** [type.owner.domain.elementTypeNamePrefix/] [type.name/] edit helper advice */
+public class [type.genHelper.name/] extends AbstractStereotypedElementEditHelperAdvice {
+
+ /** Default constructor */
+ public [type.genHelper.name/]() {
+ requiredProfileIDs.add(SysmlResource.REQUIREMENTS_ID);
+ }
+
+ /** Complete creation process by applying the expected stereotype */
+ @Override
+ protected ICommand getAfterConfigureCommand(final ConfigureRequest request) {
+
+ return new ConfigureElementCommand(request) {
+
+ protected CommandResult doExecuteWithResult(IProgressMonitor progressMonitor, IAdaptable info) throws ExecutionException {
+ NamedElement element = (NamedElement)request.getElementToConfigure();
+ if(element != null) {
+ Stereotype stereotypeToApply = element.getApplicableStereotype(SysmlResource.DERIVE_REQT_ID);
+ if(stereotypeToApply != null) {
+ element.applyStereotype(stereotypeToApply);
+ }
+
+ // Set default name
+ // Initialize the element name based on the created IElementType
+ String initializedName = NamedElementHelper.EINSTANCE.getNewUMLElementName(element.getOwner(), RequirementsPackage.eINSTANCE.getDeriveReqt());
+ element.setName(initializedName);
+ }
+ return CommandResult.newOKCommandResult();
+ }
+ };
+ }
+}
[/template]
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/generateHandlers.mtl b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/generateHandlers.mtl
index 855029ac017..3e953110eac 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/generateHandlers.mtl
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/generateHandlers.mtl
@@ -7,6 +7,7 @@
[template public generateHandlers(domain : DomainContext)]
[domain.generateElementHandler()/]
+ [domain.generateCommandFilter()/]
[domain.generateXMLElementHandler()/]
[/template]
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/generateXMLElementHandler.mtl b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/generateXMLElementHandler.mtl
index 75653522d3f..0d2fb68b8b8 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/generateXMLElementHandler.mtl
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/generateXMLElementHandler.mtl
@@ -1,6 +1,8 @@
[comment encoding = UTF-8 /]
[module generateXMLElementHandler('http://www.eclipse.org/papyrus/2010/domaincontextcodegen','http://www.eclipse.org/emf/2002/Ecore')/]
+[import org::eclipse::papyrus::domaincontextcodegen::ModelUtils /]
+
[template public generateXMLElementHandler(domain : DomainContext)]
[comment @main /]
[comment this template is used to generate the plugin.xml /]
@@ -13,16 +15,14 @@
[comment generation of all command attached to an handler /]
<!-- Creation command declarations -->
<extension point="org.eclipse.ui.commands">
-[for (type:ElementType|domain.elementTypes.types)]
- [if (type.metaClass.abstract=false)]
- <!-- Creation command for [type.metaClass.name/] -->
+[for (type : ElementType | domain.elementTypes.types->select(not isAbstract()))]
+ <!-- Creation command for [type.name/] -->
<command categoryId="org.eclipse.papyrus.editor.category"
- id="[domain.handlerProjectName+'.'+type.metaClass.name+'CreateCommand'/]"
- name="Create a new [type.metaClass.name/]" description="Create a new [type.metaClass.name/]"
- defaultHandler="[domain.handlerProjectName.concat('.handler.')+type.metaClass.name/]Handler">
+ id="[type.getCommandID()/]"
+ name="Create a new [type.name/]" description="Create a new [type.name/]"
+ defaultHandler="[type.getCommandHandler()/]">
</command>
- [/if]
[/for ]
</extension>
@@ -31,20 +31,26 @@
<!-- UI Menu declaration for creation commands -->
<extension point="org.eclipse.ui.menus">
- <menuContribution locationURI="popup:org.eclipse.papyrus.modelexplorer.popupmenu.createchild"
- allPopups="false">
-
- [for (type:ElementType|domain.elementTypes.types)]
- [if (type.metaClass.abstract=false)]
- <!-- Creation menu action for [type.metaClass.name/] -->
- <command commandId="[domain.handlerProjectName+'.'+type.metaClass.name+'CreateCommand'/]"
- label="Create a new [type.metaClass.name/]" tooltip="Create a new [type.metaClass.name/]" style="push"
- icon="platform:/plugin/org.eclipse.uml2.uml.edit/icons/full/obj16/[type.metaClass.name/].gif" >
+ <menuContribution locationURI="[domain.genHandlers.createChildMenuLocationURI/]" allPopups="false">
+
+[for (type : ElementType | domain.elementTypes.types->select(not isAbstract()))]
+ <!-- Creation menu action for [type.name/] -->
+ <command commandId="[type.getCommandID()/]"
+ label="Create a new [type.name/]" tooltip="Create a new [type.name/]" style="push"
+ icon="[type.icon/]" >
<visibleWhen checkEnabled="true"/>
</command>
- [/if]
- [/for ]
+[/for ]
+[for (type : ElementType | domain.genHandlers.parentDomainCreateChild->select(not isAbstract()))]
+ <!-- Creation menu action for [type.name/] -->
+ <command commandId="[type.getCommandID()/]"
+ label="Create a new [type.name/]" tooltip="Create a new [type.name/]" style="push"
+ icon="[type.icon/]" >
+ <visibleWhen checkEnabled="true"/>
+ </command>
+
+[/for ]
</menuContribution>
</extension>
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/generateXMLElementType.mtl b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/generateXMLElementType.mtl
index a5726f7448e..df837118e71 100644
--- a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/generateXMLElementType.mtl
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/generateXMLElementType.mtl
@@ -1,6 +1,9 @@
[comment encoding = UTF-8 /]
[module generateXMLElementType('http://www.eclipse.org/papyrus/2010/domaincontextcodegen','http://www.eclipse.org/emf/2002/Ecore')/]
+[import org::eclipse::papyrus::domaincontextcodegen::ModelUtils
+ /]
+
[template public generateXMLElementType(domain : DomainContext)]
[comment @main /]
[comment this template is used to generate the plugin.xml /]
@@ -9,38 +12,74 @@
<?xml version="1.0" encoding="UTF-8"?>
<?eclipse version="3.4"?>
<plugin>
-
+
[comment generation of all elementType/]
+<!-- [domain.elementTypeNamePrefix/] ElementTypes declarations -->
<extension point="org.eclipse.gmf.runtime.emf.type.core.elementTypes">
<metamodel nsURI="[domain.metamodel.nsURI/]">
<!-- Declaration of IElementTypes -->
-[for (type:ElementType|domain.elementTypes.types)]
- <!-- IElementTypes for [type.metaClass.name/] -->
- <metamodelType eclass="[type.metaClass.name/]" id="[domain.elementTypeIDPrefix+'.'+type.metaClass.name/]"
- edithelper="[type.edithelper_EditHelperAdvicePath/]"
- kind="[type.kind/]" name="[domain.elementTypeNamePrefix+'::'+type.metaClass.name/]">
- <param name="semanticHint" value="[domain.elementTypeNamePrefix+'::'+type.metaClass.name/]"/>
+[for (type : MetaClassType | domain.elementTypes.types->select(oclIsTypeOf(MetaClassType)))]
+ <!-- IMetamodelType for [type.name/] -->
+ <metamodelType id="[type.getElementTypeID()/]" name="[type.getSemanticHint()/]"
+ eclass="[type.metaClass.name/]"
+ edithelper="[type.helper/]"
+ kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType" >
+ <param name="semanticHint" value="[type.getSemanticHint()/]"/>
</metamodelType>
[/for]
+[for (type : SpecializationType | domain.elementTypes.types->select(oclIsTypeOf(SpecializationType)))]
+ <!-- ISpecializationType [type.name/] of [type.ref.getSemanticHint() /] -->
+ <specializationType id="[type.getElementTypeID()/]" name="[type.getSemanticHint()/]"
+ edithelperadvice="[type.helper/]"
+ kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType" >
+ <param name="semanticHint" value="[type.getSemanticHint()/]"/>
+ <specializes id="[type.ref.getElementTypeID()/]" />
+ <matcher class ="[type.matcher/]" />
+ </specializationType>
+
+[/for]
+ </metamodel>
+</extension>
[comment generation of all advicebindings/]
- <!-- Declaration of AdviceBindings -->
+[if (not domain.advices->isEmpty())]
+<!-- Helper advice declarations -->
+<extension point="org.eclipse.gmf.runtime.emf.type.core.elementTypes">
+
+ <metamodel nsURI="[domain.metamodel.nsURI/]">
-[for (advice: AdviceBinding|domain.advicebindings)]
- <!-- AdviceBinding for [advice.adviceID/] -->
+[for (advice : Advice | domain.advices)]
+ <!-- Helper advice for [advice.ref.name/] -->
<adviceBinding id="[advice.adviceID/]"
- class="[advice.advicePath/]" inheritance="[advice.inheritance/]"
- typeId="[domain.elementTypeIDPrefix+'.'+advice.elementTypeRef.metaClass.name/]">
+ class="[advice.advicePath/]"
+ inheritance="[advice.inheritance/]" typeId="[advice.ref.getElementTypeID()/]">
</adviceBinding>
-
-[/for]
-
+
+[/for]
</metamodel>
+</extension>
+[/if]
+
+[comment generation of all bindings/]
+<!-- [domain.elementTypeNamePrefix/] ElementType bindings to Papyrus shared IClientContext -->
+<extension point="org.eclipse.gmf.runtime.emf.type.core.elementTypeBindings">
+
+ <!-- Bindings declaration -->
+ <binding context="[domain.bindings.clientContextID/]">
+
+[for (binding : ElementTypeBinding | domain.bindings.bindings->select(oclIsTypeOf(ElementTypeBinding)))]
+ [binding.GenBinding()/]
+[/for]
+[for (binding : AdviceBinding | domain.bindings.bindings->select(oclIsTypeOf(AdviceBinding)))]
+ [binding.GenBinding()/]
+[/for]
+ </binding>
+
</extension>
</plugin>
@@ -48,3 +87,13 @@
[/file]
[/template]
+
+[template private GenBinding(binding : ElementTypeBinding)]
+[if (not binding.ref.oclIsUndefined())]<elementType ref="[binding.ref.getElementTypeID()/]" />[/if]
+[if (not binding.pattern.oclIsUndefined())]<elementType pattern="[binding.pattern/]" />[/if]
+[/template]
+
+[template private GenBinding(binding : AdviceBinding)]
+[if (not binding.ref.oclIsUndefined())]<advice ref="[binding.ref.adviceID/]" />[/if]
+[if (not binding.pattern.oclIsUndefined())]<advice pattern="[binding.pattern/]" />[/if]
+[/template]
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/utils/ModelUtils.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/utils/ModelUtils.java
new file mode 100644
index 00000000000..8aa46e1a6dd
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/utils/ModelUtils.java
@@ -0,0 +1,51 @@
+/*******************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are property of the CEA, their use is subject to specific agreement
+ * with the CEA.
+ *
+ * Contributors:
+ * CEA LIST - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.domaincontextcodegen.utils;
+
+import org.eclipse.papyrus.domaincontextcodegen.ElementType;
+import org.eclipse.papyrus.domaincontextcodegen.MetaClassType;
+import org.eclipse.papyrus.domaincontextcodegen.SpecializationType;
+
+public class ModelUtils {
+
+ public boolean isAbstract(ElementType type) {
+
+ boolean isAbstract = false;
+
+ MetaClassType mt = null;
+ if(type instanceof MetaClassType) {
+ mt = (MetaClassType)type;
+ isAbstract = mt.getMetaClass().isAbstract();
+
+ } else if(type instanceof SpecializationType) {
+ SpecializationType st = (SpecializationType)type;
+ mt = getMetaClassType(st);
+ }
+
+ if(mt != null) {
+ isAbstract = mt.getMetaClass().isAbstract();
+ }
+
+ return isAbstract;
+ }
+
+ private MetaClassType getMetaClassType(SpecializationType st) {
+
+ if(st.getRef() instanceof MetaClassType) {
+ return (MetaClassType)st.getRef();
+
+ } else if(st.getRef() instanceof SpecializationType) {
+ return getMetaClassType((SpecializationType)st.getRef());
+
+ }
+
+ return null;
+ }
+}
diff --git a/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/utils/StringUtils.java b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/utils/StringUtils.java
new file mode 100644
index 00000000000..e9da049b2e3
--- /dev/null
+++ b/plugins/developer/org.eclipse.papyrus.domaincontextcodegen/transforsrc/org/eclipse/papyrus/domaincontextcodegen/utils/StringUtils.java
@@ -0,0 +1,19 @@
+/*******************************************************************************
+ * Copyright (c) 2010 CEA LIST.
+ * All rights reserved. This program and the accompanying materials
+ * are property of the CEA, their use is subject to specific agreement
+ * with the CEA.
+ *
+ * Contributors:
+ * CEA LIST - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.papyrus.domaincontextcodegen.utils;
+
+import org.eclipse.emf.codegen.util.CodeGenUtil;
+
+public class StringUtils {
+
+ public String formatUpperWithSep(String str) {
+ return CodeGenUtil.format(str, '_', "", false, false).toUpperCase();
+ }
+}

Back to the top