This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 31426 - Unwanted/undocumented API in projects module
Summary: Unwanted/undocumented API in projects module
Status: VERIFIED FIXED
Alias: None
Product: usersguide
Classification: Unclassified
Component: Projects (show other bugs)
Version: 3.x
Hardware: PC Linux
: P1 blocker (vote)
Assignee: Vitezslav Stejskal
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-02-25 08:42 UTC by Jaroslav Tulach
Modified: 2003-03-17 07:11 UTC (History)
2 users (show)

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments
commitlog (trunk) (2.09 KB, text/plain)
2003-03-03 13:45 UTC, Vitezslav Stejskal
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jaroslav Tulach 2003-02-25 08:42:19 UTC
I've just find out that there is official API in
projects module:

http://www.netbeans.org/servlets/ReadMsg?msgId=469402&listName=api-changes

which does not seem to be documented:

http://www.netbeans.org/download/dev/javadoc/

that should improve before release + please use
@since tag in the javadoc.
Comment 1 Vitezslav Stejskal 2003-02-25 08:52:56 UTC
Jardo, could you point me to the docs describing how to add project's
javadoc on the page. The module's build.xml contains javadoc target
which generates documentation. Is there anything else I should do to
publish my javadoc? Thanks.
(also CCing rbalada he could know too)
Comment 2 Jaroslav Tulach 2003-02-25 12:14:32 UTC
I do not know about any docs. Do you Ruda know? Anyway what is
necessary is to modify javadoc target in nbbuild to include your
module. There should be some Build.properties for that....
Comment 3 Jaroslav Tulach 2003-02-25 15:39:05 UTC
Jesse might have some opinion as well.
Comment 4 Vitezslav Stejskal 2003-02-25 15:49:48 UTC
Thanks, done. Let's see if it will appear on the page tomorrow. I have
also added @since 1.12 to ProjectManager class.
Comment 5 Jesse Glick 2003-02-25 15:52:38 UTC
All you need to do is add 'projects' to
nbbuild/build.properties:${config.fixedmodules.javadoc}.

Anyway I don't think such an API should be published.
Places.Nodes.projectDesktop is deprecated, but it still works and does
what ProjectManager.default.projectRootNode does - and both are
equally unspecified w.r.t. what exactly they return. The "root node of
the project", fine, but what exactly can you do with this root node?
There is no specification.

I suggest ProjectManager be deleted, and P.N.pD be left deprecated but
with the same behavior as it has had for the past few releases.
Existing modules relying on the unspecified impl behavior will
probably continue to work in 3.5; and they will break in 4.0. Fine; we
warned them.
Comment 6 Vitezslav Stejskal 2003-02-25 16:07:20 UTC
Well, I still tend to have some replacement for deprecated Places API.

The people mostly used P.N.pD to get DataFolder.class cookie from it
and then add some links (shadows) to this folder. They then appeared
on the projects tab, this is e.g. what web/core module does when you
generate web module from template.

Would it be acceptable to replace the
ProjectManager.default.projectRootNode by PM.d.projectLinks or
PM.d.projectFolder or something similar. The description of this
method could then explain that it returns the folder where links
(DataShadows) can be added and that these links are what user sees in
the projects tab.
Comment 7 Jaroslav Tulach 2003-02-25 16:14:37 UTC
1. projectsLinks is what I was thinking about first time I saw the
content of the manager.

2. what do you plan to do with this API in 4.0? If you introduce it as
stable, it should next version become deprecated and then removed.
That is I expect not your plan...
Comment 8 Jesse Glick 2003-02-25 16:31:03 UTC
(1) Agreed that projectLinks would be more useful than projectDesktop.

(2) But still not convinced that we need to introduce a new API method
(and in fact a whole new API set!) for something which (a) already
exists, (b) was already deprecated for a long time as being
essentially meaningless and likely to be broken in the future. We know
it will be broken in 4.0.

Perhaps ProjectManager (and the API set) can be deleted, and
Places.java Javadoc changed to say that projectDesktop in 3.5, as in
prior releases, produces a node with a DataFolder cookie which can be
used to add links to, but that this behavior will probably not be
supported in future releases, so use at your own risk. I don't think
we need to provide any replacement for this deprecated method - in NB
3.x, adding to the projects tab is simply not an activity that is
formally supported in the APIs.
Comment 9 Vitezslav Stejskal 2003-02-25 18:38:49 UTC
OK, I will remove this API.
Comment 10 Vitezslav Stejskal 2003-03-03 13:44:26 UTC
The API has been removed.
Comment 11 Vitezslav Stejskal 2003-03-03 13:45:07 UTC
Created attachment 9236 [details]
commitlog (trunk)
Comment 12 Jesse Glick 2003-03-03 19:48:00 UTC
Please check also projects/build.xml 1.39.
Comment 13 Milan Kubec 2003-03-10 13:58:22 UTC
Jardo, please could you verify this issue.
Comment 14 Jaroslav Tulach 2003-03-17 07:11:21 UTC
API is really gone.