站内搜索: 请输入搜索关键词
当前页面: 在线文档首页 > NetBeans API Javadoc 4.1.0

NetBeans API List - NetBeans API Javadoc 4.1.0

NetBeans API List

Release 4.1

4 May 2005

This document provides a list of NetBeans APIs released for NetBeans 4.1. Each API comes with a short description of what it can be used for, and a table describing different types of interfaces (see What is an API? to understand why we list DTDs, file formats, etc.) and with a stability category (see API life-cycle for a list of possible API stability categories and their meaning). The aim is to provide as detailed a definition of NetBeans module external interfaces as possible and give other developers a chance to decide whether they want to depend on a particular API or not.

The goal was to list only APIs that are stable in NetBeans 4.1. If you are looking for a list of all APIs NetBeans provides, look at the documentation of the development version (but please be prepared not to get scared as it lists nearly everything).

Some of these APIs are part of the NetBeans Platform (for example lookup, loaders, utilities, nodes, explorer, window systems, multiview, etc.), some of them are specific to NetBeans IDE (projects, javacore, diff, etc.).Basically when building an application based on NetBeans one is free to choose the set of modules and their APIs to satisfy one's needs.

Additional Sources of Information


Content


ant/project

javadoc | download | architecture | usecases

Provides the basic infrastructure by which Ant-based projects can be created, read and write configuration parameters and properties from/to disk, satisfy common queries and interfaces, etc. See Javadoc and build system design document.

Usage:

   OpenIDE-Module-Module-Dependencies: org.netbeans.modules.project.ant/1 > 1.6.1
  

Interface NameStability ClassificationSpecified in What Document?
AntProjectAPIOfficial

Mostly an SPI for creating project types centered around the Ant build tool. Permits Ant-based project types to be registered and supplies various support implementations to help satisfy the contract of Project and various optional interfaces.

Debugger Core API

javadoc | download | architecture | usecases

The debuggercore/api module (Debugger Core API) allows to install different debugger implementation to one IDE. It allows to share some common UI components. See debugger.netbeans.org and debuggercore.netbeans.org for more information.

Usage:

OpenIDE-Module-Module-Dependencies: org.netbeans.api.debugger/1

Interface NameStability ClassificationSpecified in What Document?
DebuggerCoreAPIOfficialhttp://www.netbeans.org/download/dev/javadoc/Debugger%20API/index.html

Debugger Core UI API

javadoc | download | architecture | usecases

The debuggercore module (Debugger Core UI) contains shared UI components for all debugger implementations, and defines some SPI for sharing of them. See debugger.netbeans.org and debuggercore.netbeans.org for more information.

Usage:

OpenIDE-Module-Module-Dependencies: org.netbeans.spi.debugger.ui/1

Interface NameStability ClassificationSpecified in What Document?
DebuggerCoreUI-SPIOfficialhttp://www.netbeans.org/download/dev/javadoc/Debugger%20Core%20UI%20SPI/index.html

Debugger JPDA API

javadoc | download | architecture | usecases

The debuggerjpda/api (Debugger JPDA API) defines API for NetBeans Java Debugger. See debugger.netbeans.org and debuggercore.netbeans.org for more information.

Usage:

OpenIDE-Module-Module-Dependencies: org.netbeans.api.debugger.jpda/1

Interface NameStability ClassificationSpecified in What Document?
JPDADebuggerAPIOfficialhttp://debuggercore.netbeans.org/docs/api/index.html

Diff

javadoc | download | architecture

The diff module provides the ability to visualize differencies between source files. It also has a graphical conflicts resolver tool and built-in patch algorithm. See diff.netbeans.org for more information.List of the main features: Simple APIs, that provide access to registered diff and merge engines and visualizers. Built in and external diff engines defined. Graphical diff vizualizer and conflicts resolver. Extensible with additional diff and merge engines and vizualizers. Patch algorithm implemented for UNIX-style, unidiff and contextual diff formats.

Usage:

