blob: 5c1f6988ed1f581595dea6343c8b0ca19321041f [file] [log] [blame]
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Change History for the Refactoing 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 Refactoing API.</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="#refactoring">Refactoring 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></ul>
<h1>
<a name="all-by-date">All changes by date</a>
</h1>
<ul>
<li>(Jun 27 '15) <a href="#ScopeProblem">Let ScopeProvider report a Problem.</a>
</li>
<li>(Jun 27 '15) <a href="#ScopeDependencies">Add property to include dependencies in Scope.</a>
</li>
<li>(Jun 10 '13) <a href="#FilterSetSelected">Introduce a way to update a filter's selected state after creation.</a>
</li>
<li>(Nov 27 '12) <a href="#TransactionProgress">RefactoringCommit implements the interface ProgressProvider.</a>
</li>
<li>(Aug 31 '12) <a href="#ServerSideQueries">Added support for Scope Providers and ExpandableTreeElements.</a>
</li>
<li>(Aug 8 '12) <a href="#RefactoringResultsFilters">Added an API to support filters of the Find Usages results.</a>
</li>
<li>(Jul 4 '12) <a href="#FinishSession">Changed access level of #finish() to public.</a>
</li>
<li>(Apr 11 '12) <a href="#ContextRemove">Added method to remove value from Context.</a>
</li>
<li>(Dec 21 '11) <a href="#CopyRefactoring">Added CopyRefactoring to support Copy of multiple files.</a>
</li>
<li>(Jun 30 '11) <a href="#Scope">Scope added to allow to specify a limited scope for WhereUsedQuery</a>
</li>
<li>(Mar 20 '11) <a href="#RefactoringCommit">Added RefactoringCommit and ModificationResult SPI classes.</a>
</li>
<li>(Sep 4 '07) <a href="#ExplorerContext">ExplorerContext added to allow handling of Explorer's Move, Copy, Delete and Rename actions</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: $codebase &gt; 1.20</pre>
<ul>
<li>
(1.44) <a href="#ScopeProblem">Let ScopeProvider report a Problem.</a>
</li>
<li>
(1.43) <a href="#ScopeDependencies">Add property to include dependencies in Scope.</a>
</li>
<li>
(1.36) <a href="#FilterSetSelected">Introduce a way to update a filter's selected state after creation.</a>
</li>
<li>
(1.33) <a href="#TransactionProgress">RefactoringCommit implements the interface ProgressProvider.</a>
</li>
<li>
(1.30) <a href="#ServerSideQueries">Added support for Scope Providers and ExpandableTreeElements.</a>
</li>
<li>
(1.29) <a href="#RefactoringResultsFilters">Added an API to support filters of the Find Usages results.</a>
</li>
<li>
(1.28) <a href="#FinishSession">Changed access level of #finish() to public.</a>
</li>
<li>
(1.24) <a href="#ContextRemove">Added method to remove value from Context.</a>
</li>
<li>
(1.23) <a href="#RefactoringCommit">Added RefactoringCommit and ModificationResult SPI classes.</a>
</li>
<li>
(1.21) <a href="#CopyRefactoring">Added CopyRefactoring to support Copy of multiple files.</a>
</li>
<li>
(1.18) <a href="#Scope">Scope added to allow to specify a limited scope for WhereUsedQuery</a>
</li>
<li>
(1.2) <a href="#ExplorerContext">ExplorerContext added to allow handling of Explorer's Move, Copy, Delete and Rename actions</a>
</li>
</ul>
<h1>
<a name="all-by-class">Changes by affected class</a>
</h1>
<h2>
<a name="org.netbeans.modules.refactoring.api.Context"><code><span style="color:gray">org.netbeans.modules.refactoring.api.</span>Context</code></a>
</h2><ul><li>(Apr 11 '12) <a href="#ContextRemove">Added method to remove value from Context.</a>
</li></ul><h2>
<a name="org.netbeans.modules.refactoring.api.CopyRefactoring"><code><span style="color:gray">org.netbeans.modules.refactoring.api.</span>CopyRefactoring</code></a>
</h2><ul><li>(Dec 21 '11) <a href="#CopyRefactoring">Added CopyRefactoring to support Copy of multiple files.</a>
</li></ul><h2>
<a name="org.netbeans.modules.refactoring.spi.ui.ExpandableTreeElement"><code><span style="color:gray">org.netbeans.modules.refactoring.spi.ui.</span>ExpandableTreeElement</code></a>
</h2><ul><li>(Aug 31 '12) <a href="#ServerSideQueries">Added support for Scope Providers and ExpandableTreeElements.</a>
</li></ul><h2>
<a name="org.netbeans.modules.refactoring.api.ui.ExplorerContext"><code><span style="color:gray">org.netbeans.modules.refactoring.api.ui.</span>ExplorerContext</code></a>
</h2><ul><li>(Sep 4 '07) <a href="#ExplorerContext">ExplorerContext added to allow handling of Explorer's Move, Copy, Delete and Rename actions</a>
</li></ul><h2>
<a name="org.netbeans.modules.refactoring.spi.ui.FiltersDescription"><code><span style="color:gray">org.netbeans.modules.refactoring.spi.ui.</span>FiltersDescription</code></a>
</h2><ul><li>(Jun 10 '13) <a href="#FilterSetSelected">Introduce a way to update a filter's selected state after creation.</a>
</li>
<li>(Aug 8 '12) <a href="#RefactoringResultsFilters">Added an API to support filters of the Find Usages results.</a>
</li></ul><h2>
<a name="org.netbeans.modules.refactoring.spi.FiltersManager"><code><span style="color:gray">org.netbeans.modules.refactoring.spi.</span>FiltersManager</code></a>
</h2><ul><li>(Aug 8 '12) <a href="#RefactoringResultsFilters">Added an API to support filters of the Find Usages results.</a>
</li></ul><h2>
<a name="org.netbeans.modules.refactoring.spi.ModificationResult"><code><span style="color:gray">org.netbeans.modules.refactoring.spi.</span>ModificationResult</code></a>
</h2><ul><li>(Mar 20 '11) <a href="#RefactoringCommit">Added RefactoringCommit and ModificationResult SPI classes.</a>
</li></ul><h2>
<a name="org.netbeans.modules.refactoring.spi.RefactoringCommit"><code><span style="color:gray">org.netbeans.modules.refactoring.spi.</span>RefactoringCommit</code></a>
</h2><ul><li>(Nov 27 '12) <a href="#TransactionProgress">RefactoringCommit implements the interface ProgressProvider.</a>
</li>
<li>(Mar 20 '11) <a href="#RefactoringCommit">Added RefactoringCommit and ModificationResult SPI classes.</a>
</li></ul><h2>
<a name="org.netbeans.modules.refactoring.api.RefactoringElement"><code><span style="color:gray">org.netbeans.modules.refactoring.api.</span>RefactoringElement</code></a>
</h2><ul><li>(Aug 8 '12) <a href="#RefactoringResultsFilters">Added an API to support filters of the Find Usages results.</a>
</li></ul><h2>
<a name="org.netbeans.modules.refactoring.api.RefactoringSession"><code><span style="color:gray">org.netbeans.modules.refactoring.api.</span>RefactoringSession</code></a>
</h2><ul><li>(Jul 4 '12) <a href="#FinishSession">Changed access level of #finish() to public.</a>
</li></ul><h2>
<a name="org.netbeans.modules.refactoring.api.Scope"><code><span style="color:gray">org.netbeans.modules.refactoring.api.</span>Scope</code></a>
</h2><ul><li>(Jun 27 '15) <a href="#ScopeDependencies">Add property to include dependencies in Scope.</a>
</li>
<li>(Jun 30 '11) <a href="#Scope">Scope added to allow to specify a limited scope for WhereUsedQuery</a>
</li></ul><h2>
<a name="org.netbeans.modules.refactoring.spi.ui.ScopePanel"><code><span style="color:gray">org.netbeans.modules.refactoring.spi.ui.</span>ScopePanel</code></a>
</h2><ul><li>(Jun 27 '15) <a href="#ScopeProblem">Let ScopeProvider report a Problem.</a>
</li>
<li>(Aug 31 '12) <a href="#ServerSideQueries">Added support for Scope Providers and ExpandableTreeElements.</a>
</li></ul><h2>
<a name="org.netbeans.modules.refactoring.spi.ui.ScopeProvider"><code><span style="color:gray">org.netbeans.modules.refactoring.spi.ui.</span>ScopeProvider</code></a>
</h2><ul><li>(Jun 27 '15) <a href="#ScopeProblem">Let ScopeProvider report a Problem.</a>
</li>
<li>(Aug 31 '12) <a href="#ServerSideQueries">Added support for Scope Providers and ExpandableTreeElements.</a>
</li></ul><h2>
<a name="org.netbeans.modules.refactoring.spi.ui.ScopeReference"><code><span style="color:gray">org.netbeans.modules.refactoring.spi.ui.</span>ScopeReference</code></a>
</h2><ul><li>(Aug 31 '12) <a href="#ServerSideQueries">Added support for Scope Providers and ExpandableTreeElements.</a>
</li></ul><h2>
<a name="org.netbeans.modules.refactoring.spi.ui.ScopeReferences"><code><span style="color:gray">org.netbeans.modules.refactoring.spi.ui.</span>ScopeReferences</code></a>
</h2><ul><li>(Aug 31 '12) <a href="#ServerSideQueries">Added support for Scope Providers and ExpandableTreeElements.</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="refactoring">Refactoring API</a>
</h2>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="ScopeProblem">Let ScopeProvider report a Problem.</a>
</h3>
<em>Jun 27 '15; API spec. version: 1.44; affected top-level classes: <a href="./org/netbeans/modules/refactoring/spi/ui/ScopeProvider.html"><code>ScopeProvider</code></a> <a href="./org/netbeans/modules/refactoring/spi/ui/ScopePanel.html"><code>ScopePanel</code></a>; made by: ralphbenjamin; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=252995">
#252995</a></em>
<br>
<p>
When a ScopeProvider should be displayed, it returns true from the
initialize method, but it will not work or work as expected the
ScopeProvider can return a Problem. Added the method
getProblem() to ScopeProvider and getScopeProvider() to ScopePanel.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="ScopeDependencies">Add property to include dependencies in Scope.</a>
</h3>
<em>Jun 27 '15; API spec. version: 1.43; affected top-level classes: <a href="./org/netbeans/modules/refactoring/api/Scope.html"><code>Scope</code></a>; made by: ralphbenjamin; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=252993">
#252993</a></em>
<br>
<p>
Added the property dependencies in class Scope to include dependencies of the specified scope, like libraries, used by WhereUsedQuery.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="FilterSetSelected">Introduce a way to update a filter's selected state after creation.</a>
</h3>
<em>Jun 10 '13; API spec. version: 1.36; affected top-level classes: <a href="./org/netbeans/modules/refactoring/spi/ui/FiltersDescription.html"><code>FiltersDescription</code></a>; made by: ralphbenjamin; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=230538">
#230538</a></em>
<br>
<p>
Added the method setSelected, to introduce a way to update a filter's selected state after creation.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="TransactionProgress">RefactoringCommit implements the interface ProgressProvider.</a>
</h3>
<em>Nov 27 '12; API spec. version: 1.33; affected top-level classes: <a href="./org/netbeans/modules/refactoring/spi/RefactoringCommit.html"><code>RefactoringCommit</code></a>; made by: ralphbenjamin; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=221295">
#221295</a></em>
<br>
<p>
RefactoringCommit now implements the interface ProgressProvider
to notify the progress of the commit.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="ServerSideQueries">Added support for Scope Providers and ExpandableTreeElements.</a>
</h3>
<em>Aug 31 '12; API spec. version: 1.30; affected top-level classes: <a href="./org/netbeans/modules/refactoring/spi/ui/ExpandableTreeElement.html"><code>ExpandableTreeElement</code></a> <a href="./org/netbeans/modules/refactoring/spi/ui/ScopeProvider.html"><code>ScopeProvider</code></a> <a href="./org/netbeans/modules/refactoring/spi/ui/ScopeReference.html"><code>ScopeReference</code></a> <a href="./org/netbeans/modules/refactoring/spi/ui/ScopeReferences.html"><code>ScopeReferences</code></a> <a href="./org/netbeans/modules/refactoring/spi/ui/ScopePanel.html"><code>ScopePanel</code></a>; made by: ralphbenjamin; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=217347">
#217347</a></em>
<br>
<p>
Added an ExpandableTreeElement and a declarative way to add new scopes.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="RefactoringResultsFilters">Added an API to support filters of the Find Usages results.</a>
</h3>
<em>Aug 8 '12; API spec. version: 1.29; affected top-level classes: <a href="./org/netbeans/modules/refactoring/api/RefactoringElement.html"><code>RefactoringElement</code></a> <a href="./org/netbeans/modules/refactoring/spi/FiltersManager.html"><code>FiltersManager</code></a> <a href="./org/netbeans/modules/refactoring/spi/ui/FiltersDescription.html"><code>FiltersDescription</code></a>; made by: ralphbenjamin; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=215361">
#215361</a></em>
<br>
<p>
This API allows refactoring plugins to add/enable filters to the
results window and refactoring elements to specify if they should
be included in the results.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="FinishSession">Changed access level of #finish() to public.</a>
</h3>
<em>Jul 4 '12; API spec. version: 1.28; affected top-level classes: <a href="./org/netbeans/modules/refactoring/api/RefactoringSession.html"><code>RefactoringSession</code></a>; made by: ralphbenjamin; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=214926">
#214926</a></em>
<br>
<p>
Changed access level of #finish() to public.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="ContextRemove">Added method to remove value from Context.</a>
</h3>
<em>Apr 11 '12; API spec. version: 1.24; affected top-level classes: <a href="./org/netbeans/modules/refactoring/api/Context.html"><code>Context</code></a>; made by: ralphbenjamin; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=210673">
#210673</a></em>
<br>
<p>
Added the method remove to the refactoring Context.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="CopyRefactoring">Added CopyRefactoring to support Copy of multiple files.</a>
</h3>
<em>Dec 21 '11; API spec. version: 1.21; affected top-level classes: <a href="./org/netbeans/modules/refactoring/api/CopyRefactoring.html"><code>CopyRefactoring</code></a>; made by: ralphbenjamin; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=206623">
#206623</a></em>
<br>
<p>
Added support to copy multiple files at once.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="Scope">Scope added to allow to specify a limited scope for WhereUsedQuery</a>
</h3>
<em>Jun 30 '11; API spec. version: 1.18; affected top-level classes: <a href="./org/netbeans/modules/refactoring/api/Scope.html"><code>Scope</code></a>; made by: ralphbenjamin; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=199779">
#199779</a></em>
<br>
<p>
Scope is used to limit the WhereUsedQuery to a specific scope.<br>
An instance is added to the context of WhereUsedQuery to limit the
scope. A custom scope can be any combination of source roots, folders
and files.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="RefactoringCommit">Added RefactoringCommit and ModificationResult SPI classes.</a>
</h3>
<em>Mar 20 '11; API spec. version: 1.23; affected top-level classes: <a href="./org/netbeans/modules/refactoring/spi/ModificationResult.html"><code>ModificationResult</code></a> <a href="./org/netbeans/modules/refactoring/spi/RefactoringCommit.html"><code>RefactoringCommit</code></a>; made by: jbecicka; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=209110">
#209110</a></em>
<br>
<p>
Added RefactoringCommit and ModificationResult SPI classes.
</p>
<!-- AUTOMATICALLY GENERATED - DO NOT EDIT ME! -->
<h3>
<a name="ExplorerContext">ExplorerContext added to allow handling of Explorer's Move, Copy, Delete and Rename actions</a>
</h3>
<em>Sep 4 '07; API spec. version: 1.2; affected top-level classes: <a href="./org/netbeans/modules/refactoring/api/ui/ExplorerContext.html"><code>ExplorerContext</code></a>; made by: jbecicka; issues: <a href="https://netbeans.org/bugzilla/show_bug.cgi?id=116857">
#116857</a></em>
<br>
<p>
ExplorerContext is refactoring specific context, which is passed via Lookup
to ContextAwareActions in following cases: <br>
1. Instant rename in Explorer <br>
2. Nodes are transfered using DnD. <br>
3. Nodes are moved using Cut/Paste. <br>
4. Nodes are copied using Copy/Paste. <br>
5. Nodes are deleted from Explorer. <br>
</p>
<hr>
<p><span class="footnote">Built on September 14 2018.&nbsp;&nbsp;|&nbsp;&nbsp; Copyright &#169; 2017-2018 Apache Software Foundation. All Rights Reserved.</span></p>
</body>
</html>