com.atlassian.confluence.search.lucene.queue
Class DatabaseIndexTaskQueue

java.lang.Object
  extended by com.atlassian.confluence.search.lucene.queue.DatabaseIndexTaskQueue
All Implemented Interfaces:
IndexTaskQueue

public class DatabaseIndexTaskQueue
extends Object
implements IndexTaskQueue

An implementation of the IndexTaskQueue backed by the database.


Field Summary
static org.apache.log4j.Logger log
          Deprecated. since 3.1 do not use this class's logger externally. Create one in the class doing the logging.
 
Constructor Summary
DatabaseIndexTaskQueue()
           
 
Method Summary
 void deleteOldEntries()
          Delete all entries older then 2 days from the database.
 void enqueue(IndexTask task)
          Add a new index task to the queue.
 void enqueueAll(Collection<IndexTask> tasks)
          Add a collection of index tasks to the queue.
 List<IndexTask> flushQueue()
          Flush the contents of the queue, returning those elements currently queued as the result.
 List<IndexTask> flushQueue(int maxEntries)
          Flush the contents of the queue, returning those elements currently queued as the result.
 List<IndexTask> getQueuedEntries()
          Retrieve the list of index tasks currently queued.
 int getSize()
          Retrieve the number of tasks currently queued.
 void reset()
          Reseting the queue removes all queued index tasks from the queue without flushing.
 void setAnyTypeDao(AnyTypeDao anyTypeDao)
           
 void setBootstrapManager(BootstrapManager bootstrapManager)
           
 void setIndexTaskFactory(IndexTaskFactory indexTaskFactory)
           
 void setQueueEntryDao(IndexQueueEntryDao queueEntryDao)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

log

@Deprecated
public static final org.apache.log4j.Logger log
Deprecated. since 3.1 do not use this class's logger externally. Create one in the class doing the logging.
Constructor Detail

DatabaseIndexTaskQueue

public DatabaseIndexTaskQueue()
Method Detail

enqueue

public void enqueue(IndexTask task)
Add a new index task to the queue.

Specified by:
enqueue in interface IndexTaskQueue

enqueueAll

public void enqueueAll(Collection<IndexTask> tasks)
Add a collection of index tasks to the queue.

Specified by:
enqueueAll in interface IndexTaskQueue

getSize

public int getSize()
Retrieve the number of tasks currently queued.

Specified by:
getSize in interface IndexTaskQueue
Returns:
an int count of the number of index tasks in the queue.

getQueuedEntries

public List<IndexTask> getQueuedEntries()
Retrieve the list of index tasks currently queued.

Specified by:
getQueuedEntries in interface IndexTaskQueue
Returns:
a list of IndexTask objects.

flushQueue

public List<IndexTask> flushQueue()
Description copied from interface: IndexTaskQueue
Flush the contents of the queue, returning those elements currently queued as the result.

Specified by:
flushQueue in interface IndexTaskQueue
Returns:
the list of entries on the queue when it was flushed.

flushQueue

public List<IndexTask> flushQueue(int maxEntries)
Description copied from interface: IndexTaskQueue
Flush the contents of the queue, returning those elements currently queued as the result.

Specified by:
flushQueue in interface IndexTaskQueue
Parameters:
maxEntries - the maximum number of entries to return. This should return the n first entries in the queue.
Returns:
the list of entries on the queue when it was flushed.

deleteOldEntries

public void deleteOldEntries()
Delete all entries older then 2 days from the database. This should be triggered by a regularly scheduled maintenance task.


reset

public void reset()
Reseting the queue removes all queued index tasks from the queue without flushing.

Specified by:
reset in interface IndexTaskQueue

setQueueEntryDao

public void setQueueEntryDao(IndexQueueEntryDao queueEntryDao)

setBootstrapManager

public void setBootstrapManager(BootstrapManager bootstrapManager)

setIndexTaskFactory

public void setIndexTaskFactory(IndexTaskFactory indexTaskFactory)

setAnyTypeDao

public void setAnyTypeDao(AnyTypeDao anyTypeDao)


Copyright © 2003-2012 Atlassian. All Rights Reserved.