Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 77408

Summary: [Plan Item] EMF Generator Extensions
Product: [Modeling] MDT.UML2 Reporter: Kenn Hussey <Kenn.Hussey>
Component: CoreAssignee: Kenn Hussey <Kenn.Hussey>
Status: VERIFIED FIXED QA Contact:
Severity: enhancement    
Priority: P1 CC: dsciamma, nb271
Version: 1.0.0Keywords: plan
Target Milestone: 1.1.0   
Hardware: PC   
OS: Windows XP   
Whiteboard:
Bug Depends on: 75923    
Bug Blocks:    

Description Kenn Hussey CLA 2004-11-01 14:23:25 EST
Refactor the custom Ecore “builder” and JET templates that were used to 
generate the UML2 metamodel and deliver them to the open source community, 
pending the availability of EMF generator extensibility enhancements, i.e. 
75923, 75925, and 75933. Provide an extension that builds an Ecore model from 
UML2 models.
Comment 1 David Sciamma CLA 2004-12-01 06:03:48 EST
Hello,

When the UML2 generators will be available ?
Advanced annotations are great !
Comment 2 Kenn Hussey CLA 2004-12-01 13:19:56 EST
Not sure what you are referring to by "advanced annotations", but development 
on this enhancement will begin once the plan item has been committed, which 
depends on when/whether the corresponding EMF items are committed.
Comment 3 David Sciamma CLA 2004-12-01 13:58:35 EST
I am speaking about "union", "subsets"... annotations that are not understood by
the default EMF generator
Comment 4 Kenn Hussey CLA 2005-05-18 17:31:13 EDT
The changes have been committed to CVS.

The following new plug-ins have been added to the UML2 runtime feature:

org.eclipse.uml2.codegen.ecore
org.eclipse.uml2.codegen.ecore.ui
org.eclipse.uml2.common
org.eclipse.uml2.common.edit
org.eclipse.uml2.ecore.importer

The UML2 code generator extension provides support for the following 
additional features:

- cache adapter support
- factory methods
- invariant prefixes
- "pluralized" getters
- safe strings
- operation utility classes
- resource interfaces
- "key" features (for retrieval methods)

Another plug-in (org.eclipse.uml2.importer.rose) has been made available in 
CVS only. This plug-in was used to create the Ecore and generator models for 
UML2.

The UML2 API has been regenerated using the new UML2 code generation plug-ins. 
Changes include:

- Overloaded factory methods in cases where there was only one possible type 
to create and where the type of the containment feature was not abstract.
- Derived union getters that create less garbage and do not force proxy 
resolution.
- Additional retrieval methods in cases where a derived feature is redefined 
as non-derived (e.g. Namespace#getOwnedMember(String)).
- Deprecated APIs as a result of moving classes to the new common plug-ins.

The XMI schema and metamodel resources (Ecore.metamodel.uml2 and 
UML2.metamodel.uml2) have been updated to reflect the new (much smaller) Ecore 
representation of UML2 (UML2.ecore), now also included in the runtime feature.

The Ecore profile (and conversion utilities) has been updated to include 
support for additional feature kinds (ATTRIBUTE_WILDCARD, ELEMENT_WILDCARD, 
GROUP).

Documentation will be provided as part of 77413.
Comment 5 Kenn Hussey CLA 2005-05-19 15:14:01 EDT
The changes are available in the 1.1M5 build.
Comment 6 Nick Boldt CLA 2008-01-28 16:34:15 EST
Move to verified as per bug 206558.