| 
 | ehcache | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
public interface Query
Creates queries for performing cache searches.
Queries are created using our search DSL implemented using Java. A fluent interface provides a compact and yet easy-to-read representation. Fluent interfaces are implemented using method chaining. Static factory methods and imports are a great aid in creating a compact, yet readable DSL. Out API has the following features: Method Chaining - we returnthis.
 
 
 See http://www.infoq.com/articles/internal-dsls-java for a description of these conventions.
 
 A query can be executed and then modified and re-executed. If end() is called the query is made immutable.
 
 Both Element keys and attributes of Element can be queried. Attributes must be pre-defined for a cache. They are populated by extraction
 from an Element's value using an AttributeExtractor .
 
 Search results can either be Element keys (the default), values, or the result of an Aggregator function.
 
 A Query instance can be used by multiple threads
| Field Summary | |
|---|---|
| static Attribute | KEYThe search attribute for a cache element's key. | 
| static Attribute | VALUEThe search attribute for a cache element's value. | 
| Method Summary | |
|---|---|
|  Query | addCriteria(Criteria criteria)Adds a criteria to the query | 
|  Query | addGroupBy(Attribute<?>... attribute)Group result set by unique value(s) of specified attribute(s). | 
|  Query | addOrderBy(Attribute<?> attribute,
           Direction direction)Request result set ordering by the given attribute and direction. | 
|  Query | end()Optional method for terminating query creation. | 
|  Results | execute()Execute this query. | 
|  Results | execute(ExecutionHints hints)Like execute(), but with specified execution parameters. | 
|  Query | includeAggregator(Aggregator... aggregators)Request this query to aggregate the results by the given Aggregator(s) This method may be called multiple times to request multiple aggregations | 
|  Query | includeAttribute(Attribute<?>... attributes)Request that the given attribute(s) should be present in the result for this query. | 
|  Query | includeKeys()Request that the key object be present in the results. | 
|  Query | includeValues()Request that the value object be present in the results. | 
|  Query | maxResults(int maxResults)Restrict the number of results returned from the search. | 
| Field Detail | 
|---|
static final Attribute KEY
AttributeType
static final Attribute VALUE
AttributeType
| Method Detail | 
|---|
Query includeKeys()
Query includeValues()
Query includeAttribute(Attribute<?>... attributes)
maxResults(int) or by using Results.range(int, int) rathern than Results.all()
attributes - the query attributes to select
Query includeAggregator(Aggregator... aggregators)
                        throws SearchException,
                               AggregatorException
aggregators - 
SearchException
AggregatorException
Query addOrderBy(Attribute<?> attribute,
                 Direction direction)
attribute - The attribute to order the results bydirection - Ascending or descending
Query addGroupBy(Attribute<?>... attribute)
attribute - 
Query maxResults(int maxResults)
maxResults clause to your query to limit the size.
 
 Negative values are ignored and result in the default behaviour: unlimited number of results.
maxResults - the maximum number of results to return
Query addCriteria(Criteria criteria)
Results execute()
                throws SearchException
TimeoutBehaviorConfiguration.TimeoutBehaviorType.NOOP and
 TimeoutBehaviorConfiguration.TimeoutBehaviorType.LOCAL_READS behavior
SearchException
Results execute(ExecutionHints hints)
                throws SearchException
execute(), but with specified execution parameters.
hints - 
SearchExceptionQuery end()
| 
 | ehcache | |||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||