|
Oracle® Fusion Middleware Java API Reference for Oracle Coherence 12c (12.1.3.0.0) E47890-01 |
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||
java.lang.Object
com.tangosol.util.QueryHelper
public class QueryHelper
QueryHelper is a utility class that provides a set of factory methods used for building instances of Filter or ValueExtractor.
The QueryHelper API accepts a String that specifies the creation of rich Filters in a format similar to SQL WHERE clauses. For example, the String "street = 'Main' and state = 'TX'" will create a tree of Filters similar to the following Java code:
new AndFilter(
new EqualsFilter("getStreet","Main"),
new EqualsFilter("getState","TX"));
The following keywords are currently supported (words between brackets are optional):
=, >, >=, <, <=, <>, [ NOT ] BETWEEN, [ NOT ] LIKE, [ NOT ] IN, IS [ NOT ] NULL , CONTAINS [ ALL | ANY ](AND, OR, NOT)true, false, and nullEach argument to an operator is converted into a ReflectionExtractor. Additionally, the "." operator will use ChainedExtractor. Pseudo functions key() and value() may be used to specify the use of a key as in "key() between 10 and 50". The value() pseudo function is a shorthand for IdentityExtractor.
Query bind variables are supported in two forms. One form is a "?" followed by a position number; for example: "dept = ?1 and serviceCode in [10,20,30]". For this usage, supply an Object array of parameters to createFilter(String, Object[]). Note: this scheme treats 1 as the starting index into the array.
Additionally, named bind parameters are supported. The above example could be: "dept = :deptNum and serviceCode in :myList". This style requires the use of a Map with createFilter(String, Map). Both forms can be used in the same specification.
The factory methods catch a number of Exceptions from the implementation stages and subsequently may throw an unchecked FilterBuildingException.
| Constructor Summary | |
|---|---|
QueryHelper() |
|
| Method Summary | |
|---|---|
static ValueExtractor |
createExtractor(java.lang.String s)Make a new ValueExtractor from the given String. |
static Filter |
createFilter(java.lang.String s)Make a new Filter from the given String. |
static Filter |
createFilter(java.lang.String s, java.util.Map mapBindings)Make a new Filter from the given String. |
static Filter |
createFilter(java.lang.String s, java.lang.Object[] aBindings)Make a new Filter from the given String. |
static Filter |
createFilter(java.lang.String s, java.lang.Object[] aBindings, java.util.Map mapBindings)Make a new Filter from the given String. |
static java.lang.Object |
executeStatement(java.lang.String sStatement)Execute a CohQL statement. |
| Constructor Detail |
|---|
public QueryHelper()
| Method Detail |
|---|
public static Filter createFilter(java.lang.String s)
s - a String in the Coherence Query Language representing a FilterFilterBuildingException - may be thrown
public static Filter createFilter(java.lang.String s,
java.lang.Object[] aBindings)
s - a String in the Coherence Query Language representing a FilteraBindings - the array of Objects to use for Bind varsFilterBuildingException - may be thrown
public static Filter createFilter(java.lang.String s,
java.util.Map mapBindings)
s - a String in the Coherence Query Language representing a FiltermapBindings - the Map of Objects to use for Bind varsFilterBuildingException - may be thrown
public static Filter createFilter(java.lang.String s,
java.lang.Object[] aBindings,
java.util.Map mapBindings)
s - a String in the Coherence Query Language representing a FilteraBindings - the array of Objects to use for Bind varsmapBindings - the Map of Objects to use for Bind varsFilterBuildingException - may be thrownpublic static ValueExtractor createExtractor(java.lang.String s)
s - a String in the Coherence Query Language representing a ValueExtractorFilterBuildingException - may be thrownpublic static java.lang.Object executeStatement(java.lang.String sStatement)
| Return Type | Query Description |
|---|---|
| Cache entry value | If the statement is an INSERT operation the previous entry for the given key will be returned; otherwise null |
Number |
If the query is an aggregation that returns a single numerical value; for example: count(), avg(), max(), min() |
Map |
If query has a grouping |
Collection |
For all other SELECT, DELETE, UPDATE statements |
null |
If the query returns no results or for create/delete index or drop/create cache, or backup/restore |
sStatement - a Coherence Query Language statementjava.lang.RuntimeException - if an invalid query is provided
|
Oracle® Fusion Middleware Java API Reference for Oracle Coherence 12c (12.1.3.0.0) E47890-01 |
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||