Class CUCorrectionProposalCore
java.lang.Object
org.eclipse.jdt.core.manipulation.ChangeCorrectionProposalCore
org.eclipse.jdt.core.manipulation.CUCorrectionProposalCore
- All Implemented Interfaces:
org.eclipse.core.runtime.IAdaptable,ICUCorrectionProposal
public class CUCorrectionProposalCore
extends ChangeCorrectionProposalCore
implements ICUCorrectionProposal
A proposal for quick fixes and quick assists that work on a single compilation unit. Either a
text change is directly passed in the constructor or method
addEdits(IDocument, TextEdit) is overridden to provide the text edits that are applied
to the document when the proposal is evaluated.
The proposal takes care of the preview of the changes as proposal information.
- Since:
- 1.11
-
Field Summary
Fields inherited from class org.eclipse.jdt.core.manipulation.ChangeCorrectionProposalCore
fChange, fName, fRelevance -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedCUCorrectionProposalCore(String name, ICompilationUnit cu, int relevance) Constructs a correction proposal working on a compilation unit.CUCorrectionProposalCore(String name, ICompilationUnit cu, org.eclipse.ltk.core.refactoring.TextChange change, int relevance) Constructs a correction proposal working on a compilation unit with a given text change.CUCorrectionProposalCore(ICUCorrectionProposal proposal, String name, ICompilationUnit cu, org.eclipse.ltk.core.refactoring.TextChange change, int relevance) Constructs a correction proposal working on a compilation unit with a given text change. -
Method Summary
Modifier and TypeMethodDescriptionvoidaddEdits(org.eclipse.jface.text.IDocument document, org.eclipse.text.edits.TextEdit editRoot) Called when theCompilationUnitChangeis initialized.voidapply()protected org.eclipse.ltk.core.refactoring.ChangeCreates the change for this proposal.org.eclipse.ltk.core.refactoring.TextChangeCreates the text change for this proposal.getAdditionalProposalInfo(org.eclipse.core.runtime.IProgressMonitor monitor) The compilation unit on which the change works.org.eclipse.ltk.core.refactoring.TextChangeCreates a preview of the content of the compilation unit after applying the change.final org.eclipse.ltk.core.refactoring.TextChangeReturns the text change that is invoked when the change is applied.toString()Methods inherited from class org.eclipse.jdt.core.manipulation.ChangeCorrectionProposalCore
getAdapter, getChange, getCommandId, getCurrentChange, getName, getRelevance, performChange, setCommandId, setDisplayName, setRelevance
-
Constructor Details
-
CUCorrectionProposalCore
public CUCorrectionProposalCore(ICUCorrectionProposal proposal, String name, ICompilationUnit cu, org.eclipse.ltk.core.refactoring.TextChange change, int relevance) Constructs a correction proposal working on a compilation unit with a given text change.- Parameters:
proposal- ICUCorrectionProposal to usename- the name that is displayed in the proposal selection dialogcu- the compilation unit to which the change can be appliedchange- the change that is executed when the proposal is applied ornullif implementors overrideaddEdits(IDocument, TextEdit)to provide the text edits orcreateTextChange()to provide a text changerelevance- the relevance of this proposal
-
CUCorrectionProposalCore
public CUCorrectionProposalCore(String name, ICompilationUnit cu, org.eclipse.ltk.core.refactoring.TextChange change, int relevance) Constructs a correction proposal working on a compilation unit with a given text change.- Parameters:
name- the name that is displayed in the proposal selection dialogcu- the compilation unit to which the change can be appliedchange- the change that is executed when the proposal is applied ornullif implementors overrideaddEdits(IDocument, TextEdit)to provide the text edits orcreateTextChange()to provide a text changerelevance- the relevance of this proposal
-
CUCorrectionProposalCore
Constructs a correction proposal working on a compilation unit.Users have to override
addEdits(IDocument, TextEdit)to provide the text edits orcreateTextChange()to provide a text change.- Parameters:
name- the name that is displayed in the proposal selection dialogcu- the compilation unit on that the change worksrelevance- the relevance of this proposal
-
-
Method Details
-
addEdits
public void addEdits(org.eclipse.jface.text.IDocument document, org.eclipse.text.edits.TextEdit editRoot) throws org.eclipse.core.runtime.CoreException Called when theCompilationUnitChangeis initialized. Subclasses can override to add text edits to the root edit of the change. Implementors must not access the proposal, e.g. not callChangeCorrectionProposalCore.getChange().The default implementation does not add any edits
- Parameters:
document- content of the underlying compilation unit. To be accessed read only.editRoot- The root edit to add all edits to- Throws:
org.eclipse.core.runtime.CoreException- can be thrown if adding the edits is failing.- Since:
- 1.20
-
getAdditionalProposalInfo
- Overrides:
getAdditionalProposalInfoin classChangeCorrectionProposalCore
-
apply
public void apply() throws org.eclipse.core.runtime.CoreException- Overrides:
applyin classChangeCorrectionProposalCore- Throws:
org.eclipse.core.runtime.CoreException
-
getNewChange
public org.eclipse.ltk.core.refactoring.TextChange getNewChange() -
createTextChange
public org.eclipse.ltk.core.refactoring.TextChange createTextChange() throws org.eclipse.core.runtime.CoreExceptionCreates the text change for this proposal. This method is only called once and only when no text change has been passed in {see #CUCorrectionProposal(String, ICompilationUnit, TextChange, int, Image)}.- Returns:
- the created text change
- Throws:
org.eclipse.core.runtime.CoreException- if the creation of the text change failed
-
createChange
protected org.eclipse.ltk.core.refactoring.Change createChange() throws org.eclipse.core.runtime.CoreExceptionDescription copied from class:ChangeCorrectionProposalCoreCreates the change for this proposal. This method is only called once and only when no change has been passed in {#ChangeCorrectionProposal(String, Change, int, Image)}. Subclasses may override.- Overrides:
createChangein classChangeCorrectionProposalCore- Returns:
- the created change
- Throws:
org.eclipse.core.runtime.CoreException- if the creation of the change failed
-
getTextChange
public final org.eclipse.ltk.core.refactoring.TextChange getTextChange() throws org.eclipse.core.runtime.CoreExceptionReturns the text change that is invoked when the change is applied.- Specified by:
getTextChangein interfaceICUCorrectionProposal- Returns:
- the text change that is invoked when the change is applied
- Throws:
org.eclipse.core.runtime.CoreException- if accessing the change failed
-
getCompilationUnit
The compilation unit on which the change works.- Returns:
- the compilation unit on which the change works
-
getPreviewContent
Creates a preview of the content of the compilation unit after applying the change.- Returns:
- the preview of the changed compilation unit
- Throws:
org.eclipse.core.runtime.CoreException- if the creation of the change failed- Restriction:
- This method is not intended to be referenced by clients.
-
toString
-