Add following line into the module's manifest:
OpenIDE-Module-Module-Dependencies: org.netbeans.modules.diff/1 > 1.10.1

Interface NameStability ClassificationSpecified in What Document?
DiffAPIOfficialhttp://www.netbeans.org/download/dev/javadoc/DiffAPI/index.html
DiffImplementationAPIFriend

Execution

javadoc | download | architecture

The IDE uses a small interface to describe the execution of Java-based classes together with arguments. The ExecutionAPI controls the execution of user-level classes. The system may have several different types of executors simultaneously installed. By default we provide so called External Execution for running a user code by an external process and Internal Execution for running the user code in the same virtual machine as the IDE.

Interface NameStability ClassificationSpecified in What Document?
ExecutionAPIOfficialhttp://www.netbeans.org/download/dev/javadoc/ExecutionAPI/org/openide/execution/doc-files/api.html
Set of property APIsIndividualtable with definitions

editor/fold

javadoc | download | architecture | usecases

The Code Folding is part of the editor module functionality and it's responsible for hiding of the portions of the code that are less important for the user at the given time.

Usage:

OpenIDE-Module-Module-Dependencies: org.netbeans.modules.editor.fold/1 > 1.2.1

Interface NameStability ClassificationSpecified in What Document?
CodeFoldingAPIOfficial

projects/queries

javadoc | download | architecture | usecases

General kinds of queries between modules. Queries are one way of solving the intermodule communication problem when it is necessary for some modules to obtain basic information about the system (e.g. whether a particular file is intended for version control) without needing direct dependencies on the module providing the answer (e.g. the project type which controls the file). Details are covered in the Javadoc.

Usage:

   OpenIDE-Module-Module-Dependencies: org.netbeans.modules.queries/1 > 1.4.1
  

Interface NameStability ClassificationSpecified in What Document?
GeneralQueriesAPIOfficial

The General Queries API provides generic queries, or sources of concrete information, useful throughout the build system and perhaps elsewhere. Each query is split into an API component intended for clients to find the answer to a particular question without knowledge of the underlying structure or origin of the answer; and an SPI interface (using lookup) permitting answers to be provided from any source. These queries currently pertain to VCS and compilation status and user visibility of files.

Input/Output System

javadoc | download | architecture

The Input/Output API is a small API module (openide-io.jar) which contains InputOutput and related interfaces used in driving the Output Window. The normal implementation is core-output.jar. InputOutputAPI

Interface NameStability ClassificationSpecified in What Document?
InputOutputAPIOfficialhttp://www.netbeans.org/download/dev/javadoc/InputOutputAPI/org/openide/windows/package-summary.html

JavaHelp API

javadoc | download | architecture

The JavaHelp integration API wraps the standard JavaHelp extension library. It also provides a small additional API for NetBeans modules to supply help sets to the system, add GUI menu items, and request that particular help topics be displayed. JavaHelpIntegrationAPI

Interface NameStability ClassificationSpecified in What Document?
JavaHelpIntegrationAPIOfficialhttp://www.netbeans.org/download/dev/javadoc/JavaHelpAPI/index.html
Set of property APIsIndividualtable with definitions
Set of dtd APIsIndividualtable with definitions

java-srcmodel

javadoc | download | architecture

This module defines JavaHierarchyAPI which allows to inspect Java classes and possibly manipulate with portions of a .java source. Other modules, java and clazz, implement the API on top of source files or .class files respectively.

Interface NameStability ClassificationSpecified in What Document?
JavaHierarchyAPIOfficialhttp://www.netbeans.org/download/dev/javadoc/JavaHierarchyAPI/index.html

java/platform

javadoc | download | architecture | usecases

Many Java-based project types need to be able to configure the version and location of Java to be used when building and running the project. This API/SPI permits these platforms to be registered and queried, and any customizations made in an appropriate GUI and persisted to disk.

Usage:

   OpenIDE-Module-Module-Dependencies: org.netbeans.modules.java.platform/1 > 1.3.1
  

