Bug 309539 - [planner] Make ProfileChangeRequest internal
Summary: [planner] Make ProfileChangeRequest internal
Status: RESOLVED FIXED
Alias: None
Product: Equinox
Classification: Eclipse Project
Component: p2 (show other bugs)
Version: 3.6   Edit
Hardware: PC Windows XP
: P3 normal (vote)
Target Milestone: 3.7 M3   Edit
Assignee: P2 Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords: api
Depends on: 326084 326090
Blocks:
  Show dependency tree
 
Reported: 2010-04-16 16:15 EDT by DJ Houghton CLA
Modified: 2010-09-23 15:32 EDT (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description DJ Houghton CLA 2010-04-16 16:15:05 EDT
Currently the ProfileChangeRequest class is in a provisional API package in the director bundle. We should move it to an internal package since it doesn't need to be API.

- the class is marked as noimplement, noextend
- new instances are created via API on IPlanner
Comment 1 Pascal Rapicault CLA 2010-04-16 19:01:27 EDT
I suppose that we can move that right now (for 3.6 M7). Since this is not really an API change. What do you think?
Comment 2 DJ Houghton CLA 2010-04-17 16:43:27 EDT
Someone correct me if I'm wrong but I believe by the new API rules of engagement that provisional API is treated by the same rules as real API (as far as removal, etc) after the M6 API freeze so I don't think we can do this for 3.6.
Comment 3 Ian Bull CLA 2010-04-18 21:49:57 EDT
(In reply to comment #2)
> Someone correct me if I'm wrong but I believe by the new API rules of
> engagement that provisional API is treated by the same rules as real API (as
> far as removal, etc) after the M6 API freeze so I don't think we can do this
> for 3.6.

Actually, I don't think it has anything to do with the word *provisional*, it all depends if the package has been exported from the bundle for general consumption.  If the package has been exported for all other bundles to see, then I think it's considered API. I'm pretty new at this, so I could be wrong.
Comment 4 Jeff McAffer CLA 2010-04-19 09:56:13 EDT
http://wiki.eclipse.org/Provisional_API_Guidelines_Update_Proposal strongly DIScourages the changing of provisional API after the freeze to limit disruption for downstream clients.

I suggest we add @noreference and a note that the class is present on error and will be removed in 3.7.
Comment 5 DJ Houghton CLA 2010-04-19 11:47:30 EDT
Ok, I have added the following javadoc for 3.6:

@noreference This class was unintentionally left in the provisional API package and is intended to be made internal in Eclipse 3.7. Clients should create and manipulate profile change requests via the API {@link IPlanner#createChangeRequest(IProfile)} and methods on {@link IProfileChangeRequest}.
Comment 6 DJ Houghton CLA 2010-09-23 15:32:17 EDT
I've moved the class to the internal package in HEAD.
PDE/UI has fixed their reference.
Closing.