Skip navigation links

Introduction

This document lists changes made to the Refactoing 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: $codebase > 1.20

Changes by affected class

org.netbeans.modules.refactoring.api.Context

org.netbeans.modules.refactoring.api.CopyRefactoring

org.netbeans.modules.refactoring.spi.ui.ExpandableTreeElement

org.netbeans.modules.refactoring.api.ui.ExplorerContext

org.netbeans.modules.refactoring.spi.ui.FiltersDescription

org.netbeans.modules.refactoring.spi.FiltersManager

org.netbeans.modules.refactoring.spi.ModificationResult

org.netbeans.modules.refactoring.spi.RefactoringCommit

org.netbeans.modules.refactoring.api.RefactoringElement

org.netbeans.modules.refactoring.api.RefactoringSession

org.netbeans.modules.refactoring.api.Scope

org.netbeans.modules.refactoring.spi.ui.ScopePanel

org.netbeans.modules.refactoring.spi.ui.ScopeProvider

org.netbeans.modules.refactoring.spi.ui.ScopeReference

org.netbeans.modules.refactoring.spi.ui.ScopeReferences


Details of all changes by API and date


Refactoring API

Let ScopeProvider report a Problem.

Jun 27 '15; API spec. version: 1.44; affected top-level classes: ScopeProvider ScopePanel; made by: ralphbenjamin; issues: #252995

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.

Add property to include dependencies in Scope.

Jun 27 '15; API spec. version: 1.43; affected top-level classes: Scope; made by: ralphbenjamin; issues: #252993

Added the property dependencies in class Scope to include dependencies of the specified scope, like libraries, used by WhereUsedQuery.

Introduce a way to update a filter's selected state after creation.

Jun 10 '13; API spec. version: 1.36; affected top-level classes: FiltersDescription; made by: ralphbenjamin; issues: #230538

Added the method setSelected, to introduce a way to update a filter's selected state after creation.

RefactoringCommit implements the interface ProgressProvider.

Nov 27 '12; API spec. version: 1.33; affected top-level classes: RefactoringCommit; made by: ralphbenjamin; issues: #221295

RefactoringCommit now implements the interface ProgressProvider to notify the progress of the commit.

Added support for Scope Providers and ExpandableTreeElements.

Aug 31 '12; API spec. version: 1.30; affected top-level classes: ExpandableTreeElement ScopeProvider ScopeReference ScopeReferences ScopePanel; made by: ralphbenjamin; issues: #217347

Added an ExpandableTreeElement and a declarative way to add new scopes.

Added an API to support filters of the Find Usages results.

Aug 8 '12; API spec. version: 1.29; affected top-level classes: RefactoringElement FiltersManager FiltersDescription; made by: ralphbenjamin; issues: #215361

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.

Changed access level of #finish() to public.

Jul 4 '12; API spec. version: 1.28; affected top-level classes: RefactoringSession; made by: ralphbenjamin; issues: #214926

Changed access level of #finish() to public.

Added method to remove value from Context.

Apr 11 '12; API spec. version: 1.24; affected top-level classes: Context; made by: ralphbenjamin; issues: #210673

Added the method remove to the refactoring Context.

Added CopyRefactoring to support Copy of multiple files.

Dec 21 '11; API spec. version: 1.21; affected top-level classes: CopyRefactoring; made by: ralphbenjamin; issues: #206623

Added support to copy multiple files at once.

Scope added to allow to specify a limited scope for WhereUsedQuery

Jun 30 '11; API spec. version: 1.18; affected top-level classes: Scope; made by: ralphbenjamin; issues: #199779

Scope is used to limit the WhereUsedQuery to a specific scope.
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.

Added RefactoringCommit and ModificationResult SPI classes.

Mar 20 '11; API spec. version: 1.23; affected top-level classes: ModificationResult RefactoringCommit; made by: jbecicka; issues: #209110

Added RefactoringCommit and ModificationResult SPI classes.

ExplorerContext added to allow handling of Explorer's Move, Copy, Delete and Rename actions

Sep 4 '07; API spec. version: 1.2; affected top-level classes: ExplorerContext; made by: jbecicka; issues: #116857

ExplorerContext is refactoring specific context, which is passed via Lookup to ContextAwareActions in following cases:
1. Instant rename in Explorer
2. Nodes are transfered using DnD.
3. Nodes are moved using Cut/Paste.
4. Nodes are copied using Copy/Paste.
5. Nodes are deleted from Explorer.