com.mysema.query.lucene
Class AbstractLuceneQuery<T,Q extends AbstractLuceneQuery<T,Q>>

java.lang.Object
  extended by com.mysema.query.lucene.AbstractLuceneQuery<T,Q>
Type Parameters:
T - projection type
Q - concrete subtype of query
All Implemented Interfaces:
FilteredClause<Q>, SimpleProjectable<T>, SimpleQuery<Q>
Direct Known Subclasses:
LuceneQuery, TypedQuery

public abstract class AbstractLuceneQuery<T,Q extends AbstractLuceneQuery<T,Q>>
extends Object
implements SimpleQuery<Q>, SimpleProjectable<T>

AbstractLuceneQuery is an abstract super class for Lucene query implementations

Author:
tiwe

Constructor Summary
AbstractLuceneQuery(LuceneSerializer serializer, org.apache.lucene.search.Searcher searcher, org.apache.commons.collections15.Transformer<org.apache.lucene.document.Document,T> transformer)
           
AbstractLuceneQuery(org.apache.lucene.search.Searcher searcher, org.apache.commons.collections15.Transformer<org.apache.lucene.document.Document,T> transformer)
           
 
Method Summary
 long count()
          Get the count of matched elements
 long countDistinct()
          Get the count of distinct matched elements
 Q distinct()
          Set the Query to return distinct results
 com.mysema.commons.lang.CloseableIterator<T> iterate()
          Get the projection as a typed closeable Iterator
 com.mysema.commons.lang.CloseableIterator<T> iterateDistinct()
          Get the projection as a typed closeable Iterator with distinct elements
 Q limit(long limit)
          Defines the limit / max results for the query results
 List<T> list()
          Get the projection as a typed List
 List<T> listDistinct()
          Get the projection as a typed List with distinct elements
 SearchResults<T> listDistinctResults()
          Get the projection in SearchResults form with distinct element
 SearchResults<T> listResults()
          Get the projection in SearchResults form
 Q offset(long offset)
          Defines the offset for the query results
 Q orderBy(OrderSpecifier<?>... o)
          Defines the order expressions
 Q restrict(QueryModifiers modifiers)
          Defines both limit and offset of the query results
<P> Q
set(ParamExpression<P> param, P value)
          Set the given parameter to the given value
 String toString()
           
 T uniqueResult()
          Get the projection as a unique result or null if no result is found
 Q where(Predicate... e)
          Adds the given filter conditions
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

AbstractLuceneQuery

public AbstractLuceneQuery(LuceneSerializer serializer,
                           org.apache.lucene.search.Searcher searcher,
                           org.apache.commons.collections15.Transformer<org.apache.lucene.document.Document,T> transformer)

AbstractLuceneQuery

public AbstractLuceneQuery(org.apache.lucene.search.Searcher searcher,
                           org.apache.commons.collections15.Transformer<org.apache.lucene.document.Document,T> transformer)
Method Detail

count

public long count()
Description copied from interface: SimpleProjectable
Get the count of matched elements

Specified by:
count in interface SimpleProjectable<T>
Returns:

countDistinct

public long countDistinct()
Description copied from interface: SimpleProjectable
Get the count of distinct matched elements

Specified by:
countDistinct in interface SimpleProjectable<T>
Returns:

distinct

public Q distinct()
Description copied from interface: SimpleQuery
Set the Query to return distinct results

Specified by:
distinct in interface SimpleQuery<Q extends AbstractLuceneQuery<T,Q>>
Returns:

limit

public Q limit(long limit)
Description copied from interface: SimpleQuery
Defines the limit / max results for the query results

Specified by:
limit in interface SimpleQuery<Q extends AbstractLuceneQuery<T,Q>>
Returns:

iterate

public com.mysema.commons.lang.CloseableIterator<T> iterate()
Description copied from interface: SimpleProjectable
Get the projection as a typed closeable Iterator

Specified by:
iterate in interface SimpleProjectable<T>
Returns:

iterateDistinct

public com.mysema.commons.lang.CloseableIterator<T> iterateDistinct()
Description copied from interface: SimpleProjectable
Get the projection as a typed closeable Iterator with distinct elements

Specified by:
iterateDistinct in interface SimpleProjectable<T>
Returns:

list

public List<T> list()
Description copied from interface: SimpleProjectable
Get the projection as a typed List

Specified by:
list in interface SimpleProjectable<T>
Returns:

listDistinct

public List<T> listDistinct()
Description copied from interface: SimpleProjectable
Get the projection as a typed List with distinct elements

Specified by:
listDistinct in interface SimpleProjectable<T>
Returns:

listDistinctResults

public SearchResults<T> listDistinctResults()
Description copied from interface: SimpleProjectable
Get the projection in SearchResults form with distinct element

Specified by:
listDistinctResults in interface SimpleProjectable<T>
Returns:

listResults

public SearchResults<T> listResults()
Description copied from interface: SimpleProjectable
Get the projection in SearchResults form

Specified by:
listResults in interface SimpleProjectable<T>
Returns:

offset

public Q offset(long offset)
Description copied from interface: SimpleQuery
Defines the offset for the query results

Specified by:
offset in interface SimpleQuery<Q extends AbstractLuceneQuery<T,Q>>
Returns:

orderBy

public Q orderBy(OrderSpecifier<?>... o)
Description copied from interface: SimpleQuery
Defines the order expressions

Specified by:
orderBy in interface SimpleQuery<Q extends AbstractLuceneQuery<T,Q>>
Returns:

restrict

public Q restrict(QueryModifiers modifiers)
Description copied from interface: SimpleQuery
Defines both limit and offset of the query results

Specified by:
restrict in interface SimpleQuery<Q extends AbstractLuceneQuery<T,Q>>
Returns:

set

public <P> Q set(ParamExpression<P> param,
                 P value)
Description copied from interface: SimpleQuery
Set the given parameter to the given value

Specified by:
set in interface SimpleQuery<Q extends AbstractLuceneQuery<T,Q>>
Returns:

uniqueResult

public T uniqueResult()
Description copied from interface: SimpleProjectable
Get the projection as a unique result or null if no result is found

Specified by:
uniqueResult in interface SimpleProjectable<T>
Returns:

where

public Q where(Predicate... e)
Description copied from interface: FilteredClause
Adds the given filter conditions

Specified by:
where in interface FilteredClause<Q extends AbstractLuceneQuery<T,Q>>
Parameters:
e - filter conditions to be added
Returns:

toString

public String toString()
Overrides:
toString in class Object


Copyright © 2007-2011 Mysema Ltd. All Rights Reserved.