Class AbstractProposalSorter

java.lang.Object
org.eclipse.jdt.ui.text.java.AbstractProposalSorter
All Implemented Interfaces:
Comparator<ICompletionProposal>, ICompletionProposalSorter

public abstract class AbstractProposalSorter extends Object implements Comparator<ICompletionProposal>, ICompletionProposalSorter
Abstract base class for sorters contributed to the org.eclipse.jdt.ui.javaCompletionProposalSorters extension point.

Subclasses need to implement compare(ICompletionProposal, ICompletionProposal) and may override beginSorting and endSorting.

The orderings imposed by a subclass need not be consistent with equals.

Since:
3.2
  • Constructor Details

  • Method Details

    • beginSorting

      public void beginSorting(ContentAssistInvocationContext context)
      Called once before initial sorting starts the first time.

      Note: As of 3.8 a completion proposal computer can request that proposals are resorted. If such a computer is active, then this method will not be called.

      Clients may override, the default implementation does nothing.

      Parameters:
      context - the context of the content assist invocation
    • compare

      public abstract int compare(ICompletionProposal p1, ICompletionProposal p2)
      The orderings imposed by an implementation need not be consistent with equals.
      Specified by:
      compare in interface Comparator<ICompletionProposal>
      Specified by:
      compare in interface ICompletionProposalSorter
      Parameters:
      p1 - the first proposal to be compared
      p2 - the second proposal to be compared
      Returns:
      a negative integer, zero, or a positive integer as the first argument is less than, equal to, or greater than the second
      See Also:
    • endSorting

      public void endSorting()
      Called once after the initial sorting finished.

      Note: As of 3.8 a completion proposal computer can request that proposals are resorted. If such a computer is active, then this method will not be called.

      Clients may override, the default implementation does nothing.