Package com.iizigo.quickfix
Class QuickFixer
- java.lang.Object
-
- com.iizigo.quickfix.QuickFixer
-
- All Implemented Interfaces:
org.eclipse.ui.IMarkerResolutionGenerator
,org.eclipse.ui.IMarkerResolutionGenerator2
public class QuickFixer extends java.lang.Object implements org.eclipse.ui.IMarkerResolutionGenerator2
Class that handles all quick fixes.- Author:
- Christopher Mindus
-
-
Field Summary
Fields Modifier and Type Field Description static org.eclipse.core.resources.IMarker[]
EMPTY_MARKERS
Empty array of markers.static org.eclipse.ui.IMarkerResolution[]
EMPTY_RESOLUTIONS
Empty array of marker resolutions.static java.lang.String
ID
The quick fixer ID.
-
Constructor Summary
Constructors Constructor Description QuickFixer()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static org.eclipse.core.resources.IMarker[]
findOtherMarkers(IQuickFixer fixer, org.eclipse.core.resources.IMarker[] markers)
Iterate through the list of supplied markers.static java.lang.String
getMarkerAttribute(java.lang.String... fixerIDs)
Gets a list of quick-fixes for the marker attribute.static java.util.Map<java.lang.String,java.lang.Object>
getMarkerAttributes(IQuickFix[] fixers)
Gets the attributes required for quick-fixes when they consist of a instances ofIQuickFix
.static java.util.Map<java.lang.String,java.lang.Object>
getMarkerAttributes(IQuickFix[] fixers, java.lang.String[] fixerIDs)
Gets the attributes required for quick-fixes when they consist of a combination of "static quick-fixes" using String IDs and instances ofIQuickFix
.static java.util.Map<java.lang.String,java.lang.Object>
getMarkerAttributes(java.lang.String[] fixerIDs)
Gets the attributes required for quick-fixes when they consist of a combination of "static quick-fixes" using String IDs and instances ofIQuickFix
.org.eclipse.ui.IMarkerResolution[]
getResolutions(org.eclipse.core.resources.IMarker marker)
Returns resolutions for the given marker (may be empty).boolean
hasResolutions(org.eclipse.core.resources.IMarker marker)
Returns whether there are any resolutions for the given marker.static void
register(java.lang.String fixID, IQuickFixer quickFixer)
Registers a quick fix with an ID.
-
-
-
Field Detail
-
ID
public static final java.lang.String ID
The quick fixer ID.
-
EMPTY_MARKERS
public static final org.eclipse.core.resources.IMarker[] EMPTY_MARKERS
Empty array of markers.
-
EMPTY_RESOLUTIONS
public static final org.eclipse.ui.IMarkerResolution[] EMPTY_RESOLUTIONS
Empty array of marker resolutions.
-
-
Method Detail
-
register
public static void register(java.lang.String fixID, IQuickFixer quickFixer)
Registers a quick fix with an ID.- Parameters:
fixID
- The fix ID, unique.quickFixer
- The doer for quick-fixing.- Throws:
java.lang.IllegalArgumentException
- If the fixID is registered.
-
getMarkerAttribute
public static java.lang.String getMarkerAttribute(java.lang.String... fixerIDs)
Gets a list of quick-fixes for the marker attribute.- Parameters:
fixerIDs
- The quick-fixer IDs.- Returns:
- The IDs to use as attribute with the QuickFixer.ID attribute name for the marker,
or
null
for no quick-fixes.
-
getMarkerAttributes
public static java.util.Map<java.lang.String,java.lang.Object> getMarkerAttributes(java.lang.String[] fixerIDs)
Gets the attributes required for quick-fixes when they consist of a combination of "static quick-fixes" using String IDs and instances ofIQuickFix
.- Parameters:
fixerIDs
- An array of static quick-fixer IDs.- Returns:
- The map used for the problem or marker.
-
getMarkerAttributes
public static java.util.Map<java.lang.String,java.lang.Object> getMarkerAttributes(IQuickFix[] fixers)
Gets the attributes required for quick-fixes when they consist of a instances ofIQuickFix
.- Parameters:
fixers
- An array of quick-fixes instances.- Returns:
- The map used for the problem or marker.
-
getMarkerAttributes
public static java.util.Map<java.lang.String,java.lang.Object> getMarkerAttributes(IQuickFix[] fixers, java.lang.String[] fixerIDs)
Gets the attributes required for quick-fixes when they consist of a combination of "static quick-fixes" using String IDs and instances ofIQuickFix
.- Parameters:
fixers
- An array of quick-fixes instances.fixerIDs
- An array of static quick-fixer IDs.- Returns:
- The map used for the problem or marker.
-
findOtherMarkers
public static org.eclipse.core.resources.IMarker[] findOtherMarkers(IQuickFixer fixer, org.eclipse.core.resources.IMarker[] markers)
Iterate through the list of supplied markers. Return any that can also have the receiver applied to them.- Parameters:
markers
- The array of markers.- Returns:
- IMarker[]
-
getResolutions
public org.eclipse.ui.IMarkerResolution[] getResolutions(org.eclipse.core.resources.IMarker marker)
Returns resolutions for the given marker (may be empty). This method is called from Eclipse.- Specified by:
getResolutions
in interfaceorg.eclipse.ui.IMarkerResolutionGenerator
- Parameters:
marker
- The marker.- Returns:
- Resolutions for the given marker.
-
hasResolutions
public boolean hasResolutions(org.eclipse.core.resources.IMarker marker)
Returns whether there are any resolutions for the given marker.- Specified by:
hasResolutions
in interfaceorg.eclipse.ui.IMarkerResolutionGenerator2
- Parameters:
marker
- The marker.- Returns:
true
if there are resolutions for the given marker,false
if not.
-
-