Interface NameStability ClassificationSpecified in What Document?
JavaPlatformAPIOfficial

The Java Platform API permits access to installed Java platforms (for example, the J2SE JDK, or various mobile-device emulators for J2ME). Particular platform types are registered by modules and can store customized information about the platform to disk.

java/project

javadoc | download | architecture | usecases

Provides support infrastructure for projects working with the Java language.

Usage:

For normal usage:

   OpenIDE-Module-Module-Dependencies: org.netbeans.modules.java.project/1 > 1.3.1
  

Interface NameStability ClassificationSpecified in What Document?
JavaProjectAPIOfficial

The Java Project API is actually entirely SPI and supplies useful implementations of Java-related functionality specific to the project system.

ProjectClassPathExtenderUnder Development

Implemented by java/j2seproject and asked for by form. Permits the Form Editor to add JavaBeans archives to the classpath of a J2SE project automatically.

ProjectClassPathSupportUnder Development

Support class containg helper method for creating ClassPathImplementation based on Ant properties.

Set of property APIsIndividualtable with definitions

java/api

javadoc | download | architecture | usecases

Models basic aspects of the metadata surrounding Java source files, such as the classpath. More information in the Javadoc.

Usage:

   OpenIDE-Module-Module-Dependencies: org.netbeans.api.java/1 > 1.7.1
  

Interface NameStability ClassificationSpecified in What Document?
JavaSupportAPIsOfficial

The Java Support APIs provides basic facilities for getting or supplying information about Java-language source files. It is based on the query pattern so implementations can be supplied from other modules or projects.

Loaders

javadoc | download | architecture | usecases

In summary, the LoadersAPI is responsible for scanning files in a directory on disk, weeding out irrelevant files of no interest to the IDE, and grouping the rest into logical chunks, or just determining what type of data each represents. It does this scanning by asking each registered data loader whether or not the given file(s) should be handled. The first loader to recognize a file takes ownership of it, and creates a matching data object to represent it to the rest of the IDE.

Interface NameStability ClassificationSpecified in What Document?
LoadersAPIOfficial@TOP@org/openide/loaders/doc-files/api.html
Set of property APIsIndividualtable with definitions
Set of layer APIsIndividualtable with definitions

NetBeans Metadata Repository

javadoc | download | architecture | usecases

See answer to the use-cases question.

Usage:

OpenIDE-Module-Module-Dependencies: org.netbeans.api.mdr/1 OpenIDE-Module-Requires: org.netbeans.api.mdr.MDRManager

Interface NameStability ClassificationSpecified in What Document?
MDRAPIStablehttp://www.netbeans.org/download/dev/javadoc/MDRAPI
OMG-Meta-Object-FacilityStandardhttp://www.omg.org/technology/documents/formal/mof.htm
OMG-XML-Metadata-InterchangeStandardhttp://www.omg.org/technology/documents/formal/xmi.htm
JSR-40-Java-Metadata-InterfaceStandardhttp://java.sun.com/products/jmi
Set of property APIsIndividualtable with definitions
Set of java.io.File APIsIndividualtable with definitions

projects/projectapi

javadoc | download | architecture | usecases

Provides a generic infrastructure for modelling projects. Documentation available in the Javadoc. The build system design overview describes the basic purpose of modelling projects.

Usage:

   OpenIDE-Module-Module-Dependencies: org.netbeans.modules.projectapi/1 > 1.3.1
  

Interface NameStability ClassificationSpecified in What Document?
ProjectAPIOfficial

The Project API defines abstract projects, i.e. groupings of files built and manipulated as units. It is used for Ant-based projects but could support other scenarios such as makefiles. Modules can plug in project types which can recognize certain folders as being projects, and define their behaviors.

projects/libraries

javadoc | download | architecture | usecases

Permits libraries to be defined, customized, and stored by the user for reuse in multiple projects. For example, a Java JAR library has a classpath (usually one JAR), and an optional source path and Javadoc path that may be used for development-time features.

