Skip to main content

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.

Jump to: navigation, search

Difference between revisions of "EMF Editor goes RAP"

(This Page tries to explain how to turn an automatic generated EMF editor into an RAP application)
(The Code Generation Model)
Line 27: Line 27:
 
</pre>
 
</pre>
 
==The Code Generation Model==
 
==The Code Generation Model==
To generate code from the <tt>SimplePO.ecore</tt> model we first need to create a corresponding code generation model (file <tt>SimplePO.genmodel</tt>)for storing the code generation customization data.
+
To generate code from the <tt>SimplePO.ecore</tt> model we first need to create a corresponding code generation model (file <tt>SimplePO.genmodel</tt>) for storing the code generation customization data.
 
Assumed you have all the EMF plugins installed in your Eclipse environment you can do this by a right click on the <tt>SimplePO.ecore</tt> file in the Package Explorer:
 
Assumed you have all the EMF plugins installed in your Eclipse environment you can do this by a right click on the <tt>SimplePO.ecore</tt> file in the Package Explorer:

Revision as of 08:23, 24 November 2007

This Page tries to explain how to turn an automatic generated EMF editor into an RAP application

The Simple Purchase Order Model

To generate the EMF editor we first need a Ecore model. We will use the Simple Purchase Order model (file SimplePO.ecore) that is also used in the EMF book. In an UML Editor this model looks as depicted below:

SimplePO.gif

The SimplePO.ecore file viewed in a text editor:

<?xml version="1.0" encoding="ASCII"?>
<ecore:EPackage xmi:version="2.0"
    xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="po"
    nsURI="http:///com/example/po.ecore" nsPrefix="com.example.po">
  <eClassifiers xsi:type="ecore:EClass" name="PurchaseOrder">
    <eStructuralFeatures xsi:type="ecore:EReference" name="items" upperBound="-1"
        eType="#//Item" containment="true"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="shipTo" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="billTo" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
  </eClassifiers>
  <eClassifiers xsi:type="ecore:EClass" name="Item">
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="productName" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="quantity" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EInt"/>
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="price" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EFloat"/>
  </eClassifiers>
</ecore:EPackage>

The Code Generation Model

To generate code from the SimplePO.ecore model we first need to create a corresponding code generation model (file SimplePO.genmodel) for storing the code generation customization data. Assumed you have all the EMF plugins installed in your Eclipse environment you can do this by a right click on the SimplePO.ecore file in the Package Explorer:

Back to the top