Introduction

This document lists changes made to the General Queries API.


Index of APIs

Incompatible changes by date

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.

All changes by date

Changes by version

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.queries/1 > 1.20

Changes by affected class

org.netbeans.api.queries.CollocationQuery

org.netbeans.spi.queries.CollocationQueryImplementation

org.netbeans.spi.queries.CollocationQueryImplementation2

org.netbeans.api.queries.FileEncodingQuery

org.netbeans.spi.queries.FileEncodingQueryImplementation

org.netbeans.api.fileinfo.NonRecursiveFolder

org.netbeans.api.queries.SharabilityQuery

org.netbeans.spi.queries.SharabilityQueryImplementation

org.netbeans.spi.queries.SharabilityQueryImplementation2

org.netbeans.api.queries.VisibilityQuery

org.netbeans.spi.queries.VisibilityQueryChangeEvent

org.netbeans.spi.queries.VisibilityQueryImplementation2


Details of all changes by API and date


General Queries API

VisibilityQueryChangeEvent added

Nov 9 '12; API spec. version: 1.32; affected top-level classes: VisibilityQueryChangeEvent; made by: mkleint; issues: #220749

Added new class VisibilityQueryChangeEvent which extends ChangeEvent and can be used by VisibilityQueryImplementation implementors to fire a change event with additional information attached. ChangeListener implementions listening on VisibilityQuery can then check the event's type when it arrives and use the additional information to their advantage.


Compatibility:

SharabilityQuery and CollocationQuery extended to use URI

Jan 13 '12; API spec. version: 1.27; affected top-level classes: CollocationQuery SharabilityQuery CollocationQueryImplementation CollocationQueryImplementation2 SharabilityQueryImplementation SharabilityQueryImplementation2; made by: alexvsimon; issues: #198060

Added new methods CollocationQuery.areCollocated(URI, URI) and CollocationQuery.findRoot(URI). Methods query all CollocationQueryImplementation (if possible) and CollocationQueryImplementation2 instances found in global lookup. Deprecated existing methods CollocationQuery.areCollocated(File, File) and CollocationQuery.findRoot(File). Methods query all CollocationQueryImplementation and CollocationQueryImplementation2 instances found in global lookup.

Added new methods SharabilityQuery.getSharability(URI) and SharabilityQuery.getSharability(FileObject). Methods query all SharabilityQueryImplementation (if possible) and SharabilityQueryImplementation2 instances found in global lookup. Deprecated existing method SharabilityQuery.getSharability(File). Method query all SharabilityQueryImplementation and SharabilityQueryImplementation2 instances found in global lookup.


Compatibility:

VisibilityQuery.isVisible(File) added

Mar 24 '08; API spec. version: 1.12; affected top-level classes: VisibilityQuery VisibilityQueryImplementation2; made by: mkleint; issues: #95974

Added new method VisibilityQuery.isVisible(File). It queries all VisibilityQueryImplementation instances found in global lookup. If such instance implements VisibilityQueryImplementation2, it's isVisible(File) method is used directly. If not, it attempts to delegate to the isVisible(FileObject) method. That might not work for non-existing files. All implementations of VisibilityQueryImplementation are encouraged to upgrade to VisibilityQueryImplementation2.


Compatibility:

Default Encoding of System File System is always UTF-8

Mar 28 '07; API spec. version: 1.10; affected top-level classes: FileEncodingQuery; made by: jtulach; issues: #94676

Whenever someone queries for encoding of a file object on default file system (e.g. the one that is provided by layers), it will get UTF-8 as the default encoding and not the system one. As a result all resources on layers should be in UTF-8 encoding.


Compatibility:

Added support for obtaining encoding of files

Feb 8 '07; API spec. version: 1.9; affected top-level classes: FileEncodingQuery FileEncodingQueryImplementation; made by: tzezula; issues: #42638

Added a query (FileEncodingQuery) to find out the encoding of the file. The query delegates to the instances of the SPI interface (FileEncodingQueryImplementation), when the SPI implementations don't know anything about the file encoding it returns the encoding corresponding to the file.encoding property. The API also provides getter and setter for default project encoding which should be used by the project generator.


Compatibility:

Added fileinfo package with NonRecursiveFolder interface.

Jan 14 '05; API spec. version: 1.4; affected top-level classes: NonRecursiveFolder; made by: mentlicher; issues: #52271

fileinfo package introduced for classes providing extra information about files or folders. NonRecursiveFolder interface added. It marks a representation of a folder that have non-recursive content (does not contain subfiles).

Switched to major release version 1

Dec 22 '04; API spec. version: 1.3; made by: jglick; issues: #51468

To indicate that this is now considered a stable API, the major release version was incremented to 1 from 0.


Compatibility:

Clients should begin requesting the new version to avoid a warning at startup.


Built on February 14 2013.  |  Portions Copyright 1997-2013 Oracle. All rights reserved.