LTK Core API changes

This document lists the API changes that occurred between R3.1 and R3.2 and how to migrate from the R3.1 API to the R3.2 API.

LTK Core Refactoring - Breaking API changes from R3.1 to R3.2
None

LTK Core Refactoring - Non-breaking API changes from R3.1 to R3.2

New API for refactoring history and scripting support in package `org.eclipse.ltk.core.refactoring.history`:

- `IRefactoringExecutionListener`
- `IRefactoringHistoryListener`
- `IRefactoringHistoryService`
- `RefactoringExecutionEvent`
- `RefactoringHistory`
- `RefactoringHistoryEvent`

New API for model integration of refactorings in package `org.eclipse.ltk.core.refactoring.model`:

- `AbstractRefactoringDescriptorResourceMapping`
- `AbstractRefactoringHistoryResourceMapping`

New API for refactoring history and scripting support added in package `org.eclipse.ltk.core.refactoring`:

- `RefactoringContribution`
- `ChangeDescriptor`
- `RefactoringChangeDescriptor`
- `RefactoringDescriptor`
- `RefactoringDescriptorProxy`
- `RefactoringSessionDescriptor`
- `Change#getDescriptor()`
- `CompositeChange#getDescriptor()`
- `PerformRefactoringHistoryOperation`
- `IRefactoringCoreStatusCodes#MISSING_REFACTORING_HISTORY_VERSION`
- `IRefactoringCoreStatusCodes#REFACTORING_HISTORY_FORMAT_ERROR`
- `IRefactoringCoreStatusCodes#REFACTORING_HISTORY_IO_ERROR`
- `IRefactoringCoreStatusCodes#UNSUPPORTED_REFACTORING_HISTORY_VERSION`
- `RefactoringCore#ID_PLUGIN`
- `RefactoringCore#getHistoryService()`
- `RefactoringCore#getRefactoringContribution(String)`
- `RefactoringStatusEntry#toStatus()`

New API for refactoring ticks support added in package `org.eclipse.ltk.core.refactoring`:

- `RefactoringTickProvider`
- `CheckConditionsOperation#getTicks(RefactoringTickProvider)`
- `Refactoring#getRefactoringTickProvider()`
- `Refactoring#doGetRefactoringTickProvider()`

New API for refactoring preview filter support added in package `org.eclipse.ltk.core.refactoring`:

- `CategorizedTextEditGroup`
- `GroupCategory`
- `GroupCategorySet`

New API for element mapping in package `org.eclipse.ltk.core.refactoring`:

- `IResourceMapper`
- `GroupCategory`
- `GroupCategorySet`

New API for multi state text file changes in package `org.eclipse.ltk.core.refactoring`:

- `MultiStateTextFileChange`
- `TextEditBasedChange`
- `TextEditBasedChangeGroup`
- `TextChange#getPreviewContent(TextEditBasedChangeGroup[], IRegion, boolean, int, IProgressMonitor)`
- `TextFileChange#isDocumentAcquired()`

New API for participant filtering in package `org.eclipse.ltk.core.refactoring`:

- `IParticipantDescriptorFilter`
- `ParticipantManager#loadCopyParticipants(RefactoringStatus, RefactoringProcessor, Object, CopyArguments, IParticipantDescriptorFilter, String, ShareableParticipants)`
- `ParticipantManager#loadCreateParticipants(RefactoringStatus, RefactoringProcessor, Object, CreateArguments, IParticipantDescriptorFilter, String, ShareableParticipants)`
- `ParticipantManager#loadDeleteParticipants(RefactoringStatus, RefactoringProcessor, Object, DeleteArguments, IParticipantDescriptorFilter, String, ShareableParticipants)`
- `ParticipantManager#loadMoveParticipants(RefactoringStatus, RefactoringProcessor, Object, MoveArguments, IParticipantDescriptorFilter, String, ShareableParticipants)`
- `ParticipantManager#loadRenameParticipants(RefactoringStatus, RefactoringProcessor, Object, RenameArguments, IParticipantDescriptorFilter, String, ShareableParticipants)`

New API for operation validation in package `org.eclipse.ltk.core.refactoring`:

- `ResourceChangeChecker`

New API for debug support in package `org.eclipse.ltk.core.refactoring`:

- `RefactoringArguments#toString()`
- `CopyArguments#toString()`
- `CreateArguments#toString()`
- `DeleteArguments#toString()`
- `MoveArguments#toString()`
- `RenameArguments#toString()`