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

Bug 257949

Summary: Move some of the core pieces of plug-in project creation to o.e.pde.core plug-in
Product: [Eclipse Project] PDE Reporter: Robert Konigsberg <konigsberg>
Component: UIAssignee: PDE-UI-Inbox <pde-ui-inbox>
Status: RESOLVED DUPLICATE QA Contact:
Severity: enhancement    
Priority: P3 CC: caniszczyk, curtis.windatt.public, remy.suen
Version: 3.4.1   
Target Milestone: ---   
Hardware: PC   
OS: Linux   
Whiteboard:
Bug Depends on: 239494    
Bug Blocks:    

Description Robert Konigsberg CLA 2008-12-08 11:48:29 EST
Build ID: I20080617-2000

Steps To Reproduce:
I have some well-separated (ui/core) plug-ins and would like to add some core operations that either a) create a new plug-in project from scratch or b) convert an existing project to a plug-in project. I see that the two classes that perform these tasks: ConvertProjectToPluginOperation and NewProjectCreationOperation are in the ui component. Of course these classes are currently internal, so I guess I'm also asking you to make them quasi-external (if there is such a thing.) But I think you get my drift, I want to create and convert plug-in projects, but everything that makes that easy is in the ui component. Of course I could copy this code, but I'd much rather use yours as a reliable and up-to-date library.

And now for my quasi-rant: what ever happened to good core/ui separation? <ducks/>
Comment 1 Chris Aniszczyk CLA 2008-12-08 11:52:59 EST
I know... I know... legacy is killer ;)

You should be mainly interested in NewProjectCreationOperation... not sure why you like ConvertProjectToPluginOperation ;)


This is closely related to bug 188795 which asks us to expose these classes as API. The problem with it that these classes aren't "API ready" in my opinion and some design work needs to go into them before we take the responsibility in maintaining them.

This currently isn't on our radar for 3.5, but if you're willing to spin some cycles on hacking the code, it would convince us to spend some time to put this into 3.5
Comment 2 Robert Konigsberg CLA 2008-12-14 16:50:55 EST
I did some weekend hacking and made some progress, but I suspect the path I took was the long one. Your advice sought:

Why does ConvertProjectToPluginOperation perform its manifest mutation after the model is committed? It seems to me that it would be much simpler to perform the operation before the commit, thereby bypassing all the PdeModelUtility operations.

There is of course, one small problem, which is that the instance of Bundle in CPTPT is not the type used in OrganizeManifests. Why OrganizeManifests has a type-specific quality about it I don't know.

Anyway, I continue on.
Comment 3 Curtis Windatt CLA 2008-12-15 09:40:59 EST
FYI, the code you are hacking on might be affected by the work for bug 239494.
Comment 4 Robert Konigsberg CLA 2009-01-23 11:58:48 EST
How do I demote the priority of this issue? :)
Comment 5 Curtis Windatt CLA 2009-01-23 12:08:25 EST
Do we even need this bug anymore?  We have bug 188795 asking for the classes as API.  There is also bug 250446 for cleaning up the new plug-in project creation operation.

No need to change the priority, but this bug should either be closed as INVALID or what is being asked for should be clarified.
Comment 6 Robert Konigsberg CLA 2009-01-23 12:21:39 EST
My fundamental issue is that the API should be in a core plug-in, so that I can create plug-in projects without a UI.
Comment 7 Curtis Windatt CLA 2009-01-23 12:33:31 EST
(In reply to comment #6)
> My fundamental issue is that the API should be in a core plug-in, so that I can
> create plug-in projects without a UI.
> 

Part of the goal in bug 250446 was to separate the core/ui better (a prequisite to making any of it API).  I am thinking that this should be marked as a duplicate of that bug (or vice versa).
Comment 8 Chris Aniszczyk CLA 2009-01-23 12:34:39 EST
I agree, go for it Curtis.

Also, we should potentially look at using BND for manifest generation and manipulation.
Comment 9 Robert Konigsberg CLA 2009-01-23 12:35:12 EST
Okay, you guys know what you're doing, and what I'm looking for. Thanks!
Comment 10 Curtis Windatt CLA 2009-01-23 12:49:05 EST

*** This bug has been marked as a duplicate of bug 250446 ***