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 44492 - API review of "javamodel" module
Summary: API review of "javamodel" module
Status: RESOLVED FIXED
Alias: None
Product: editor
Classification: Unclassified
Component: Refactoring (show other bugs)
Version: 4.x
Hardware: PC Linux
: P3 blocker (vote)
Assignee: Martin Matula
URL:
Keywords: API_REVIEW
Depends on: 45445 45446 45448 45449 45451 45452 45453 45454 45456 45457 50085 51937
Blocks:
  Show dependency tree
 
Reported: 2004-06-07 23:52 UTC by Martin Matula
Modified: 2007-04-03 18:02 UTC (History)
2 users (show)

See Also:
Issue Type: TASK
Exception Reporter:


Attachments
Javadoc + API answers (1.12 MB, application/octet-stream)
2004-06-07 23:54 UTC, Martin Matula
Details
Javadoc + API answers for JavaCore module (44.96 KB, application/octet-stream)
2004-06-10 02:46 UTC, Martin Matula
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Matula 2004-06-07 23:52:56 UTC
I would like to ask for a devrev for "javamodel"
module (formerly part of "javacore" module).
Javamodel module provides JMI API for accessing
the Java metadata.
Since the module contains purely the JMI API, it
is envisioned that an additional support API will
be present in javacore module (that contains the
implementation of the JMI API in javamodel) to
provide convenient entry points to the JMI. This
envisioned API is partly done but not public yet,
since it needs to be tuned based on the experience
we gain from using it. Thus I am not sure if there
should be a review also for "javacore" (I am able
to provide API answers in a day or two if necessary).
I am filing this issue against refactoring module
since javamodel is introduced together with the
new refactoring functionality and it makes it
easier to find this issue, since refactoring is a
new module that contains only the issues related
to the new Java language infrastructure.
Comment 1 Martin Matula 2004-06-07 23:54:43 UTC
Created attachment 15540 [details]
Javadoc + API answers
Comment 2 Martin Matula 2004-06-10 02:46:44 UTC
Created attachment 15622 [details]
Javadoc + API answers for JavaCore module
Comment 3 Martin Matula 2004-06-10 02:47:44 UTC
After talking to Yarda, I have created a tiny API also in the JavaCore
module. I have attached the JavaDoc and API answers for it.
Comment 4 Pavel Buzek 2004-06-13 22:09:59 UTC
pb01 Improve (in fact create some :-) documentation of
JavaModelPackage. This class has different role then most other
classes and the concept may not be obvious for users of this API who
are not familiar with MOF and JMI (IMHO usage of this API should not
require any knoledge of these technologies). The example in use cases
section is not clear enough.
Comment 5 Pavel Buzek 2004-06-23 13:53:35 UTC
Thanks for all comments at nbdev and in review meeting. I have
summarized them in opinion document:
http://openide.netbeans.org/tutorial/reviews/opinions_44492.html

Martin, please resolve the blocking issues and come back for final review.
Comment 6 Jaroslav Tulach 2004-07-23 10:01:30 UTC
I've been told that the memory consumption is increasing with the
amount of files in classpaths - e.g. opened projects - as the index of
all identifiers is kept in memory. I am sure somebody else has already
told you that, but it is not good design. You should store the index
in a file on a disk and ocupy either constant or O(log (#files)) of
memory.
Comment 7 Martin Matula 2004-07-23 13:23:29 UTC
I'm sure this is not the only thing within the whole IDE which grows
approx. linearly with the number of classpath elements. The indexes
that are kept in memory are essential - they are accessed many times
during a single document attribution to resolve class names. Our
assumption was that any additional de-/serialization logic will
negatively affect performance of file attribution (which is done
during file opening, code completion, etc.) and is not worth of
implementing since e.g. for "refactoring" and all dependent projects
open (which is about 30 projects) the indexes take less than 8MB and
we are still working on improving their size.
Comment 8 Tomas Hurka 2004-09-03 10:52:40 UTC
Architecture Summary is available here:
http://www.netbeans.org/download/dev/javadoc/javacoredoc/index.html

Comment 9 Jaroslav Tulach 2004-09-03 15:45:48 UTC
The final review will happen on Sep 9, 9am pacific time, 18pm CET
Comment 10 Tomas Hurka 2004-09-03 16:02:07 UTC
Architecture Summary and javadoc for Java Language Model API is at:
http://www.netbeans.org/download/dev/javadoc/javamodeldoc/index.html