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 55371 - Public API to manage library instances
Summary: Public API to manage library instances
Status: RESOLVED FIXED
Alias: None
Product: projects
Classification: Unclassified
Component: Libraries (show other bugs)
Version: 4.x
Hardware: All All
: P1 blocker (vote)
Assignee: Tomas Zezula
URL:
Keywords: API
Depends on: 82469
Blocks: 76979 78597
  Show dependency tree
 
Reported: 2005-02-22 19:31 UTC by Mark Dey
Modified: 2006-10-23 16:40 UTC (History)
6 users (show)

See Also:
Issue Type: ENHANCEMENT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Mark Dey 2005-02-22 19:31:35 UTC
Currently, the project libraries API provides a
LibraryCustomizer UI for adding or deleting
libraries but there is no public API for
programatically creating or deleting libraries.
This capability is essential for module writers
needing to manage custom libraries on the user's
behalf.

Use case: user drags a web service component onto
a web form. A jar file is generated containing the
proxy APIs for this service and is added to the
project. The module performing this function then
needs to create a new Library instance and add it
to the project (assuming the project supports a
ProjectClassPathExtender interface).
Comment 1 Jesse Glick 2006-05-09 23:06:27 UTC
"Version" field should be the *earliest* reported version, not the latest.
Comment 2 _ edwingo 2006-05-25 01:41:51 UTC
Also needed to support complibs in Creator.
Comment 3 _ edwingo 2006-07-15 00:40:39 UTC
I'm not completely clear on what the details of this issue entails, but I wanted
to restate what I understand needs to be implemented for complib support. 1) a
public API to create library definitions similar to the current library manager
UI. 2) a public API to create library references which are stored within a
project that point to library definitions. This includes being able to control
the "packaging" flag of the reference. Currently, there is no way to control the
"packaging" flag. The library reference is stored within the project and points
to a library definition which is currently stored in the userdir. Ideally, the
definition would also be stored in the project but I understand this will not be
implemented for the next release.
Comment 4 Mark Dey 2006-08-08 15:29:11 UTC
Is there any progress on this RFE? This is a blocker for the Visual Web Pack for
5.5. I am concerned that this API issue is still outstanding in a module that I
believe is in high resistance.
Comment 5 Tomas Zezula 2006-08-08 16:24:22 UTC
The API for creating/deleting a library form the LibraryManager will be
available in the NetBeans 5.5. The API for adding/removing the library to the
project's classpath is already part of the 5.5. Deployment flag is specific for
web/ejb project - has to be handled by the specific project type not
java/project.  The project/libraries module is in the high resistance from the
time of NetBeans 5.0.
Comment 6 Tomas Zezula 2006-09-11 10:57:18 UTC
Checking in apichanges.xml;
/cvs/projects/libraries/apichanges.xml,v  <--  apichanges.xml
new revision: 1.5; previous revision: 1.4
done
Checking in src/org/netbeans/api/project/libraries/Library.java;
/cvs/projects/libraries/src/org/netbeans/api/project/libraries/Library.java,v 
<--  Library.java
new revision: 1.9; previous revision: 1.8
done
Checking in src/org/netbeans/api/project/libraries/LibraryManager.java;
/cvs/projects/libraries/src/org/netbeans/api/project/libraries/LibraryManager.java,v
 <--  LibraryManager.java
new revision: 1.7; previous revision: 1.6
done
RCS file:
/cvs/projects/libraries/src/org/netbeans/modules/project/libraries/LibraryAccessor.java,v
done
Checking in src/org/netbeans/modules/project/libraries/LibraryAccessor.java;
/cvs/projects/libraries/src/org/netbeans/modules/project/libraries/LibraryAccessor.java,v
 <--  LibraryAccessor.java
initial revision: 1.1
done
RCS file:
/cvs/projects/libraries/src/org/netbeans/spi/project/libraries/LibraryFactory.java,v
done
Checking in src/org/netbeans/spi/project/libraries/LibraryFactory.java;
/cvs/projects/libraries/src/org/netbeans/spi/project/libraries/LibraryFactory.java,v
 <--  LibraryFactory.java
initial revision: 1.1
done
Checking in src/org/netbeans/spi/project/libraries/support/LibrariesSupport.java;
/cvs/projects/libraries/src/org/netbeans/spi/project/libraries/support/LibrariesSupport.java,v
 <--  LibrariesSupport.java
new revision: 1.4; previous revision: 1.3
done
Checking in
test/unit/src/org/netbeans/api/project/libraries/LibraryManagerTest.java;
/cvs/projects/libraries/test/unit/src/org/netbeans/api/project/libraries/LibraryManagerTest.java,v
 <--  LibraryManagerTest.java
new revision: 1.6; previous revision: 1.5
done