Model Mapping Providers

Identifier:
com.ibm.xtools.mmi.core.ModelMappingProvider

Since:
This extension point is new to Version 7.0.

Description:
This extension point is used to define com.ibm.xtools.mmi.core.services.map.IModelMappingProviders for com.ibm.xtools.mmi.core.services.map.ModelMappingService.

Model Mapping Service provides a mechanism to adapt any given domain element to any EObject, and resolve any given StructuredReference to EObject. To perform these requests, Model Mapping service delegates the request to appropriate IModelMappingProvider based on the information registered by provider with the extension point com.ibm.xtools.mmi.core.ModelMappingProviders.

ModelMappingProviders extension point allows provider writers to register their provider implementation and provide basic information about what their provider does. The basic information that can be provided is what they can adapt to what kind of target element (AdaptRequest). Also they can provide information about what kind of StructuredReference they can resolve to a EObject (ResolveRequest).

Configuration Markup:

<!ELEMENT extension (ModelMappingProvider)>

<!ATTLIST extension

point CDATA #REQUIRED

id    CDATA #IMPLIED

name  CDATA #IMPLIED>


<!ELEMENT ModelMappingProvider (Priority , AdaptRequest* , ResolveRequest*)>

<!ATTLIST ModelMappingProvider

class CDATA #REQUIRED>

Description of what this provider can do.



<!ELEMENT Priority EMPTY>

<!ATTLIST Priority

name (Lowest|Low|Medium|High|Highest) >


<!ELEMENT AdaptRequest EMPTY>

<!ATTLIST AdaptRequest

DomainElementType CDATA #REQUIRED

TargetKind        CDATA #REQUIRED>

Description of adapt request supported by this provider.



<!ELEMENT ResolveRequest EMPTY>

<!ATTLIST ResolveRequest

StructuredReferenceProviderId CDATA #REQUIRED

TargetKind                    CDATA #REQUIRED>

Description of resolve request supported by this provider.



Examples:
Following is an example of a ModelMappingProvider configuration:


   <extension
         id="illustrationProvider"
         name="Illustration Provider"
         point="com.ibm.xtools.mmi.core.ModelMappingProviders">
      <ModelMappingProvider
            class="com.ibm.xtools.mmi.core.illustration.IllustrationProvider">
         <Priority
               name="Medium">
         </Priority>
         <AdaptRequest
               TargetKind="uml2.Class"
               DomainElementType="org.eclipse.pde.core.plugin.IPlugin">
         </AdaptRequest>
         <ResolveRequest
               TargetKind="uml2.Class"
               StructuredReferenceProviderId="com.ibm.xtools.mmi.core.illustration">
         </ResolveRequest>
      </ModelMappingProvider>
   </extension>

If this extension was defined in a plug-in with id "com.ibm.xtools.mmi.core.illustration", the fully qualified name of this Model Mapping Provider would be "com.ibm.xtools.mmi.core.illustration.illustrationProvider".

API Information:
The value of the class attribute must represent a subclass of com.ibm.xtools.mmi.core.services.map.IModelMappingProvider.

Supplied Implementation:
The platform itself does not have any predefined ModelMappingProvider. Particular product installs may include Model Mapping providers as required. Please see the Example PDE Visualizer for an example ModelMappingProvider.


Copyright (c) 2004, 2018 Model RealTime, HCL and others. All Rights Reserved.