Class QuickFixer

java.lang.Object
com.iizigo.quickfix.QuickFixer
All Implemented Interfaces:
IMarkerResolutionGenerator, IMarkerResolutionGenerator2

public class QuickFixer extends Object implements IMarkerResolutionGenerator2
Class that handles all quick fixes.
Author:
Christopher Mindus
  • Field Details

    • ID

      public static final String ID
      The quick fixer ID.
    • EMPTY_MARKERS

      public static final IMarker[] EMPTY_MARKERS
      Empty array of markers.
    • EMPTY_RESOLUTIONS

      public static final IMarkerResolution[] EMPTY_RESOLUTIONS
      Empty array of marker resolutions.
  • Constructor Details

    • QuickFixer

      public QuickFixer()
  • Method Details

    • register

      public static void register(String fixID, IQuickFixer quickFixer)
      Registers a quick fix with an ID.
      Parameters:
      fixID - The fix ID, unique.
      quickFixer - The doer for quick-fixing.
      Throws:
      IllegalArgumentException - If the fixID is registered.
    • getMarkerAttribute

      public static String getMarkerAttribute(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 Map<String,Object> getMarkerAttributes(String[] fixerIDs)
      Gets the attributes required for quick-fixes when they consist of a combination of "static quick-fixes" using String IDs and instances of IQuickFix.
      Parameters:
      fixerIDs - An array of static quick-fixer IDs.
      Returns:
      The map used for the problem or marker.
    • getMarkerAttributes

      public static Map<String,Object> getMarkerAttributes(IQuickFix[] fixers)
      Gets the attributes required for quick-fixes when they consist of a instances of IQuickFix.
      Parameters:
      fixers - An array of quick-fixes instances.
      Returns:
      The map used for the problem or marker.
    • getMarkerAttributes

      public static Map<String,Object> getMarkerAttributes(IQuickFix[] fixers, String[] fixerIDs)
      Gets the attributes required for quick-fixes when they consist of a combination of "static quick-fixes" using String IDs and instances of IQuickFix.
      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 IMarker[] findOtherMarkers(IQuickFixer fixer, 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 IMarkerResolution[] getResolutions(IMarker marker)
      Returns resolutions for the given marker (may be empty). This method is called from Eclipse.
      Specified by:
      getResolutions in interface IMarkerResolutionGenerator
      Parameters:
      marker - The marker.
      Returns:
      Resolutions for the given marker.
    • hasResolutions

      public boolean hasResolutions(IMarker marker)
      Returns whether there are any resolutions for the given marker.
      Specified by:
      hasResolutions in interface IMarkerResolutionGenerator2
      Parameters:
      marker - The marker.
      Returns:
      true if there are resolutions for the given marker, false if not.