Class AddToBitmapWithCacheFilter
java.lang.Object
org.eclipse.jgit.revwalk.filter.RevFilter
org.eclipse.jgit.internal.revwalk.AddToBitmapWithCacheFilter
A RevFilter that adds the visited commits to
bitmap
as a side effect.
When the walk hits a commit that is the same as cachedCommit
or 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 Summary
FieldsModifier and TypeFieldDescriptionprivate final BitmapIndex.BitmapBuilder
private final BitmapIndex.Bitmap
private final AnyObjectId
Fields inherited from class org.eclipse.jgit.revwalk.filter.RevFilter
ALL, MERGE_BASE, NO_MERGES, NONE, ONLY_MERGES
-
Constructor Summary
ConstructorsConstructorDescriptionAddToBitmapWithCacheFilter
(AnyObjectId cachedCommit, BitmapIndex.Bitmap cachedBitmap, BitmapIndex.BitmapBuilder bitmap) Create a filter with a cached BitmapCommit that adds visited commits to the given bitmap. -
Method Summary
-
Field Details
-
cachedCommit
-
cachedBitmap
-
bitmap
-
-
Constructor Details
-
AddToBitmapWithCacheFilter
public AddToBitmapWithCacheFilter(AnyObjectId cachedCommit, BitmapIndex.Bitmap cachedBitmap, BitmapIndex.BitmapBuilder bitmap) Create a filter with a cached BitmapCommit that adds visited commits to the given bitmap.- Parameters:
cachedCommit
- the cached commitcachedBitmap
- the bitmap corresponds tocachedCommit
}bitmap
- bitmap to write visited commits to
-
-
Method Details
-
include
Determine if the supplied commit should be included in results.- Specified by:
include
in classRevFilter
- Parameters:
rw
- the active walker this filter is being invoked from within.c
- the commit currently being tested. The commit has been parsed and its body is available for inspection only if the filter returns true fromRevFilter.requiresCommitBody()
.- Returns:
- true to include this commit in the results; false to have this commit be omitted entirely from the results.
-
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.
-
requiresCommitBody
public final boolean requiresCommitBody()Whether the filter needs the commit body to be parsed.- Overrides:
requiresCommitBody
in classRevFilter
- Returns:
- true if the filter needs the commit body to be parsed.
-