Usage:

   OpenIDE-Module-Module-Dependencies: org.netbeans.modules.project.libraries/1 > 1.10.1
  

Interface NameStability ClassificationSpecified in What Document?
ProjectLibrariesAPIOfficial

The Project Libraries API permits definitions of libraries to be registered and persisted. Library type providers may be registered and can construct memory objects corresponding to persistent library definitions.

Set of dtd APIsIndividualtable with definitions

projects/projectuiapi

javadoc | download | architecture | usecases

The module supplies the APIs for the basic, generic UI infrastructure for projects: list of opened projects, main project, basic project-sensitive actions, template wizards, etc.

Usage:

   OpenIDE-Module-Module-Dependencies: org.netbeans.modules.projectuiapi/1 > ${OpenIDE-Module-Specification-Version}
  

Interface NameStability ClassificationSpecified in What Document?
ProjectUIAPIOfficial

The Project UI API provides some miscellaneous APIs and SPIs relating to the appearance and UI behavior of generic projects. Most importantly, it permits the customizer and logical view of a project to be defined.

ProjectUIAPI-providerFriend

Callbacks intended to let the Project UI module plug in implementations of APIs defined here. Uses implementation dependencies.

Set of layer APIsIndividualtable with definitions

Settings

javadoc | download | architecture

Settings are persistent objects with a set of properties, that should be available via lookup. Properties are expected to be changed. Implementation of setting doesn't care about persistence issues, which is responsibility of settings infrastructure. XML persistence support is provided in a standalone autoload module core-settings.jar. But a typical setting is a system option, which uses serialization at the moment. Also service types must be mentioned here. Service type can be desribed as typed a named settings. SettingsAPI ServicesAPI OptionsAPI XmlSettingsPersistence

Interface NameStability ClassificationSpecified in What Document?
SettingsAPIOfficialhttp://www.netbeans.org/download/dev/javadoc/OpenAPIs/org/openide/doc-files/services-api.html#settings
ServicesAPIOfficialhttp://www.netbeans.org/download/dev/javadoc/OpenAPIs/org/openide/doc-files/services-api.html#create
OptionsAPIOfficialhttp://www.netbeans.org/download/dev/javadoc/OpenAPIs/org/openide/options/doc-files/api.html
XmlSettingsPersistenceOfficialhttp://www.netbeans.org/download/dev/javadoc/SettingsAPI/org/netbeans/spi/settings/doc-files/api.html
Set of dtd APIsIndividualtable with definitions
Set of layer APIsIndividualtable with definitions

VCS Core API

javadoc | download | architecture

