Bug 78076 - [Plan Item] JMerger: Decouple the JMerger implementation from JDOM
Summary: [Plan Item] JMerger: Decouple the JMerger implementation from JDOM
Status: VERIFIED FIXED
Alias: None
Product: EMF
Classification: Modeling
Component: Tools (show other bugs)
Version: 2.1   Edit
Hardware: PC Windows XP
: P1 enhancement with 3 votes (vote)
Target Milestone: Past   Edit
Assignee: Marcelo Paternostro CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 124372
  Show dependency tree
 
Reported: 2004-11-08 10:45 EST by Marcelo Paternostro CLA
Modified: 2008-01-28 16:48 EST (History)
4 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Marcelo Paternostro CLA 2004-11-08 10:45:46 EST
The JMerger tool is using the deprecated JDOM because it was not possible to
move to AST by the end of the 2.0 cycle.
Comment 1 Ed Merks CLA 2005-02-18 07:36:39 EST
[plan pri=1 est=4w/]
Comment 2 Ed Merks CLA 2005-07-19 12:42:06 EDT
*** Bug 104303 has been marked as a duplicate of this bug. ***
Comment 3 Ed Merks CLA 2005-11-15 13:21:32 EST
*** Bug 116463 has been marked as a duplicate of this bug. ***
Comment 4 Marcelo Paternostro CLA 2006-01-18 15:12:14 EST
As we were porting JMerger to AST, we realized that one of the big issues of this task was to ensure that all the existing merge rules (hence "current behavior of JMerge") work.  The constructs available in the merge rules (the Member/getContent in a pull rule for example) were designed having JDOM in mind.

So I am renaming this bug to state this issue.  We choose to decouple the JMerge from JDOM by using a facade approach.  We will define a set of interfaces that should be used to represent the Java code being merged, and, initially, provide a JDOM implementation for these interfaces.  

The next step is to provide a different implementation, using a non-deprecated API that must also support the new constructs available in Java5.  AST is the main candidate.

This architectural change allows anyone to hook her own facade implemention, which can be, for example, Eclipse independent - which would allow JMerger to be used anywhere.
Comment 5 Marcelo Paternostro CLA 2006-01-18 15:49:54 EST
The changes are committed to CVS.
Comment 6 Nick Boldt CLA 2006-01-19 12:44:57 EST
Fixed in 2.2.0.I200501190000
Comment 7 Nick Boldt CLA 2008-01-28 16:48:12 EST
Move to verified as per bug 206558.