Bug 267962 - API - Tag drop needs to be decoupled from the palette entry
Summary: API - Tag drop needs to be decoupled from the palette entry
Status: RESOLVED FIXED
Alias: None
Product: Java Server Faces
Classification: WebTools
Component: Core (show other bugs)
Version: 3.1   Edit
Hardware: PC Windows XP
: P1 normal (vote)
Target Milestone: 3.1 RC1   Edit
Assignee: Cameron Bateman CLA
QA Contact:
URL: ORACLE_P1
Whiteboard: PMC_approved
Keywords: api
Depends on:
Blocks:
 
Reported: 2009-03-10 15:54 EDT by Cameron Bateman CLA
Modified: 2009-05-05 18:58 EDT (History)
3 users (show)

See Also:
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+


Attachments
Decouples TagToolPaletteEntry from everything except the palette itself. (141.55 KB, patch)
2009-04-30 21:25 EDT, Cameron Bateman CLA
no flags Details | Diff
Code changes (91.09 KB, patch)
2009-05-03 20:58 EDT, Raghunathan Srinivasan CLA
no flags Details | Diff
Test patch (50.49 KB, patch)
2009-05-03 20:59 EDT, Raghunathan Srinivasan CLA
no flags Details | Diff
Addresses issues raised in Gerry's review (92.06 KB, text/plain)
2009-05-04 18:31 EDT, Cameron Bateman CLA
no flags Details
Updated tests patch for new code patch (50.49 KB, text/plain)
2009-05-04 18:32 EDT, Cameron Bateman CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
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).