The VCS Core module provides basic structure and libraries on which support modules for various version control systems can be based. The modules, that integrate concrete version control systems into NetBeans IDE, depend on the VCS Core module. See vcscore.netbeans.org for more information.List of the main features: Simple VCS API (See http://vcscore.netbeans.org/doc/VCSAPI.html for details). Versioning main menu. Generic mount action for VCS integrations. Provides VcsFileSystem, that can be used as a base for VCS integration. Mechanism for VCS commands execution including threads management and mutual commands synchronization. Nodes on Runtime tab representing running and finished commands. Component for displaying raw text output of commands with high throughoutput. Generic action with a popup menu of VCS commands with a tree-like structure. Versioning toolbar with pre-defined six generic actions. Caching infrastructure for persistent storage of VCS-related information about files. Vcs Groups with ability to group related files that the developer work on. Ability to seach the VCS filesystem by file status information. Versioning Explorer, that allows to browse individual file revisions and run commands on individual revision(s). Common VCS settings. Mounting wizard for CVS filesystem, that can mount built-in or command-line CVS client (which are in separate modules).

Usage:

Add following line into the module's manifest:
OpenIDE-Module-Module-Dependencies: org.netbeans.modules.vcscore/1 > 1.14.1

Interface NameStability ClassificationSpecified in What Document?
VCSAPIOfficialhttp://www.netbeans.org/download/dev/javadoc/VCSAPI/index.html
VcsCoreImplementationAPIFriend
Set of property APIsIndividualtable with definitions

View Model

javadoc | download | architecture | usecases

The debuggercore/ViewModel module (View Model) allows to share one TreeTableView among different modules. See debugger.netbeans.org and debuggercore.netbeans.org for more information.

Usage:

OpenIDE-Module-Module-Dependencies: org.netbeans.spi.viewmodel/2

Interface NameStability ClassificationSpecified in What Document?
ViewModelOfficialhttp://debuggercore.netbeans.org/docs/api/index.html

Actions

javadoc | download | architecture | usecases

Actions provides system of support and utility classes for 'actions' usage in NetBeans.

Interface NameStability ClassificationSpecified in What Document?
ActionsAPIOfficialhttp://www.netbeans.org/download/dev/javadoc/OpenAPIs/org/openide/actions/doc-files/api.html
Set of property APIsIndividualtable with definitions

Dialogs API

javadoc | download | architecture | usecases

The DialogsAPI allows creating a user notification, a dialog's description and also permits it to be displayed. The wizard framework allows create a sequence of panels which leads a user through the steps to complete any task. This API is part of package org.openide.

Interface NameStability ClassificationSpecified in What Document?
DialogsAPIOfficialhttp://www.netbeans.org/download/dev/javadoc/OpenAPIs/org/openide/package-summary.html#package_description

Editor

javadoc | download | architecture

The EditorAPI is used for accessing editor-related functionality from within the IDE for use by other modules and the core IDE itself.

Interface NameStability ClassificationSpecified in What Document?
EditorAPIOfficialhttp://www.netbeans.org/download/dev/javadoc/OpenAPIs/org/openide/text/doc-files/api.html
Set of property APIsIndividualtable with definitions

Explorer API

javadoc | download | architecture

The ExplorerAPI is build around Explorer - solely a user-interface device: it has no particular knowledge of the structure of the IDE. Rather, it provides the physical user interface for the Node hierarchy, as described in the NodesAPI. A given Explorer instance will be some visual component (such as a Swing panel) displaying some representation of a subtree of the complete Node hierarchy; the topmost node being displayed is said to be the root of the Explorer. Be careful not to confuse the root of a particular Explorer instance, which is selected according to what the user wishes to see, with the root(s) of the entire Node hierarchy, which generally are fixed.

Interface NameStability ClassificationSpecified in What Document?
ExplorerAPIOfficialhttp://www.netbeans.org/download/dev/javadoc/OpenAPIs/org/openide/explorer/doc-files/api.html
TreeTableViewSortingAPIFriend
Set of property APIsIndividualtable with definitions

Filesystems

javadoc | download | architecture

The Filesystems API provides a common API to access files in a uniform manner. It is available as standalone library and also is bundled together with other parts of the openide. Specification

Interface NameStability ClassificationSpecified in What Document?
FilesystemsAPIOfficialhttp://www.netbeans.org/download/dev/javadoc/OpenAPIs/org/openide/filesystems/doc-files/api.html
Set of property APIsIndividualtable with definitions
Set of dtd APIsIndividualtable with definitions

Lookup

javadoc | download | architecture | usecases

The Lookup is a central part of communication between different parts of a modularized component system. It allows lookup and discovery of features by description of their interfaces. It is available as separate library and also resides in the heart of the NetBeans.

Interface NameStability ClassificationSpecified in What Document?
ProviderRegistrationRemovalUnder Developmenthttp://www.netbeans.org/download/dev/javadoc/OpenAPIs/org/openide/doc-files/services-api.html#service-lookup
LookupAPIOfficialhttp://www.netbeans.org/download/dev/javadoc/OpenAPIs/org/openide/doc-files/services-api.html#lookup

Additional info can be found at

LookupSPIOfficialhttp://www.netbeans.org/download/dev/javadoc/OpenAPIs/org/openide/util/lookup/package-frame.html

Additional info can be found at

Set of property APIsIndividualtable with definitions

Modules

javadoc | download | architecture

The Modules API lies at the core of NetBeans and describes how plug-in modules are added and managed. ModulesAPI

Interface NameStability ClassificationSpecified in What Document?
ModulesAPIOfficialhttp://www.netbeans.org/download/dev/javadoc/OpenAPIs/org/openide/modules/doc-files/api.html
CoreModulesAPIFriendhttp://www.netbeans.org/unbranded-source/browse/~checkout~/core/src/org/netbeans/core/modules/package.html
Set of property APIsIndividualtable with definitions
Set of dtd APIsIndividualtable with definitions

Nodes

javadoc | download | architecture

Nodes API serves as the main aparatus for visualisation of objects in NetBeans. Nodes augment objects with standard aspects used for visualisation (e.g. name, displayName, icons, set of proerties, subnodes hierarchy, etc.) Once a Node is defined for given object it can be visualised using diferent views e.g. trees, lists, tables etc. Descripion of nodes can be found here.

Interface NameStability ClassificationSpecified in What Document?
NodesAPIOfficialhttp://www.netbeans.org/download/dev/javadoc/OpenAPIs/org/openide/nodes/doc-files/api.html
Set of property APIsIndividualtable with definitions

PropertySheet API

javadoc | download | architecture

The property sheet is a generic user interface component and infrastructure for displaying and editing properties of objects.

Interface NameStability ClassificationSpecified in What Document?
PropertySheetAPIOfficialhttp://www.netbeans.org/download/dev/javadoc/OpenAPIs/org/openide/explorer/doc-files/api.html
Set of property APIsIndividualtable with definitions
Set of javax.swing.UIManager APIsIndividualtable with definitions

Utilities

javadoc | download | architecture

JRE concept wrappersm, improved UI building classes and Usefull methods that are harder to write correctly in separate modules are provided in this UtilitiesAPI API.

Interface NameStability ClassificationSpecified in What Document?
UtilitiesAPIOfficialhttp://www.netbeans.org/download/dev/javadoc/OpenAPIs/org/openide/util/doc-files/api.html
Set of property APIsIndividualtable with definitions

Window System

javadoc | download | architecture | usecases

Window System API is used to display and control application GUI: Main window, frames, components. There is a UI specification document.

Usage:

Declare dependency on openide module ie. add following line to manifest of your module: OpenIDE-Module-IDE-Dependencies: IDE/1 > X.XX (it will be defined yet) as window system is part of openide. And dependeny on implementation: OpenIDE-Module-Module-Dependencies: org.netbeans.core.windows > X.XX. But since the core-windows.jar does not provide any public API this should be used only in ui-declaration module (like core-ui.jar).

Interface NameStability ClassificationSpecified in What Document?
UsecasesUnder Developmenthttp://core.netbeans.org/windowsystem/changes.html#4

Use cases

WindowSystemAPIOfficialhttp://www.netbeans.org/download/dev/javadoc/OpenAPIs/org/openide/windows/doc-files/api.html
WindowSystemImplementationAPIFriend
DataFlavorDnDTopComponentPrivate

DataFlavor.javaJVMLocalObjectMimeType + "; class=org.openide.windows.TopComponent"

DataFlavorDnDTopComponent.CloneablePrivate

DataFlavor.javaJVMLocalObjectMimeType + "; class=org.openide.windows.TopComponent$Cloneable"

DataFlavorDnDTopComponentArrayPrivate

DataFlavor.javaJVMLocalObjectMimeType + "; class=org.netbeans.core.windows.dnd.TopComponentDragSupport$TopComponentArray"

Set of property APIsIndividualtable with definitions
Set of dtd APIsIndividualtable with definitions
Set of layer APIsIndividualtable with definitions
Set of javax.swing.UIManager APIsIndividualtable with definitions