Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
Difference between revisions of "SCA/Components/SCA CompositeDesignerExtension"
< SCA
(7 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
To extend the SCA Composite Designer: | To extend the SCA Composite Designer: | ||
− | + | # Create a new plugin-in | |
− | + | # Add the following dependencies: | |
− | + | #* org.eclipse.core.runtime, | |
− | + | #* org.eclipse.core.resources, | |
− | + | #* org.eclipse.core.expressions, | |
− | + | #* org.eclipse.jface, | |
− | + | #* org.eclipse.ui.ide, | |
− | + | #* org.eclipse.ui.views, | |
− | + | #* org.eclipse.ui.navigator, | |
− | + | #* org.eclipse.ui.navigator.resources, | |
− | + | #* org.eclipse.emf.ecore, | |
− | + | #* org.eclipse.emf.ecore.xmi, | |
− | + | #* org.eclipse.emf.edit.ui, | |
− | + | #* org.eclipse.gmf.runtime.emf.core, | |
− | + | #* org.eclipse.gmf.runtime.emf.commands.core, | |
− | + | #* org.eclipse.gmf.runtime.emf.ui.properties, | |
− | + | #* org.eclipse.gmf.runtime.diagram.ui, | |
− | + | #* org.eclipse.gmf.runtime.diagram.ui.properties, | |
− | + | #* org.eclipse.gmf.runtime.diagram.ui.providers, | |
− | + | #* org.eclipse.gmf.runtime.diagram.ui.providers.ide, | |
− | + | #* org.eclipse.gmf.runtime.diagram.ui.render, | |
− | + | #* org.eclipse.gmf.runtime.diagram.ui.resources.editor, | |
− | + | #* org.eclipse.gmf.runtime.diagram.ui.resources.editor.ide, | |
− | + | #* org.eclipse.gmf.runtime.draw2d.ui;visibility:=reexport, | |
− | + | #* org.eclipse.gef;visibility:=reexport, | |
− | + | #* org.eclipse.stp.sca.diagram.extension, | |
− | + | #* org.eclipse.stp.sca.diagram, | |
− | * | + | #* <font color="red">'''xyz.yourmodel'''</font>, |
− | * | + | #* <font color="red">'''xyz.yourmodel.edit'''</font> |
− | + | # Extend the required extension points: | |
− | + | #* org.eclipse.gmf.runtime.emf.type.core.elementTypes | |
− | + | #* org.eclipse.gmf.runtime.emf.type.core.elementTypeBindings | |
− | + | #* org.eclipse.stp.sca.diagram.AdaptorFactories | |
− | + | #* org.eclipse.stp.sca.diagram.extension.implementations | |
− | + | #* org.eclipse.stp.sca.diagram.extension.interfaces | |
− | + | #* org.eclipse.stp.sca.diagram.extension.bindings | |
− | + | #* org.eclipse.stp.sca.diagram.ImplementationEntryPalette | |
− | + | #* org.eclipse.stp.sca.diagram.InterfaceEntryPalette | |
− | + | #* org.eclipse.stp.sca.diagram.BindingEntryPalette | |
− | + | ||
== Example == | == Example == | ||
<source lang="xml"> | <source lang="xml"> | ||
− | |||
− | |||
<plugin> | <plugin> | ||
+ | <extension point="org.eclipse.gmf.runtime.emf.type.core.elementTypes"> | ||
+ | <metamodel nsURI="http://frascati.ow2.org"> | ||
+ | <metamodelType | ||
+ | id="org.eclipse.stp.sca.diagram.frascati.FractalImplementation" | ||
+ | name="FractalImplementation" | ||
+ | eclass="FractalImplementation" | ||
+ | kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"> | ||
+ | <param name="semanticHint" value="org.eclipse.stp.sca.diagram.frascati.FractalImplementation"/> | ||
+ | </metamodelType> | ||
+ | <metamodelType | ||
+ | id="org.eclipse.stp.sca.diagram.frascati.JBIBinding" | ||
+ | name="JBIBinding" | ||
+ | eclass="JBIBinding" | ||
+ | kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"> | ||
+ | <param name="semanticHint" value="org.eclipse.stp.sca.diagram.frascati.JBIBinding"/> | ||
+ | </metamodelType> | ||
+ | </metamodel> | ||
+ | </extension> | ||
− | + | <extension point="org.eclipse.gmf.runtime.emf.type.core.elementTypeBindings"> | |
− | + | <clientContext id="ScaClientContext"> | |
− | + | <enablement> | |
− | + | <test property="org.eclipse.gmf.runtime.emf.core.editingDomain" value="org.eclipse.stp.sca.diagram.EditingDomain"/> | |
− | + | </enablement> | |
− | + | </clientContext> | |
− | + | <binding context="ScaClientContext"> | |
− | + | <elementType ref="org.eclipse.stp.sca.diagram.frascati.FractalImplementation"/> | |
− | + | <advice ref="org.eclipse.gmf.runtime.diagram.core.advice.notationDepdendents"/> | |
− | + | </binding> | |
+ | <binding context="ScaClientContext"> | ||
+ | <elementType ref="org.eclipse.stp.sca.diagram.frascati.JBIBinding"/> | ||
+ | <advice ref="org.eclipse.gmf.runtime.diagram.core.advice.notationDepdendents"/> | ||
+ | </binding> | ||
+ | </extension> | ||
− | + | <extension point="org.eclipse.stp.sca.diagram.extension.implementations"> | |
− | + | <element | |
− | + | typeId="org.eclipse.stp.sca.diagram.frascati.FractalImplementation" | |
− | + | literalClass="org.eclipse.stp.sca.domainmodel.frascati.FrascatiPackage$Literals" | |
− | + | literalField="DOCUMENT_ROOT__IMPLEMENTATION_FRACTAL" | |
− | + | iconPath="/org.eclipse.stp.sca.domainmodel.frascati.edit/icons/full/obj16/FractalImplementation.gif"/> | |
− | + | </extension> | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | <extension point="org.eclipse.stp.sca.diagram.extension.bindings"> | |
− | + | <element | |
− | + | typeId="org.eclipse.stp.sca.diagram.frascati.JBIBinding" | |
+ | literalClass="org.eclipse.stp.sca.domainmodel.frascati.FrascatiPackage$Literals" | ||
+ | literalField="DOCUMENT_ROOT__BINDING_JBI" | ||
+ | iconPath="/org.eclipse.stp.sca.domainmodel.frascati.edit/icons/full/obj16/JBIBinding.gif"/> | ||
+ | </extension> | ||
− | + | <extension point="org.eclipse.stp.sca.diagram.AdaptorFactories"> | |
− | + | <adaptorFactory class="org.eclipse.stp.sca.domainmodel.frascati.provider.FrascatiItemProviderAdapterFactory"/> | |
− | + | </extension> | |
− | + | <extension point="org.eclipse.stp.sca.diagram.ImplementationEntryPalette"> | |
− | + | <implementationEntry | |
− | < | + | description="Create a new FractalImplementation" |
− | + | iconPath="/org.eclipse.stp.sca.domainmodel.frascati.edit/icons/full/obj16/FractalImplementation.gif" | |
− | + | label="Fractal (Frascati 0.4)" | |
− | + | type="org.eclipse.stp.sca.diagram.frascati.FractalImplementation"> | |
− | + | </implementationEntry> | |
− | type="org.eclipse.stp.sca.diagram.frascati.FractalImplementation"> | + | </extension> |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
+ | <extension point="org.eclipse.stp.sca.diagram.BindingEntryPalette"> | ||
+ | <bindingEntry | ||
+ | description="Create a new JBIBinding" | ||
+ | iconPath="/org.eclipse.stp.sca.domainmodel.frascati.edit/icons/full/obj16/JBIBinding.gif" | ||
+ | label="JBI (Frascati 0.4)" | ||
+ | type="org.eclipse.stp.sca.diagram.frascati.JBIBinding"> | ||
+ | </bindingEntry> | ||
+ | </extension> | ||
</plugin> | </plugin> | ||
</source> | </source> | ||
+ | |||
+ | [[Category:SOA_Tools]] | ||
+ | [[Category:SOA]] | ||
+ | [[Category:STP]] | ||
+ | [[Category:SCA]] |
Latest revision as of 11:18, 8 July 2010
To extend the SCA Composite Designer:
- Create a new plugin-in
- Add the following dependencies:
- org.eclipse.core.runtime,
- org.eclipse.core.resources,
- org.eclipse.core.expressions,
- org.eclipse.jface,
- org.eclipse.ui.ide,
- org.eclipse.ui.views,
- org.eclipse.ui.navigator,
- org.eclipse.ui.navigator.resources,
- org.eclipse.emf.ecore,
- org.eclipse.emf.ecore.xmi,
- org.eclipse.emf.edit.ui,
- org.eclipse.gmf.runtime.emf.core,
- org.eclipse.gmf.runtime.emf.commands.core,
- org.eclipse.gmf.runtime.emf.ui.properties,
- org.eclipse.gmf.runtime.diagram.ui,
- org.eclipse.gmf.runtime.diagram.ui.properties,
- org.eclipse.gmf.runtime.diagram.ui.providers,
- org.eclipse.gmf.runtime.diagram.ui.providers.ide,
- org.eclipse.gmf.runtime.diagram.ui.render,
- org.eclipse.gmf.runtime.diagram.ui.resources.editor,
- org.eclipse.gmf.runtime.diagram.ui.resources.editor.ide,
- org.eclipse.gmf.runtime.draw2d.ui;visibility:=reexport,
- org.eclipse.gef;visibility:=reexport,
- org.eclipse.stp.sca.diagram.extension,
- org.eclipse.stp.sca.diagram,
- xyz.yourmodel,
- xyz.yourmodel.edit
- Extend the required extension points:
- org.eclipse.gmf.runtime.emf.type.core.elementTypes
- org.eclipse.gmf.runtime.emf.type.core.elementTypeBindings
- org.eclipse.stp.sca.diagram.AdaptorFactories
- org.eclipse.stp.sca.diagram.extension.implementations
- org.eclipse.stp.sca.diagram.extension.interfaces
- org.eclipse.stp.sca.diagram.extension.bindings
- org.eclipse.stp.sca.diagram.ImplementationEntryPalette
- org.eclipse.stp.sca.diagram.InterfaceEntryPalette
- org.eclipse.stp.sca.diagram.BindingEntryPalette
Example
<plugin> <extension point="org.eclipse.gmf.runtime.emf.type.core.elementTypes"> <metamodel nsURI="http://frascati.ow2.org"> <metamodelType id="org.eclipse.stp.sca.diagram.frascati.FractalImplementation" name="FractalImplementation" eclass="FractalImplementation" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"> <param name="semanticHint" value="org.eclipse.stp.sca.diagram.frascati.FractalImplementation"/> </metamodelType> <metamodelType id="org.eclipse.stp.sca.diagram.frascati.JBIBinding" name="JBIBinding" eclass="JBIBinding" kind="org.eclipse.gmf.runtime.emf.type.core.IHintedType"> <param name="semanticHint" value="org.eclipse.stp.sca.diagram.frascati.JBIBinding"/> </metamodelType> </metamodel> </extension> <extension point="org.eclipse.gmf.runtime.emf.type.core.elementTypeBindings"> <clientContext id="ScaClientContext"> <enablement> <test property="org.eclipse.gmf.runtime.emf.core.editingDomain" value="org.eclipse.stp.sca.diagram.EditingDomain"/> </enablement> </clientContext> <binding context="ScaClientContext"> <elementType ref="org.eclipse.stp.sca.diagram.frascati.FractalImplementation"/> <advice ref="org.eclipse.gmf.runtime.diagram.core.advice.notationDepdendents"/> </binding> <binding context="ScaClientContext"> <elementType ref="org.eclipse.stp.sca.diagram.frascati.JBIBinding"/> <advice ref="org.eclipse.gmf.runtime.diagram.core.advice.notationDepdendents"/> </binding> </extension> <extension point="org.eclipse.stp.sca.diagram.extension.implementations"> <element typeId="org.eclipse.stp.sca.diagram.frascati.FractalImplementation" literalClass="org.eclipse.stp.sca.domainmodel.frascati.FrascatiPackage$Literals" literalField="DOCUMENT_ROOT__IMPLEMENTATION_FRACTAL" iconPath="/org.eclipse.stp.sca.domainmodel.frascati.edit/icons/full/obj16/FractalImplementation.gif"/> </extension> <extension point="org.eclipse.stp.sca.diagram.extension.bindings"> <element typeId="org.eclipse.stp.sca.diagram.frascati.JBIBinding" literalClass="org.eclipse.stp.sca.domainmodel.frascati.FrascatiPackage$Literals" literalField="DOCUMENT_ROOT__BINDING_JBI" iconPath="/org.eclipse.stp.sca.domainmodel.frascati.edit/icons/full/obj16/JBIBinding.gif"/> </extension> <extension point="org.eclipse.stp.sca.diagram.AdaptorFactories"> <adaptorFactory class="org.eclipse.stp.sca.domainmodel.frascati.provider.FrascatiItemProviderAdapterFactory"/> </extension> <extension point="org.eclipse.stp.sca.diagram.ImplementationEntryPalette"> <implementationEntry description="Create a new FractalImplementation" iconPath="/org.eclipse.stp.sca.domainmodel.frascati.edit/icons/full/obj16/FractalImplementation.gif" label="Fractal (Frascati 0.4)" type="org.eclipse.stp.sca.diagram.frascati.FractalImplementation"> </implementationEntry> </extension> <extension point="org.eclipse.stp.sca.diagram.BindingEntryPalette"> <bindingEntry description="Create a new JBIBinding" iconPath="/org.eclipse.stp.sca.domainmodel.frascati.edit/icons/full/obj16/JBIBinding.gif" label="JBI (Frascati 0.4)" type="org.eclipse.stp.sca.diagram.frascati.JBIBinding"> </bindingEntry> </extension> </plugin>