Package org.dspace.curate
Class FileTaskQueue
java.lang.Object
org.dspace.curate.FileTaskQueue
- All Implemented Interfaces:
TaskQueue
FileTaskQueue provides a TaskQueue implementation based on flat files
for the queues and semaphores.
- Author:
- richardrodgers
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionReturns the set of task entries from the named queue.voidenqueue(String queueName, Set<TaskQueueEntry> entrySet) Queues a set of task entries to a named queue.voidenqueue(String queueName, TaskQueueEntry entry) Queues a single entry to a named queue.protected FileensureQueue(String queueName) String[]Returns list of queue names.voidReleases the lock upon the named queue, deleting it ifremoveEntriesis set to true.
-
Field Details
-
tqDir
-
readTicket
protected long readTicket -
readList
-
-
Constructor Details
-
FileTaskQueue
public FileTaskQueue()
-
-
Method Details
-
queueNames
Description copied from interface:TaskQueueReturns list of queue names.- Specified by:
queueNamesin interfaceTaskQueue- Returns:
- queues the list of names of active queues
-
enqueue
Description copied from interface:TaskQueueQueues a single entry to a named queue.- Specified by:
enqueuein interfaceTaskQueue- Parameters:
queueName- the name of the queue on which to writeentry- the task entry- Throws:
IOException- if IO error
-
enqueue
Description copied from interface:TaskQueueQueues a set of task entries to a named queue.- Specified by:
enqueuein interfaceTaskQueue- Parameters:
queueName- the name of the queue on which to writeentrySet- the set of task entries- Throws:
IOException- if IO error
-
dequeue
Description copied from interface:TaskQueueReturns the set of task entries from the named queue. The operation locks the queue from any further enqueue or dequeue operations until areleaseis called. The ticket may be any number, but a timestamp should guarantee sufficient uniqueness.- Specified by:
dequeuein interfaceTaskQueue- Parameters:
queueName- the name of the queue to readticket- a token which must be presented to release the queue- Returns:
- set the current set of queued task entries
- Throws:
IOException- if IO error
-
release
Description copied from interface:TaskQueueReleases the lock upon the named queue, deleting it ifremoveEntriesis set to true. -
ensureQueue
-