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()`