Class AddToBitmapFilter

java.lang.Object
org.eclipse.jgit.revwalk.filter.RevFilter
org.eclipse.jgit.internal.revwalk.AddToBitmapFilter

public class AddToBitmapFilter extends RevFilter
A RevFilter that adds the visited commits to bitmap as a side effect.

When the walk hits a commit that is part of bitmap's BitmapIndex, that entire bitmap is ORed into bitmap and the commit and its parents are marked as SEEN so that the walk does not have to visit its ancestors. This ensures the walk is very short if there is good bitmap coverage.

  • Field Details

  • Constructor Details

    • AddToBitmapFilter

      public AddToBitmapFilter(BitmapIndex.BitmapBuilder bitmap)
      Create a filter that adds visited commits to the given bitmap.
      Parameters:
      bitmap - bitmap to write visited commits to
  • Method Details

    • include

      public final boolean include(RevWalk walker, RevCommit cmit)
      Determine if the supplied commit should be included in results.
      Specified by:
      include in class RevFilter
      Parameters:
      walker - the active walker this filter is being invoked from within.
      cmit - the commit currently being tested. The commit has been parsed and its body is available for inspection only if the filter returns true from RevFilter.requiresCommitBody().
      Returns:
      true to include this commit in the results; false to have this commit be omitted entirely from the results.
    • clone

      public final RevFilter clone()

      Clone this revision filter, including its parameters.

      This is a deep clone. If this filter embeds objects or other filters it must also clone those, to ensure the instances do not share mutable data.

      Specified by:
      clone in class RevFilter
    • requiresCommitBody

      public final boolean requiresCommitBody()
      Whether the filter needs the commit body to be parsed.
      Overrides:
      requiresCommitBody in class RevFilter
      Returns:
      true if the filter needs the commit body to be parsed.