com.atlassian.confluence.search.lucene
Class ObjectQueue

java.lang.Object
  extended by com.atlassian.confluence.search.lucene.ObjectQueue

@ThreadSafe
public class ObjectQueue
extends Object

An abstraction over a list of HibernateHandles, to allow clients to pop the queue and only have to deal with actual persistent objects.


Constructor Summary
ObjectQueue(List<HibernateHandle> handles, AnyTypeDao anyTypeDao)
           
 
Method Summary
 boolean isEmpty()
           
 Collection<com.atlassian.bonnie.Searchable> pop()
          Converts up to numberToPop handles of the same class into objects.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ObjectQueue

public ObjectQueue(List<HibernateHandle> handles,
                   AnyTypeDao anyTypeDao)
Method Detail

isEmpty

public boolean isEmpty()

pop

public Collection<com.atlassian.bonnie.Searchable> pop()
Converts up to numberToPop handles of the same class into objects. These handles will be removed from the original collection. It will only look maxLookAhead items further into the queue as soon as an object of different class is found.

Returns:
up to numberToPop objects of the same class at a time. Returns empty list if there are no further objects in the queue.
Throws:
org.springframework.dao.DataAccessException - if there was a problem contacting the database


Copyright © 2003-2013 Atlassian. All Rights Reserved.