Interface IQuickFixProcessor


  • public interface IQuickFixProcessor
    Interface to be implemented by contributors to the extension point org.eclipse.jdt.ui.quickFixProcessors.

    Since 3.2, each extension specifies the marker types it can handle, and hasCorrections(ICompilationUnit, int) and getCorrections(IInvocationContext, IProblemLocation[]) are called if (and only if) quick fix is required for a problem of these types.

    Note, if a extension does not specify marker types it will be only called for problem of type org.eclipse.jdt.core.problem, org.eclipse.jdt.core.buildpath_problem and org.eclipse.jdt.core.task; compatible with the behavior prior to 3.2

    Since:
    3.0
    • Method Detail

      • hasCorrections

        boolean hasCorrections​(ICompilationUnit unit,
                               int problemId)
        Returns true if the processor has proposals for the given problem. This test should be an optimistic guess and be very cheap.
        Parameters:
        unit - the compilation unit
        problemId - the problem Id. The id is of a problem of the problem type(s) this processor specified in the extension point.
        Returns:
        true if the processor has proposals for the given problem
      • getCorrections

        IJavaCompletionProposal[] getCorrections​(IInvocationContext context,
                                                 IProblemLocation[] locations)
                                          throws CoreException
        Collects corrections or code manipulations for the given context.
        Parameters:
        context - Defines current compilation unit, position and a shared AST
        locations - Problems are the current location.
        Returns:
        the corrections applicable at the location or null if no proposals can be offered
        Throws:
        CoreException - CoreException can be thrown if the operation fails