This document lists changes made to the Project Libraries API.
Fuller descriptions of all changes can be found below (follow links).
Not all deprecations are listed here, assuming that the deprecated APIs continue to essentially work. For a full deprecation list, please consult the Javadoc.
Library to provide properties
These API specification versions may be used to indicate that a module requires a certain API feature in order to function. For example, if you see here a feature you need which is labelled 1.20, your manifest should contain in its main attributes the line:
OpenIDE-Module-Module-Dependencies: org.netbeans.modules.project.libraries/1 > 1.20
Library to provide properties
org.netbeans.spi.project.libraries.ArealLibraryProvider
org.netbeans.api.project.libraries.LibrariesCustomizer
org.netbeans.spi.project.libraries.support.LibrariesSupport
org.netbeans.api.project.libraries.Library
Library to provide properties
org.netbeans.api.project.libraries.LibraryChooser
org.netbeans.spi.project.libraries.LibraryCustomizerContext
org.netbeans.spi.project.libraries.LibraryFactory
org.netbeans.spi.project.libraries.LibraryImplementation2
org.netbeans.spi.project.libraries.LibraryImplementation3
Library to provide properties
org.netbeans.api.project.libraries.LibraryManager
org.netbeans.spi.project.libraries.LibraryProvider
org.netbeans.spi.project.libraries.LibraryStorageArea
org.netbeans.spi.project.libraries.LibraryTypeProvider
org.netbeans.spi.project.libraries.NamedLibraryImplementation
LibraryManager NamedLibraryImplementation; made by: tzezula; issues:
#199253
displayName property into the Library's SPI
allowing an implementor to provide the a display name of the Library
which differs from the system (identifying) name.
Library LibraryImplementation3; made by: tzezula
LibraryImplementation3.PROP_PROPERTIES providing the name
of the properties property.
Library to provide properties
Library LibraryImplementation3; made by: tzezula; issues:
#199253
Library to provide properties.
LibraryManager Library LibrariesCustomizer LibraryCustomizerContext LibraryImplementation2 LibrariesSupport; made by: dkonecny; issues:
#129628
API review of Sharable Libraries requested using URI for relative paths instead of URL.
Added LibraryCustomizerContext class to provide richer
context to libraries customizer.
Signatures of some methods previously using URL were changed to use URI. Some URL handling methods were removed and/or replaced with URI counterpart.
LibraryManager Library LibraryChooser LibrariesCustomizer LibraryProvider ArealLibraryProvider LibraryStorageArea LibrariesSupport; made by: jglick; issues:
#44035
There is a new API and SPI for project libraries
(or, more generally, libraries with specific storage locations).
ArealLibraryProvider,
and LibraryStorageArea are new, as are methods
Library.getManager,
Library.getRawContent(String)
LibraryManager.getDisplayName,
LibraryManager.getLocation,
LibraryManager.createLibrary,
LibraryManager.forLocation, and
LibraryManager.getOpenManagers.
(LibraryProvider was also generified.)
LibrariesSupport has few additional helper methods.
There's also new methods and classes for UI customizations of Libraries, eg.
LibrariesCustomizer.showCreateNewLibraryCustomizer(LibraryManager),
LibrariesCustomizer.showCustomizer(Library, LibraryManager),
LibrariesCustomizer.showSingleLibraryCustomizer(Library),
and LibraryChooser class.
LibraryManager.addLibrary will not work with areas,
so it was deprecated in favor of the new createLibrary.
Code which obtained a Library of arbitrary origin,
and then assumed it could refer to that library henceforth by name only,
will not work with project libraries.
The simplest persistent identifier for a new-style library is pair of name
and URL of manager (null for the default manager).
LibraryTypeProvider; made by: mkleint
LibraryTypeProvider.getCustomizer() can return null for some volume types.
LibraryManager LibraryFactory LibrariesSupport; made by: tzezula
Added method for adding and removing a new library into/from the library manager. Added a factory class for creating Library (API object) form LibraryImplementation (SPI object). Added a support methods for listing installed LibraryTypeProviders.
To indicate that this is now considered a stable API, the major release version was incremented to 1 from 0.
Clients should begin requesting the new version to avoid a warning at startup.
Built on May 24 2012. | Portions Copyright 1997-2012 Oracle. All rights reserved.