Class MergedReftable.MergedRefCursor
- java.lang.Object
-
- org.eclipse.jgit.internal.storage.reftable.RefCursor
-
- org.eclipse.jgit.internal.storage.reftable.MergedReftable.MergedRefCursor
-
- All Implemented Interfaces:
java.lang.AutoCloseable
- Direct Known Subclasses:
MergedReftable.FilteringMergedRefCursor
- Enclosing class:
- MergedReftable
private class MergedReftable.MergedRefCursor extends RefCursor
-
-
Field Summary
Fields Modifier and Type Field Description private MergedReftable.RefQueueEntry
head
private java.util.PriorityQueue<MergedReftable.RefQueueEntry>
queue
private Ref
ref
-
Constructor Summary
Constructors Constructor Description MergedRefCursor()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) void
add(MergedReftable.RefQueueEntry t)
void
close()
Ref
getRef()
Get reference at the current position.boolean
next()
Check if another reference is available.private MergedReftable.RefQueueEntry
poll()
void
seekPastPrefix(java.lang.String prefixName)
Seeks forward to the first ref record lexicographically beyondprefixName
that doesn't start withprefixName
.private void
skipShadowedRefs(java.lang.String name)
-
Methods inherited from class org.eclipse.jgit.internal.storage.reftable.RefCursor
wasDeleted
-
-
-
-
Field Detail
-
queue
private final java.util.PriorityQueue<MergedReftable.RefQueueEntry> queue
-
head
private MergedReftable.RefQueueEntry head
-
ref
private Ref ref
-
-
Method Detail
-
add
void add(MergedReftable.RefQueueEntry t) throws java.io.IOException
- Throws:
java.io.IOException
-
next
public boolean next() throws java.io.IOException
Description copied from class:RefCursor
Check if another reference is available.
-
seekPastPrefix
public void seekPastPrefix(java.lang.String prefixName) throws java.io.IOException
Description copied from class:RefCursor
Seeks forward to the first ref record lexicographically beyondprefixName
that doesn't start withprefixName
. If there are no more results, skipping some refs won't add new results. E.g if we create a RefCursor that returns only results with a specific prefix, skipping that prefix won't give results that are not part of the original prefix.- Specified by:
seekPastPrefix
in classRefCursor
- Parameters:
prefixName
- prefix that should be skipped. All previous refs before it will be skipped.- Throws:
java.io.IOException
- references cannot be read.
-
poll
private MergedReftable.RefQueueEntry poll()
-
skipShadowedRefs
private void skipShadowedRefs(java.lang.String name) throws java.io.IOException
- Throws:
java.io.IOException
-
getRef
public Ref getRef()
Description copied from class:RefCursor
Get reference at the current position.
-
-