| <html> |
| <!-- |
| |
| NO NO NO NO NO! |
| |
| ==============> DO NOT EDIT ME! <============== |
| |
| AUTOMATICALLY GENERATED FROM APICHANGES.XML, DO NOT EDIT |
| |
| SEE projects/projectapi/apichanges.xml |
| |
| --> |
| |
| <head> |
| <META http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
| |
| <title>Change History for the Project API</title> |
| |
| <link rel="stylesheet" href="prose.css" type="text/css"> |
| |
| </head> |
| |
| <body> |
| |
| |
| <p class="overviewlink"> |
| <a href="overview-summary.html" shape="rect">Overview</a> |
| </p> |
| |
| |
| <h1>Introduction</h1> |
| |
| |
| <p>This document lists changes made to the <a href="../org-netbeans-modules-projectapi/index.html" shape="rect">Project API</a>.</p> |
| |
| <!-- The actual lists of changes, as summaries and details: --> |
| |
| <hr> |
| |
| <h1> |
| <a name="list-all-apis">Index of APIs</a> |
| </h1> |
| <ul> |
| <li> |
| <a href="#general">Project API</a> |
| </li> |
| </ul> |
| <h1> |
| <a name="incompat-by-date">Incompatible changes by date</a> |
| </h1> |
| <p>Fuller descriptions of all changes can be found below (follow links).</p> |
| <p>Not all deprecations are listed here, assuming that the deprecated |
| APIs continue to essentially work. For a full deprecation list, please |
| consult the |
| <a href="deprecated-list.html">Javadoc</a>.</p> |
| <ul> |
| <li>(Nov 15 '11) <a href="#SourceGroup.contains.IAE"><code>SourceGroup.contains</code> no longer throws <code>IllegalArgumentException</code></a> |
| </li> |
| </ul> |
| <h1> |
| <a name="all-by-date">All changes by date</a> |
| </h1> |
| <ul> |
| <li>(Mar 20 '17) <a href="#SourceGroupRelativeModifierImplementation">Added a <code>SourceGroupRelativeModifierImplementation</code> to improve source root creation</a> |
| </li> |
| <li>(Jun 8 '15) <a href="#SharabilityQueryMerger">Added a <code>LookupMerger</code> for <code>SharabilityQueryImplementation2</code></a> |
| </li> |
| <li>(Apr 30 '14) <a href="#ProjectManager.Result">More information in <code>ProjectManager.Result</code></a> |
| </li> |
| <li>(Apr 7 '14) <a href="#ProjectManagerImplementation">SPI interface for <code>ProjectManager</code></a> |
| </li> |
| <li>(Nov 20 '13) <a href="#DependencyProjectProvider"></a> |
| </li> |
| <li>(Sep 26 '12) <a href="#LookupProviderSupport.multi">New method createCompositeLookup(Lookup, Lookup) in LookupProviderSupport</a> |
| </li> |
| <li>(May 30 '12) <a href="#FOQ.UNOWNED">New constant UNOWNED in FileOwnerQuery to mark a folder as definitely not owned by any project.</a> |
| </li> |
| <li>(Mar 20 '12) <a href="#ActionProgress">Added <code>ActionProgress</code></a> |
| </li> |
| <li>(Nov 15 '11) <a href="#SourceGroup.contains.IAE"><code>SourceGroup.contains</code> no longer throws <code>IllegalArgumentException</code></a> |
| </li> |
| <li>(Sep 10 '11) <a href="#ActionProviderMerger">Added <code>LookupProviderSupport.createActionProviderMerger</code> factory method</a> |
| </li> |
| <li>(Mar 27 '11) <a href="#Profiler.Actions">Profiler actions are an integral part of the project infrastructure - just like the debugger actions</a> |
| </li> |
| <li>(Jun 24 '10) <a href="#ProjectIconAnnotator">Added <code>ProjectIconAnnotator</code></a> |
| </li> |
| <li>(Apr 15 '10) <a href="#MoveOrRenameOperationImplementation">Added <code>MoveOrRenameOperationImplementation</code></a> |
| </li> |
| <li>(Jul 21 '09) <a href="#ProjectUtils.getCacheDirectory">API complement to <code>CacheDirectoryProvider</code></a> |
| </li> |
| <li>(Feb 18 '09) <a href="#source-group-modifier">introduction of SourceGroupModifier, a way to create SourceGroup if missing</a> |
| </li> |
| <li>(Jan 23 '09) <a href="#ProjectServiceProvider">Add annotations <code>@ProjectServiceProvider</code> and <code>@LookupMerger.Registration</code></a> |
| </li> |
| <li>(Jan 13 '09) <a href="#projectfactory2">Provide project icon without actually loading the project</a> |
| </li> |
| <li>(Nov 13 '08) <a href="#lookupprovider-ann">Add annotation @LookupProvider.Registration</a> |
| </li> |
| <li>(Jul 9 '08) <a href="#test-single-method">Added class <code>SingleMethod</code></a> |
| </li> |
| <li>(Jun 9 '08) <a href="#ProjectUtils.getAuxiliaryConfiguration">Added <code>ProjectUtils.getAuxiliaryConfiguration</code></a> |
| </li> |
| <li>(Jun 9 '08) <a href="#projectutils-getPreferences">Added ProjectUtils.getPreferences.</a> |
| </li> |
| <li>(Oct 5 '06) <a href="#lookup-provider">Added support for composing project's lookup from multiple sources.</a> |
| </li> |
| <li>(Sep 8 '06) <a href="#ProjectConfigurationProvider">Added support for project configurations</a> |
| </li> |
| <li>(Aug 22 '05) <a href="#copy-move-support">Added support for project delete/copy/rename/move</a> |
| </li> |
| <li>(May 27 '05) <a href="#markExternal-for-file-and-URIs">The FileOwnerQuery.markExternalOwner allows registration of individal files and URIs</a> |
| </li> |
| <li>(Dec 22 '04) <a href="#rel-vers-1">Switched to major release version 1</a> |
| </li> |
| </ul> |
| <h1> |
| <a name="all-by-version">Changes by version</a> |
| </h1> |
| <p> |
| 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 <samp>1.20</samp>, your |
| manifest should contain in its main attributes the line: |
| </p> |
| <pre>OpenIDE-Module-Module-Dependencies: org.netbeans.modules.projectapi/1 > 1.20</pre> |
| <ul> |
| <li> |
| (1.68) <a href="#SourceGroupRelativeModifierImplementation">Added a <code>SourceGroupRelativeModifierImplementation</code> to improve source root creation</a> |
| </li> |
| <li> |
| (1.64) <a href="#SharabilityQueryMerger">Added a <code>LookupMerger</code> for <code>SharabilityQueryImplementation2</code></a> |
| </li> |
| <li> |
| (1.60) <a href="#ProjectManager.Result">More information in <code>ProjectManager.Result</code></a> |
| </li> |
| <li> |
| (1.59) <a href="#ProjectManagerImplementation">SPI interface for <code>ProjectManager</code></a> |
| </li> |
| <li> |
| (1.56) <a href="#DependencyProjectProvider"></a> |
| </li> |
| <li> |
| (1.49) <a href="#LookupProviderSupport.multi">New method createCompositeLookup(Lookup, Lookup) in LookupProviderSupport</a> |
| </li> |
| <li> |
| (1.46) <a href="#FOQ.UNOWNED">New constant UNOWNED in FileOwnerQuery to mark a folder as definitely not owned by any project.</a> |
| </li> |
| <li> |
| (1.44) <a href="#Profiler.Actions">Profiler actions are an integral part of the project infrastructure - just like the debugger actions</a> |
| </li> |
| <li> |
| (1.43) <a href="#ActionProgress">Added <code>ActionProgress</code></a> |
| </li> |
| <li> |
| (1.40) <a href="#SourceGroup.contains.IAE"><code>SourceGroup.contains</code> no longer throws <code>IllegalArgumentException</code></a> |
| </li> |
| <li> |
| (1.38) <a href="#ActionProviderMerger">Added <code>LookupProviderSupport.createActionProviderMerger</code> factory method</a> |
| </li> |
| <li> |
| (1.33) <a href="#ProjectIconAnnotator">Added <code>ProjectIconAnnotator</code></a> |
| </li> |
| <li> |
| (1.31) <a href="#MoveOrRenameOperationImplementation">Added <code>MoveOrRenameOperationImplementation</code></a> |
| </li> |
| <li> |
| (1.26) <a href="#ProjectUtils.getCacheDirectory">API complement to <code>CacheDirectoryProvider</code></a> |
| </li> |
| <li> |
| (1.24) <a href="#source-group-modifier">introduction of SourceGroupModifier, a way to create SourceGroup if missing</a> |
| </li> |
| <li> |
| (1.23) <a href="#ProjectServiceProvider">Add annotations <code>@ProjectServiceProvider</code> and <code>@LookupMerger.Registration</code></a> |
| </li> |
| <li> |
| (1.22) <a href="#projectfactory2">Provide project icon without actually loading the project</a> |
| </li> |
| <li> |
| (1.21) <a href="#lookupprovider-ann">Add annotation @LookupProvider.Registration</a> |
| </li> |
| <li> |
| (1.19) <a href="#test-single-method">Added class <code>SingleMethod</code></a> |
| </li> |
| <li> |
| (1.17) <a href="#ProjectUtils.getAuxiliaryConfiguration">Added <code>ProjectUtils.getAuxiliaryConfiguration</code></a> |
| </li> |
| <li> |
| (1.16) <a href="#projectutils-getPreferences">Added ProjectUtils.getPreferences.</a> |
| </li> |
| <li> |
| (1.12) <a href="#lookup-provider">Added support for composing project's lookup from multiple sources.</a> |
| </li> |
| <li> |
| (1.11) <a href="#ProjectConfigurationProvider">Added support for project configurations</a> |
| </li> |
| <li> |
| (1.7) <a href="#copy-move-support">Added support for project delete/copy/rename/move</a> |
| </li> |
| <li> |
| (1.5) <a href="#markExternal-for-file-and-URIs">The FileOwnerQuery.markExternalOwner allows registration of individal files and URIs</a> |
| </li> |
| <li> |
| (1.3) <a href="#rel-vers-1">Switched to major release version 1</a> |
| </li> |
| </ul> |
| <h1> |
| <a name="all-by-class">Changes by affected class</a> |
| </h1> |
| <h2> |
| <a name="org.netbeans.spi.project.ActionProgress"><code><span style="color:gray">org.netbeans.spi.project.</span>ActionProgress</code></a> |
| </h2><ul><li>(Mar 20 '12) <a href="#ActionProgress">Added <code>ActionProgress</code></a> |
| </li></ul><h2> |
| <a name="org.netbeans.spi.project.ActionProvider"><code><span style="color:gray">org.netbeans.spi.project.</span>ActionProvider</code></a> |
| </h2><ul><li>(Mar 27 '11) <a href="#Profiler.Actions">Profiler actions are an integral part of the project infrastructure - just like the debugger actions</a> |
| </li></ul><h2> |
| <a name="org.netbeans.spi.project.AuxiliaryProperties"><code><span style="color:gray">org.netbeans.spi.project.</span>AuxiliaryProperties</code></a> |
| </h2><ul><li>(Jun 9 '08) <a href="#projectutils-getPreferences">Added ProjectUtils.getPreferences.</a> |
| </li></ul><h2> |
| <a name="org.netbeans.spi.project.DependencyProjectProvider"><code><span style="color:gray">org.netbeans.spi.project.</span>DependencyProjectProvider</code></a> |
| </h2><ul><li>(Nov 20 '13) <a href="#DependencyProjectProvider"></a> |
| </li></ul><h2> |
| <a name="org.netbeans.api.project.FileOwnerQuery"><code><span style="color:gray">org.netbeans.api.project.</span>FileOwnerQuery</code></a> |
| </h2><ul><li>(May 30 '12) <a href="#FOQ.UNOWNED">New constant UNOWNED in FileOwnerQuery to mark a folder as definitely not owned by any project.</a> |
| </li></ul><h2> |
| <a name="org.netbeans.spi.project.LookupMerger"><code><span style="color:gray">org.netbeans.spi.project.</span>LookupMerger</code></a> |
| </h2><ul><li>(Jan 23 '09) <a href="#ProjectServiceProvider">Add annotations <code>@ProjectServiceProvider</code> and <code>@LookupMerger.Registration</code></a> |
| </li> |
| <li>(Oct 5 '06) <a href="#lookup-provider">Added support for composing project's lookup from multiple sources.</a> |
| </li></ul><h2> |
| <a name="org.netbeans.spi.project.LookupProvider"><code><span style="color:gray">org.netbeans.spi.project.</span>LookupProvider</code></a> |
| </h2><ul><li>(Nov 13 '08) <a href="#lookupprovider-ann">Add annotation @LookupProvider.Registration</a> |
| </li> |
| <li>(Oct 5 '06) <a href="#lookup-provider">Added support for composing project's lookup from multiple sources.</a> |
| </li></ul><h2> |
| <a name="org.netbeans.spi.project.support.LookupProviderSupport"><code><span style="color:gray">org.netbeans.spi.project.support.</span>LookupProviderSupport</code></a> |
| </h2><ul><li>(Mar 20 '17) <a href="#SourceGroupRelativeModifierImplementation">Added a <code>SourceGroupRelativeModifierImplementation</code> to improve source root creation</a> |
| </li> |
| <li>(Jun 8 '15) <a href="#SharabilityQueryMerger">Added a <code>LookupMerger</code> for <code>SharabilityQueryImplementation2</code></a> |
| </li> |
| <li>(Sep 26 '12) <a href="#LookupProviderSupport.multi">New method createCompositeLookup(Lookup, Lookup) in LookupProviderSupport</a> |
| </li> |
| <li>(Sep 10 '11) <a href="#ActionProviderMerger">Added <code>LookupProviderSupport.createActionProviderMerger</code> factory method</a> |
| </li> |
| <li>(Oct 5 '06) <a href="#lookup-provider">Added support for composing project's lookup from multiple sources.</a> |
| </li></ul><h2> |
| <a name="org.netbeans.spi.project.MoveOrRenameOperationImplementation"><code><span style="color:gray">org.netbeans.spi.project.</span>MoveOrRenameOperationImplementation</code></a> |
| </h2><ul><li>(Apr 15 '10) <a href="#MoveOrRenameOperationImplementation">Added <code>MoveOrRenameOperationImplementation</code></a> |
| </li></ul><h2> |
| <a name="org.netbeans.spi.project.ProjectConfiguration"><code><span style="color:gray">org.netbeans.spi.project.</span>ProjectConfiguration</code></a> |
| </h2><ul><li>(Sep 8 '06) <a href="#ProjectConfigurationProvider">Added support for project configurations</a> |
| </li></ul><h2> |
| <a name="org.netbeans.spi.project.ProjectConfigurationProvider"><code><span style="color:gray">org.netbeans.spi.project.</span>ProjectConfigurationProvider</code></a> |
| </h2><ul><li>(Sep 8 '06) <a href="#ProjectConfigurationProvider">Added support for project configurations</a> |
| </li></ul><h2> |
| <a name="org.netbeans.spi.project.ProjectContainerProvider"><code><span style="color:gray">org.netbeans.spi.project.</span>ProjectContainerProvider</code></a> |
| </h2><ul><li>(Nov 20 '13) <a href="#DependencyProjectProvider"></a> |
| </li></ul><h2> |
| <a name="org.netbeans.spi.project.ProjectFactory2"><code><span style="color:gray">org.netbeans.spi.project.</span>ProjectFactory2</code></a> |
| </h2><ul><li>(Jan 13 '09) <a href="#projectfactory2">Provide project icon without actually loading the project</a> |
| </li></ul><h2> |
| <a name="org.netbeans.spi.project.ProjectIconAnnotator"><code><span style="color:gray">org.netbeans.spi.project.</span>ProjectIconAnnotator</code></a> |
| </h2><ul><li>(Jun 24 '10) <a href="#ProjectIconAnnotator">Added <code>ProjectIconAnnotator</code></a> |
| </li></ul><h2> |
| <a name="org.netbeans.api.project.ProjectManager"><code><span style="color:gray">org.netbeans.api.project.</span>ProjectManager</code></a> |
| </h2><ul><li>(Apr 30 '14) <a href="#ProjectManager.Result">More information in <code>ProjectManager.Result</code></a> |
| </li> |
| <li>(Apr 7 '14) <a href="#ProjectManagerImplementation">SPI interface for <code>ProjectManager</code></a> |
| </li> |
| <li>(Jan 13 '09) <a href="#projectfactory2">Provide project icon without actually loading the project</a> |
| </li></ul><h2> |
| <a name="org.netbeans.spi.project.ProjectManagerImplementation"><code><span style="color:gray">org.netbeans.spi.project.</span>ProjectManagerImplementation</code></a> |
| </h2><ul><li>(Apr 7 '14) <a href="#ProjectManagerImplementation">SPI interface for <code>ProjectManager</code></a> |
| </li></ul><h2> |
| <a name="org.netbeans.spi.project.ProjectServiceProvider"><code><span style="color:gray">org.netbeans.spi.project.</span>ProjectServiceProvider</code></a> |
| </h2><ul><li>(Jan 23 '09) <a href="#ProjectServiceProvider">Add annotations <code>@ProjectServiceProvider</code> and <code>@LookupMerger.Registration</code></a> |
| </li></ul><h2> |
| <a name="org.netbeans.api.project.ProjectUtils"><code><span style="color:gray">org.netbeans.api.project.</span>ProjectUtils</code></a> |
| </h2><ul><li>(Nov 20 '13) <a href="#DependencyProjectProvider"></a> |
| </li> |
| <li>(Jul 21 '09) <a href="#ProjectUtils.getCacheDirectory">API complement to <code>CacheDirectoryProvider</code></a> |
| </li> |
| <li>(Jun 9 '08) <a href="#ProjectUtils.getAuxiliaryConfiguration">Added <code>ProjectUtils.getAuxiliaryConfiguration</code></a> |
| </li> |
| <li>(Jun 9 '08) <a href="#projectutils-getPreferences">Added ProjectUtils.getPreferences.</a> |
| </li></ul><h2> |
| <a name="org.netbeans.spi.project.SingleMethod"><code><span style="color:gray">org.netbeans.spi.project.</span>SingleMethod</code></a> |
| </h2><ul><li>(Jul 9 '08) <a href="#test-single-method">Added class <code>SingleMethod</code></a> |
| </li></ul><h2> |
| <a name="org.netbeans.api.project.SourceGroup"><code><span style="color:gray">org.netbeans.api.project.</span>SourceGroup</code></a> |
| </h2><ul><li>(Nov 15 '11) <a href="#SourceGroup.contains.IAE"><code>SourceGroup.contains</code> no longer throws <code>IllegalArgumentException</code></a> |
| </li></ul><h2> |
| <a name="org.netbeans.api.project.SourceGroupModifier"><code><span style="color:gray">org.netbeans.api.project.</span>SourceGroupModifier</code></a> |
| </h2><ul><li>(Feb 18 '09) <a href="#source-group-modifier">introduction of SourceGroupModifier, a way to create SourceGroup if missing</a> |
| </li></ul><h2> |
| <a name="org.netbeans.spi.project.SourceGroupModifierImplementation"><code><span style="color:gray">org.netbeans.spi.project.</span>SourceGroupModifierImplementation</code></a> |
| </h2><ul><li>(Feb 18 '09) <a href="#source-group-modifier">introduction of SourceGroupModifier, a way to create SourceGroup if missing</a> |
| </li></ul><hr> |
| <h1> |
| <a name="details-by-api">Details of all changes by API and date</a> |
| </h1> |
| <hr style="width:50%"> |
| <h2> |
| <a name="general">Project API</a> |
| </h2> |
| <!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! --> |
| <h3> |
| <a name="SourceGroupRelativeModifierImplementation">Added a <code>SourceGroupRelativeModifierImplementation</code> to improve source root creation</a> |
| </h3> |
| <em>Mar 20 '17; API spec. version: 1.68; affected top-level classes: <a href="./org/netbeans/spi/project/support/LookupProviderSupport.html"><code>LookupProviderSupport</code></a>; made by: sdedic; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=253355"> |
| #253355</a></em> |
| <br> |
| |
| <p> |
| In presence of multiple source roots, e.g. several source folders, or test folders, some of them may be more |
| related to the |
| </p> |
| <!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! --> |
| <h3> |
| <a name="SharabilityQueryMerger">Added a <code>LookupMerger</code> for <code>SharabilityQueryImplementation2</code></a> |
| </h3> |
| <em>Jun 8 '15; API spec. version: 1.64; affected top-level classes: <a href="./org/netbeans/spi/project/support/LookupProviderSupport.html"><code>LookupProviderSupport</code></a>; made by: tzezula; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=253355"> |
| #253355</a></em> |
| <br> |
| |
| <p> |
| Added a factory method into the <code>LookupProviderSupport</code> creating a |
| <code>LookupMerger</code> for <code>SharabilityQueryImplementation2</code>. |
| </p> |
| <!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! --> |
| <h3> |
| <a name="ProjectManager.Result">More information in <code>ProjectManager.Result</code></a> |
| </h3> |
| <em>Apr 30 '14; API spec. version: 1.60; affected top-level classes: <a href="./org/netbeans/api/project/ProjectManager.html"><code>ProjectManager</code></a>; made by: tstupka; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=244126"> |
| #244126</a></em> |
| <br> |
| |
| <p> |
| Introduced <code>ProjectManager.Result.getDisplayName()</code> and <code>ProjectManager.Result.getProjectType()</code> |
| to provide more information about a potential project via <code>ProjectManager.isProject2(FileObject)</code>. |
| </p> |
| <!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! --> |
| <h3> |
| <a name="ProjectManagerImplementation">SPI interface for <code>ProjectManager</code></a> |
| </h3> |
| <em>Apr 7 '14; API spec. version: 1.59; affected top-level classes: <a href="./org/netbeans/spi/project/ProjectManagerImplementation.html"><code>ProjectManagerImplementation</code></a> <a href="./org/netbeans/api/project/ProjectManager.html"><code>ProjectManager</code></a>; made by: tzezula; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=210465"> |
| #210465</a></em> |
| <br> |
| |
| <p> |
| Added a SPI internface for <code>ProjectManager</code> allowing |
| different implementations of <code>ProjectManager</code> |
| |
| </p> |
| <!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! --> |
| <h3> |
| <a name="DependencyProjectProvider"></a> |
| </h3> |
| <em>Nov 20 '13; API spec. version: 1.56; affected top-level classes: <a href="./org/netbeans/spi/project/DependencyProjectProvider.html"><code>DependencyProjectProvider</code></a> <a href="./org/netbeans/spi/project/ProjectContainerProvider.html"><code>ProjectContainerProvider</code></a> <a href="./org/netbeans/api/project/ProjectUtils.html"><code>ProjectUtils</code></a>; made by: mkleint; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=210465"> |
| #210465</a></em> |
| <br> |
| |
| <p> |
| Newly introduced interfaces <code>DependencyProjectProvider</code> and <code>ProjectContainerProvider</code> are meant as less general replacement for <code>SubprojectProvider</code> |
| as they explicitly declaring their contract |
| (<code>DependencyProjectProvider</code> the project's dependency projects and <code>ProjectContainerProvider</code> projects that are build as part of this project). Code using <code>SubprojectProvider</code> currently |
| should evaluate if <code>DependencyProjectProvider</code> or <code>ProjectContainerProvider</code> contracts suit their usage better. Please note that the new interfaces are not |
| mandatory for project types to implement and if it's missing, <code>SubprojectProvider</code> should be used. |
| </p> |
| <!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! --> |
| <h3> |
| <a name="LookupProviderSupport.multi">New method createCompositeLookup(Lookup, Lookup) in LookupProviderSupport</a> |
| </h3> |
| <em>Sep 26 '12; API spec. version: 1.49; affected top-level classes: <a href="./org/netbeans/spi/project/support/LookupProviderSupport.html"><code>LookupProviderSupport</code></a>; made by: mkleint; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=200711"> |
| #200711</a></em> |
| <br> |
| |
| <p> |
| Introducing method <code>LookupProviderSupport.createCompositeLookup(Lookup, Lookup)</code> which is a more freeform variant of |
| already existing method. The first parameter is expected to be the base lookup containing instances to be found in project lookup, |
| the second parameter is a lookup containing just <code>LookupProvider</code>s. |
| </p> |
| <!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! --> |
| <h3> |
| <a name="FOQ.UNOWNED">New constant UNOWNED in FileOwnerQuery to mark a folder as definitely not owned by any project.</a> |
| </h3> |
| <em>May 30 '12; API spec. version: 1.46; affected top-level classes: <a href="./org/netbeans/api/project/FileOwnerQuery.html"><code>FileOwnerQuery</code></a>; made by: mkleint; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=212015"> |
| #212015</a></em> |
| <br> |
| |
| <p> |
| Introducing constant <code>FileOwnerQuery.UNOWNED</code>, a pseudoproject indicating just that a directory is definitely unowned. May |
| be returned by either |
| <code>FileOwnerQueryImplementation.getOwner</code>, in which case null is returned from |
| <code>FileOwnerQuery.getOwner</code>. May also be passed to either |
| <code>FileOwnerQuery.markExternalOwner</code> overload, in which case the standard directory search will be pruned at this point with no result. |
| </p> |
| <!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! --> |
| <h3> |
| <a name="ActionProgress">Added <code>ActionProgress</code></a> |
| </h3> |
| <em>Mar 20 '12; API spec. version: 1.43; affected top-level classes: <a href="./org/netbeans/spi/project/ActionProgress.html"><code>ActionProgress</code></a>; made by: jglick; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=71515"> |
| #71515</a></em> |
| <br> |
| |
| <p> |
| A new callback was added permitting the invoker of a project |
| action to be notified when the action completes. |
| </p> |
| |
| <br> |
| <strong>Compatibility: </strong> |
| |
| <p> |
| |
| <code>ActionProvider</code> implementations should call the |
| new progress listener if possible. |
| </p> |
| <!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! --> |
| <h3> |
| <a name="SourceGroup.contains.IAE"><code>SourceGroup.contains</code> no longer throws <code>IllegalArgumentException</code></a> |
| </h3> |
| <em>Nov 15 '11; API spec. version: 1.40; affected top-level classes: <a href="./org/netbeans/api/project/SourceGroup.html"><code>SourceGroup</code></a>; made by: jglick; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=204271"> |
| #204271</a></em> |
| <br> |
| |
| <p> |
| For convenience and safety, the <code>contains</code> method no longer throws an unchecked exception; |
| it proved infeasible to ensure the precondition even in the face of projects |
| being renamed or deleted or similar dynamic changes to directory structure. |
| </p> |
| |
| <br> |
| <strong>Compatibility: </strong> |
| |
| <p> |
| Implementations previously throwing this exception should just return false now instead. |
| Callers previously catching the exception, or making a special effort to ensure the precondition, no longer need do so. |
| </p> |
| <!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! --> |
| <h3> |
| <a name="ActionProviderMerger">Added <code>LookupProviderSupport.createActionProviderMerger</code> factory method</a> |
| </h3> |
| <em>Sep 10 '11; API spec. version: 1.38; affected top-level classes: <a href="./org/netbeans/spi/project/support/LookupProviderSupport.html"><code>LookupProviderSupport</code></a>; made by: tzezula; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=201737"> |
| #201737</a></em> |
| <br> |
| |
| <p> |
| Added <code>LookupProviderSupport.createActionProviderMerger</code> factory method to |
| create a <code>LookupMerger</code> for merging multiple instances of <code>ActionProvider</code> |
| in the project's <code>Lookup</code>. |
| </p> |
| <!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! --> |
| <h3> |
| <a name="Profiler.Actions">Profiler actions are an integral part of the project infrastructure - just like the debugger actions</a> |
| </h3> |
| <em>Mar 27 '11; API spec. version: 1.44; affected top-level classes: <a href="./org/netbeans/spi/project/ActionProvider.html"><code>ActionProvider</code></a>; made by: yardus; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=203519"> |
| #203519</a></em> |
| <br> |
| |
| <p> |
| In order to be able to fully integrate the profiler with the project infrastructure |
| it is necessary to add three new constants to |
| <code>ActionProvider</code> SPI for profiling a project, profiling a single file and |
| profiling a test for single file. |
| </p> |
| <!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! --> |
| <h3> |
| <a name="ProjectIconAnnotator">Added <code>ProjectIconAnnotator</code></a> |
| </h3> |
| <em>Jun 24 '10; API spec. version: 1.33; affected top-level classes: <a href="./org/netbeans/spi/project/ProjectIconAnnotator.html"><code>ProjectIconAnnotator</code></a>; made by: jbecicka; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=171516"> |
| #171516</a></em> |
| <br> |
| |
| <p> |
| A mechanism for changing the project node icon. |
| You can use it for example to add a badge to the project's icon. |
| </p> |
| <!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! --> |
| <h3> |
| <a name="MoveOrRenameOperationImplementation">Added <code>MoveOrRenameOperationImplementation</code></a> |
| </h3> |
| <em>Apr 15 '10; API spec. version: 1.31; affected top-level classes: <a href="./org/netbeans/spi/project/MoveOrRenameOperationImplementation.html"><code>MoveOrRenameOperationImplementation</code></a>; made by: jglick; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=183680"> |
| #183680</a></em> |
| <br> |
| |
| <p> |
| Extended interface giving projects the ability to implement |
| a simple display name change more safely and efficiently. |
| </p> |
| |
| <br> |
| <strong>Compatibility: </strong> |
| |
| <p> |
| Existing implementations of <code>MoveOperationImplementation</code> |
| should be revised to implement the extended interface. |
| </p> |
| <!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! --> |
| <h3> |
| <a name="ProjectUtils.getCacheDirectory">API complement to <code>CacheDirectoryProvider</code></a> |
| </h3> |
| <em>Jul 21 '09; API spec. version: 1.26; affected top-level classes: <a href="./org/netbeans/api/project/ProjectUtils.html"><code>ProjectUtils</code></a>; made by: jglick; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=168414"> |
| #168414</a></em> |
| <br> |
| |
| <p> |
| Added <code>ProjectUtils.getCacheDirectory</code> to complement |
| the SPI interface <code>CacheDirectoryProvider</code>. |
| </p> |
| <!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! --> |
| <h3> |
| <a name="source-group-modifier">introduction of SourceGroupModifier, a way to create SourceGroup if missing</a> |
| </h3> |
| <em>Feb 18 '09; API spec. version: 1.24; affected top-level classes: <a href="./org/netbeans/api/project/SourceGroupModifier.html"><code>SourceGroupModifier</code></a> <a href="./org/netbeans/spi/project/SourceGroupModifierImplementation.html"><code>SourceGroupModifierImplementation</code></a>; made by: mkleint; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=102711"> |
| #102711</a></em> |
| <br> |
| |
| <p> |
| |
| <code>SourceGroupModifier</code> provides ways of create specific folders (<code>SourceGroup</code> root folders) |
| in case they don't exist, eg. cannot be retrieved from <code>Sources</code>. |
| The project supporting automated creation of SourceGroup root folders needs to |
| provide <code>SourceGroupModifierImplementation</code> in the project's lookup. |
| </p> |
| <!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! --> |
| <h3> |
| <a name="ProjectServiceProvider">Add annotations <code>@ProjectServiceProvider</code> and <code>@LookupMerger.Registration</code></a> |
| </h3> |
| <em>Jan 23 '09; API spec. version: 1.23; affected top-level classes: <a href="./org/netbeans/spi/project/ProjectServiceProvider.html"><code>ProjectServiceProvider</code></a> <a href="./org/netbeans/spi/project/LookupMerger.html"><code>LookupMerger</code></a>; made by: jglick; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=150194"> |
| #150194</a></em> |
| <br> |
| |
| <p> |
| Added annotations to register entries to project lookup individually. |
| These can be used instead of implementing a <code>LookupProvider</code>. |
| Since the entries are loaded on demand, this can help avoid needless class loading. |
| </p> |
| |
| <br> |
| <strong>Compatibility: </strong> |
| |
| <p> |
| Implementations of <code>LookupProvider</code> should be converted wherever possible. |
| </p> |
| <!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! --> |
| <h3> |
| <a name="projectfactory2">Provide project icon without actually loading the project</a> |
| </h3> |
| <em>Jan 13 '09; API spec. version: 1.22; affected top-level classes: <a href="./org/netbeans/api/project/ProjectManager.html"><code>ProjectManager</code></a> <a href="./org/netbeans/spi/project/ProjectFactory2.html"><code>ProjectFactory2</code></a>; made by: mkleint; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=153923"> |
| #153923</a></em> |
| <br> |
| |
| <p> |
| Introducing <code>ProjectFactory2</code> that extends <code>ProjectFactory</code> |
| and return <code>ProjectManager.Result</code> instead of a simple boolean value. |
| Also add <code>ProjectManager.isProject2(FileObject)</code> method that can be used by |
| 3rd party modules that need a fast (yet not 100% reliable) way of finding the project icon for a folder. |
| </p> |
| <!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! --> |
| <h3> |
| <a name="lookupprovider-ann">Add annotation @LookupProvider.Registration</a> |
| </h3> |
| <em>Nov 13 '08; API spec. version: 1.21; affected top-level classes: <a href="./org/netbeans/spi/project/LookupProvider.html"><code>LookupProvider</code></a>; made by: mkleint; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=152392"> |
| #152392</a></em> |
| <br> |
| |
| <p> |
| Add annotation @LookupProvider.Registration to replace registration in layer files. |
| </p> |
| <!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! --> |
| <h3> |
| <a name="test-single-method">Added class <code>SingleMethod</code></a> |
| </h3> |
| <em>Jul 9 '08; API spec. version: 1.19; affected top-level classes: <a href="./org/netbeans/spi/project/SingleMethod.html"><code>SingleMethod</code></a>; made by: mpetras; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=137191"> |
| #137191</a></em> |
| <br> |
| |
| <p> |
| Added class <code>SingleMethod</code>, |
| which represents identification of a single method/function |
| in a file. The new class also contains new constants |
| (<code>COMMAND_RUN_SINGLE_TEST_METHOD</code> and |
| <code>COMMAND_DEBUG_SINGLE_TEST_METHOD</code>) corresponding |
| to commands for running debugging test methods. |
| </p> |
| <!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! --> |
| <h3> |
| <a name="ProjectUtils.getAuxiliaryConfiguration">Added <code>ProjectUtils.getAuxiliaryConfiguration</code></a> |
| </h3> |
| <em>Jun 9 '08; API spec. version: 1.17; affected top-level classes: <a href="./org/netbeans/api/project/ProjectUtils.html"><code>ProjectUtils</code></a>; made by: jglick; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=136333"> |
| #136333</a></em> |
| <br> |
| |
| <p> |
| A new API method was introduced to match the <code>AuxiliaryConfiguration</code> |
| SPI interface. The change simplifies caller code, provides a path for future |
| changes in the SPI, and allows project types to avoid providing an explicit |
| implementation of this SPI if the fallback implementation suffices for their needs. |
| </p> |
| |
| <br> |
| <strong>Compatibility: </strong> |
| |
| <p> |
| Modules which formerly looked for <code>AuxiliaryConfiguration</code> |
| directly in project lookup are strongly encouraged to migrate to the |
| new method instead. |
| </p> |
| <!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! --> |
| <h3> |
| <a name="projectutils-getPreferences">Added ProjectUtils.getPreferences.</a> |
| </h3> |
| <em>Jun 9 '08; API spec. version: 1.16; affected top-level classes: <a href="./org/netbeans/api/project/ProjectUtils.html"><code>ProjectUtils</code></a> <a href="./org/netbeans/spi/project/AuxiliaryProperties.html"><code>AuxiliaryProperties</code></a>; made by: jlahoda; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=134580"> |
| #134580</a></em> |
| <br> |
| |
| <p> |
| Added new API method <code>ProjectUtils.getPreferences</code> and new SPI interface <code>AuxiliaryProperties</code>. |
| </p> |
| |
| <br> |
| <strong>Compatibility: </strong> |
| <!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! --> |
| <h3> |
| <a name="lookup-provider">Added support for composing project's lookup from multiple sources.</a> |
| </h3> |
| <em>Oct 5 '06; API spec. version: 1.12; affected top-level classes: <a href="./org/netbeans/spi/project/LookupProvider.html"><code>LookupProvider</code></a> <a href="./org/netbeans/spi/project/LookupMerger.html"><code>LookupMerger</code></a> <a href="./org/netbeans/spi/project/support/LookupProviderSupport.html"><code>LookupProviderSupport</code></a>; made by: mkleint; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=83343"> |
| #83343</a></em> |
| <br> |
| |
| <p> |
| Added interfaces and support classes that can be used to compose the project's lookup |
| from multiple 3rd party sources. Framework for creating merged instances included. |
| <code>LookupMerger</code> implementation for <code>Sources</code> added. |
| </p> |
| |
| <br> |
| <strong>Compatibility: </strong> |
| <!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! --> |
| <h3> |
| <a name="ProjectConfigurationProvider">Added support for project configurations</a> |
| </h3> |
| <em>Sep 8 '06; API spec. version: 1.11; affected top-level classes: <a href="./org/netbeans/spi/project/ProjectConfiguration.html"><code>ProjectConfiguration</code></a> <a href="./org/netbeans/spi/project/ProjectConfigurationProvider.html"><code>ProjectConfigurationProvider</code></a>; made by: jglick; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=49652"> |
| #49652</a></em> |
| <br> |
| |
| <p> |
| Added an interface <code>ProjectConfigurationProvider</code> |
| which can be included in a project's lookup to support |
| switchable configurations / profiles. |
| </p> |
| <!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! --> |
| <h3> |
| <a name="copy-move-support">Added support for project delete/copy/rename/move</a> |
| </h3> |
| <em>Aug 22 '05; API spec. version: 1.7; made by: jlahoda; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=61546"> |
| #61546</a></em> |
| <br> |
| |
| <p> |
| Introduced: |
| New method <code>notifyDeleted</code> added to <code>ProjectState</code>. |
| Interfaces DataFilesProviderImplementation, DeleteOperationImplementation, CopyOperationImplementation, MoveOperationImplementation has |
| been added to support project delete/copy/rename/move. |
| Support class ProjectOperations has been added to simplify operations on compound projects. |
| </p> |
| |
| <br> |
| <strong>Compatibility: </strong> |
| <!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! --> |
| <h3> |
| <a name="markExternal-for-file-and-URIs">The FileOwnerQuery.markExternalOwner allows registration of individal files and URIs</a> |
| </h3> |
| <em>May 27 '05; API spec. version: 1.5; made by: jlahoda; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=58313"> |
| #58313</a></em> |
| <br> |
| |
| <p> |
| It is possible to register owner of an individual file using <code>FileOwnerQuery.markExternalOwner</code>. |
| It is possible to register owner of a folder or file using URI, so the folder or file does not |
| have to exist at the time of registration. |
| </p> |
| |
| <br> |
| <strong>Compatibility: </strong> |
| |
| <p> |
| This changes add a new method <code>FileOwnerQuery.markExternalOwner(URI, FileObject, int)</code>, |
| and also extends sematics of the existing |
| <code>FileOwnerQuery.markExternalOwner(FileObject, FileObject, int)</code> method to allow registration |
| of individual files. |
| </p> |
| <!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! --> |
| <h3> |
| <a name="rel-vers-1">Switched to major release version 1</a> |
| </h3> |
| <em>Dec 22 '04; API spec. version: 1.3; made by: jglick; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=51468"> |
| #51468</a></em> |
| <br> |
| |
| <p> |
| To indicate that this is now considered a stable API, the major release version was |
| incremented to 1 from 0. |
| </p> |
| |
| <br> |
| <strong>Compatibility: </strong> |
| |
| <p> |
| Clients should begin requesting the new version to avoid a warning at startup. |
| </p> |
| |
| |
| |
| <hr> |
| <p><span class="footnote">Built on September 14 2018. | Copyright © 2017-2018 Apache Software Foundation. All Rights Reserved.</span></p> |
| |
| |
| </body> |
| |
| </html> |