public class FIFORevQueue extends Object
Modifier and Type | Field and Description |
---|---|
protected org.eclipse.jgit.revwalk.BlockRevQueue.BlockFreeList |
free |
Constructor and Description |
---|
FIFORevQueue()
Create an empty FIFO queue.
|
Modifier and Type | Method and Description |
---|---|
void |
add(RevCommit c)
Add a commit to the queue.
|
void |
add(RevCommit c,
RevFlag queueControl)
Add a commit if it does not have a flag set yet, then set the flag.
|
void |
addParents(RevCommit c,
RevFlag queueControl)
Add a commit's parents if one does not have a flag set yet.
|
void |
clear()
Remove all entries from this queue.
|
protected static void |
describe(StringBuilder s,
RevCommit c)
Describe this queue
|
RevCommit |
next()
Return the next commit to the application, or the next generator.
|
void |
shareFreeList(org.eclipse.jgit.revwalk.BlockRevQueue q)
Connect the supplied queue to this generator's own free list (if any).
|
String |
toString() |
void |
unpop(RevCommit c)
Insert the commit pointer at the front of the queue.
|
public void add(RevCommit c)
This method always adds the commit, even if it is already in the queue or
previously was in the queue but has already been removed. To control
queue admission use add(RevCommit, RevFlag)
.
c
- commit to add.public void unpop(RevCommit c)
c
- the commit to insert into the queue.public RevCommit next()
Remove the first commit from the queue.
public void clear()
public void shareFreeList(org.eclipse.jgit.revwalk.BlockRevQueue q)
Reconfigure this queue to share the same free list as another.
Multiple revision queues can be connected to the same free list, making it less expensive for applications to shuttle commits between them. This method arranges for the receiver to take from / return to the same free list as the supplied queue.
Free lists are not thread-safe. Applications must ensure that all queues sharing the same free list are doing so from only a single thread.
q
- another FIFO queue that wants to share our queue's free list.public final void add(RevCommit c, RevFlag queueControl)
This method permits the application to test if the commit has the given flag; if it does not already have the flag than the commit is added to the queue and the flag is set. This later will prevent the commit from being added twice.
c
- commit to add.queueControl
- flag that controls admission to the queue.public final void addParents(RevCommit c, RevFlag queueControl)
This method permits the application to test if the commit has the given flag; if it does not already have the flag than the commit is added to the queue and the flag is set. This later will prevent the commit from being added twice.
c
- commit whose parents should be added.queueControl
- flag that controls admission to the queue.protected static void describe(StringBuilder s, RevCommit c)
s
- a StringBuilderc
- a RevCommit
Copyright © 2017 Eclipse JGit Project. All rights reserved.