Bug 267962

Summary: API - Tag drop needs to be decoupled from the palette entry
Product: [WebTools] Java Server Faces Reporter: Cameron Bateman <cameron.bateman>
Component: CoreAssignee: Cameron Bateman <cameron.bateman>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: P1 CC: david_williams, gerry.kessler, raghunathan.srinivasan
Version: 3.1Keywords: api
Target Milestone: 3.1 RC1Flags: david_williams: pmc_approved+
raghunathan.srinivasan: pmc_approved? (naci.dai)
deboer: pmc_approved+
raghunathan.srinivasan: pmc_approved? (neil.hauge)
raghunathan.srinivasan: pmc_approved? (kaloyan)
raghunathan.srinivasan: review+
Hardware: PC   
OS: Windows XP   
URL: ORACLE_P1
Whiteboard: PMC_approved
Attachments:
Description Flags
Decouples TagToolPaletteEntry from everything except the palette itself.
none
Code changes
none
Test patch
none
Addresses issues raised in Gerry's review
none
Updated tests patch for new code patch none

Description Cameron Bateman CLA 2009-03-10 15:54:00 EDT
The palette entry used to drop a tag is currently tightly coupled to the code that modifies the edited document.  This makes it hard to create new palette entries and customizing tag drop.
Comment 1 Raghunathan Srinivasan CLA 2009-03-13 18:48:13 EDT
    * Explain why you believe this is a stop-ship defect. Or, if it is a
"hotbug" (requested by an adopter) please document it as such. 
This is a hot-bug requested by Oracle. The fix is required to support drop customization feature in the adopter product.
    * Is there a work-around? If so, why do you believe the work-around is
insufficient?
No.
Comment 2 Tim deBoer CLA 2009-04-07 11:15:38 EDT
Approved assuming this is an API addition (i.e. non-breaking) based on Raghu's comments off-line. If it does require breakage please revisit whether it needs notification for adopters or approval.
Comment 3 Cameron Bateman CLA 2009-04-30 21:25:32 EDT
Created attachment 134034 [details]
Decouples TagToolPaletteEntry from everything except the palette itself.
Comment 4 Raghunathan Srinivasan CLA 2009-05-03 20:58:08 EDT
Created attachment 134190 [details]
Code changes
Comment 5 Raghunathan Srinivasan CLA 2009-05-03 20:59:10 EDT
Created attachment 134191 [details]
Test patch
Comment 6 Raghunathan Srinivasan CLA 2009-05-03 21:18:54 EDT
PMC,

We couldn't make these changes in time for M7 and so would like to get this in for RC1. Please review the attached patch.
-Raghu
Comment 7 Raghunathan Srinivasan CLA 2009-05-03 21:22:01 EDT
The following announcement was made in the newsgroup, http://dev.eclipse.org/mhonarc/lists/wtp-jsf-dev/msg00345.html

Who is affected: All Web Page Editor adopters who are implementing IElementEdit's.  If you are following the API spec and only creating IElementEdit's by subclassing AbstractElementEdit then you will not be immediately affected but will want to switch over to the new method at some point during the deprecation period (two major releases after Galileo).

What: A change will be made to IElementEdit to add a new method getDropCustomizer(IDropSourceData) and the existing getDropCustomizer(TagIdentifier tagId) will be deprecated.  In AbstractElementEdit, the new method will by default call the deprecated method to ensure currently behaviour is preserved.

When: The change will impact adopters starting in the Galileo release.

Reference: https://bugs.eclipse.org/bugs/show_bug.cgi?id=267962

Please comment on the reference bug if you have adopter issues.


Thanks,

Cameron Bateman
JSF Tools Team
Comment 8 Cameron Bateman CLA 2009-05-04 18:31:53 EDT
Created attachment 134330 [details]
Addresses issues raised in Gerry's review

Minor change that changes IDropSourceData so that it is abstracted from the direct concept of tags by renaming uri to namespace (this was Raghu's suggestion) and pushing tagName down to the IDropSourceData.

This change does not impact API any further than the original patches.
Comment 9 Cameron Bateman CLA 2009-05-04 18:32:21 EDT
Created attachment 134332 [details]
Updated tests patch for new code patch

Affects JUnit tests only.
Comment 10 Gerry Kessler CLA 2009-05-05 16:52:07 EDT
I have reviewed and tested the patches extensively, and this looks good.  
Comment 11 Cameron Bateman CLA 2009-05-05 18:58:20 EDT
Patch applied to HEAD (3.1 stream).