public class InMemoryIndexTaskQueue extends Object implements IndexTaskQueue
Constructor and Description |
---|
InMemoryIndexTaskQueue() |
Modifier and Type | Method and Description |
---|---|
void |
enqueue(IndexTask task)
Add a new task to this queue.
|
void |
enqueueAll(Collection<IndexTask> tasks)
Add a collection of tasks to this queue.
|
List<IndexTask> |
flushQueue()
Flush the contents of the queue, returning those elements currently queued as the result.
|
int |
flushQueue(com.atlassian.fugue.Effect<IndexTask> action)
Flush the contents of the queue, applying the given action to each
flushed entry.
|
int |
flushQueue(com.atlassian.fugue.Effect<IndexTask> action,
int numberOfEntries)
Flush the contents of the queue, applying the given action to each
flushed entry.
|
List<IndexTask> |
flushQueue(int numberOfEntries)
Returns ALL entries in the queue.
|
List<IndexTask> |
getQueuedEntries()
Retrieve a list of all of the queued entries.
|
List<IndexTask> |
getQueuedEntries(int size) |
int |
getSize()
Retrieve the number of elements in the queue.
|
void |
reset()
Remove all queued index tasks from this queue.
|
public int getSize()
IndexTaskQueue
getSize
in interface IndexTaskQueue
public List<IndexTask> getQueuedEntries()
IndexTaskQueue
getQueuedEntries
in interface IndexTaskQueue
public void enqueue(IndexTask task)
IndexTaskQueue
enqueue
in interface IndexTaskQueue
public void enqueueAll(Collection<IndexTask> tasks)
IndexTaskQueue
enqueueAll
in interface IndexTaskQueue
public List<IndexTask> flushQueue(int numberOfEntries)
flushQueue
in interface IndexTaskQueue
numberOfEntries
- the maximum number of entries to return. This should return the n first entries in the queue.public void reset()
IndexTaskQueue
reset
in interface IndexTaskQueue
public List<IndexTask> flushQueue()
IndexTaskQueue
This method waits until tasks that we added immediately before calling
this method are available. See IndexTaskQueue.flushQueue(int)
for an
alternative.
flushQueue
in interface IndexTaskQueue
public int flushQueue(com.atlassian.fugue.Effect<IndexTask> action)
IndexTaskQueue
This method waits until tasks that we added immediately before calling
this method are available. See
IndexTaskQueue.flushQueue(com.atlassian.fugue.Effect, int)
for an alternative.
flushQueue
in interface IndexTaskQueue
action
- action to perform for each entrypublic int flushQueue(com.atlassian.fugue.Effect<IndexTask> action, int numberOfEntries)
IndexTaskQueue
Tasks that were added immediately before calling this method are not
returned. See IndexTaskQueue.flushQueue(com.atlassian.fugue.Effect)
for an
alternative.
flushQueue
in interface IndexTaskQueue
action
- action to perform for each entrynumberOfEntries
- the maximum number of entries to flush. This
should flush the n first entries in the queue.Copyright © 2003–2015 Atlassian. All rights reserved.