|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.openjpa.kernel.exps.InMemoryExpressionFactory
public class InMemoryExpressionFactory
Expression factory implementation that can be used to execute queries in memory.
| Constructor Summary | |
|---|---|
InMemoryExpressionFactory()
|
|
| Method Summary | ||
|---|---|---|
Value |
abs(Value val)
Return a value representing the absolute value of the given one. |
|
Value |
add(Value val1,
Value val2)
Return a value representing the two values added together. |
|
Value |
all(Value val)
Return an expression representing the given condition. |
|
Expression |
and(Expression exp1,
Expression exp2)
Return the two expressions AND'd together. |
|
Value |
any(Value val)
Return an expression representing the given condition. |
|
Expression |
asExpression(Value v)
Return the given value as an expression. |
|
Value |
avg(Value val)
Return the average of the given value for all matches. |
|
Expression |
bindKeyVariable(Value var,
Value val)
Bind the given variable to the key set of the given map value. |
|
Expression |
bindValueVariable(Value var,
Value val)
Bind the given variable to the value set of the given map value. |
|
Expression |
bindVariable(Value var,
Value val)
Bind the given variable to the given collection value. |
|
Value |
cast(Value val,
Class cls)
Cast the value to the given class. |
|
Value |
coalesceExpression(Value[] val)
Return a coalesce expression |
|
Value |
concat(Value val1,
Value val2)
Return a value representing the concatenation of the given target with the given args. |
|
Expression |
contains(Value v1,
Value v2)
Return an expression representing the given condition. |
|
Expression |
containsKey(Value v1,
Value v2)
Return an expression representing the given condition. |
|
Expression |
containsValue(Value v1,
Value v2)
Return an expression representing the given condition. |
|
Value |
count(Value val)
Return the count of the given value for all matches. |
|
List |
distinct(QueryExpressions exps,
boolean fromExtent,
List matches)
Filter the given list of matches, removing duplicate entries. |
|
Value |
distinct(Value val)
Return distinct values of the given value. |
|
Value |
divide(Value val1,
Value val2)
Return a value representing the first value divided by the first one. |
|
Expression |
emptyExpression()
Return a blank expression; this is used when the filter is empty. |
|
Expression |
endsWith(Value v1,
Value v2)
Return whether the first string ends with the second. |
|
Expression |
equal(Value v1,
Value v2)
Return an expression representing the given condition. |
|
Value |
generalCaseExpression(Expression[] exp,
Value val)
Return a general case expression |
|
|
getCurrentDate(Class<T> dateType)
Return a value representing the current date. |
|
|
getCurrentTime(Class<T> dateType)
Return a value representing the current time. |
|
|
getCurrentTimestamp(Class<T> dateType)
Return a value representing the current timestamp. |
|
Value |
getKey(Value val)
Path navigation thru map key |
|
Value |
getMapValue(Value map,
Value arg)
Return an expression representing the given condition. |
|
Value |
getNull()
Return a value representing null. |
|
Value |
getObjectId(Value val)
Return the object id of the given value. |
|
Value |
getThis()
Return a value representing this. |
|
Expression |
greaterThan(Value v1,
Value v2)
Return an expression representing the given condition. |
|
Expression |
greaterThanEqual(Value v1,
Value v2)
Return an expression representing the given condition. |
|
List |
group(QueryExpressions exps,
List matches,
StoreContext ctx,
Object[] params)
Group the list of matches into a list of lists. |
|
Value |
index(Value val)
Return an index/position of the given value within a collection/map. |
|
Value |
indexOf(Value val1,
Value val2)
Return a value representing the String.indexOf(int) function on
the given target with the given args. |
|
Expression |
isEmpty(Value v1)
Return an expression representing the given condition. |
|
Expression |
isInstance(Value v1,
Class c)
Return whether the first value is an instance of the given class. |
|
Expression |
isNotEmpty(Value v1)
Return an expression representing the given condition. |
|
Expression |
lessThan(Value v1,
Value v2)
Return an expression representing the given condition. |
|
Expression |
lessThanEqual(Value v1,
Value v2)
Return an expression representing the given condition. |
|
Value |
mapEntry(Value key,
Value val)
Return the map entry of the given value. |
|
Value |
mapKey(Value key,
Value val)
Return the map key of the given value |
|
boolean |
matches(QueryExpressions exps,
ClassMetaData type,
boolean subs,
Object candidate,
StoreContext ctx,
Object[] params)
Tests whether the given candidate matches the given type and this expression. |
|
boolean |
matches(QueryExpressions exps,
Collection group,
StoreContext ctx,
Object[] params)
Return true if the given group matches the having expression. |
|
Expression |
matches(Value v1,
Value v2,
String single,
String multi,
String esc)
Return whether the string matches the matching pattern. |
|
Value |
max(Value val)
Return the max of the given value for all matches. |
|
Value |
min(Value val)
Return the max of the given value for all matches. |
|
Value |
mod(Value val1,
Value val2)
Return a value representing the first value mod'd by the second one. |
|
Value |
multiply(Value val1,
Value val2)
Return a value representing the two values multiplied together. |
|
Value |
newAggregate(AggregateListener listener,
Value arg)
Return the value of the given function. |
|
Arguments |
newArgumentList(Value... values)
Return a function argument list consisting of the given values, any of which may itself be an argument list. |
|
Arguments |
newArgumentList(Value val1,
Value val2)
Return a function argument list consisting of the given values, either of which may itself be an argument list. |
|
Value |
newBoundVariable(String name,
Class type)
This method will be called only once per variable bound in a contains clause, and the returned value will be reused
for any further instances of the variable in subexpression of the
filter string. |
|
Parameter |
newCollectionValuedParameter(Object name,
Class type)
Return a value representing a collection-valued parameter. |
|
Value |
newExtension(FilterListener listener,
Value target,
Value arg)
Return the value of the given extension. |
|
Value |
newFunction(String functionName,
Class<?> resultType,
Value... args)
Return a value representing the given datastore function with the given arguments. |
|
Literal |
newLiteral(Object val,
int parseType)
Return a value representing the given constant, which will be a Number, String, or Boolean instance. |
|
Parameter |
newParameter(Object name,
Class type)
Return a value representing a parameter for the given value. |
|
Path |
newPath()
Return a value representing a path which will consist of a chain of 1 or more field names starting in the namespace of the candidate class. Example: parent.address.city |
|
Path |
newPath(Value val)
Return a value representing a path which will consist of a chain of 1 or more field names starting in the namespace of the given value. Example: var.address.city |
|
Subquery |
newSubquery(ClassMetaData candidate,
boolean subs,
String alias)
Return a subquery. |
|
Literal |
newTypeLiteral(Object val,
int parseType)
Return a value representing the given constant, which will be a Number, String, or Boolean instance. |
|
Value |
newUnboundVariable(String name,
Class type)
Return an unbound variable. |
|
Expression |
not(Expression exp)
Return the inverse of this expression. |
|
Expression |
notEqual(Value v1,
Value v2)
Return an expression representing the given condition. |
|
Expression |
notMatches(Value v1,
Value v2,
String single,
String multi,
String esc)
Return whether the string does not match the given pattern. |
|
Value |
nullIfExpression(Value val1,
Value val2)
Return a nullif expression |
|
Expression |
or(Expression exp1,
Expression exp2)
Return the two expressions OR'd together. |
|
List |
order(QueryExpressions exps,
List matches,
StoreContext ctx,
Object[] params)
Order the given list of matches on the given value. |
|
List |
project(QueryExpressions exps,
List matches,
StoreContext ctx,
Object[] params)
Create the projections for the given results. |
|
Value |
simpleCaseExpression(Value caseOperand,
Expression[] exp,
Value val)
Return a simple case expression |
|
Value |
size(Value val)
Return an expression representing the given condition. |
|
Value |
sqrt(Value val)
Return the square root of the given value. |
|
Expression |
startsWith(Value v1,
Value v2)
Return whether the first string starts with the second. |
|
Value |
stringLength(Value str)
Returns the number of characters in the String value. |
|
Value |
substring(Value val1,
Value val2)
Return a value representing the String.substring(int) function on
the given target with the given args. |
|
Value |
subtract(Value val1,
Value val2)
Return a value representing the second value subtracted from the first. |
|
Value |
sum(Value val)
Return the max of the given value for all matches. |
|
Value |
toLowerCase(Value val)
Return the upper case of the given value. |
|
Value |
toUpperCase(Value val)
Return the upper case of the given value. |
|
Value |
trim(Value str,
Value trimChar,
Boolean where)
Trims the specified specified trimChar from the specified value. |
|
Value |
type(Value val)
Return the type/class of the given value. |
|
Expression |
whenCondition(Expression exp,
Value val)
Return a when condidional clause |
|
Expression |
whenScalar(Value val1,
Value val2)
Return a when scalar_expression clause |
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public InMemoryExpressionFactory()
| Method Detail |
|---|
public boolean matches(QueryExpressions exps,
ClassMetaData type,
boolean subs,
Object candidate,
StoreContext ctx,
Object[] params)
public List group(QueryExpressions exps,
List matches,
StoreContext ctx,
Object[] params)
public boolean matches(QueryExpressions exps,
Collection group,
StoreContext ctx,
Object[] params)
public List project(QueryExpressions exps,
List matches,
StoreContext ctx,
Object[] params)
public List order(QueryExpressions exps,
List matches,
StoreContext ctx,
Object[] params)
public List distinct(QueryExpressions exps,
boolean fromExtent,
List matches)
public Expression emptyExpression()
ExpressionFactory
emptyExpression in interface ExpressionFactorypublic Expression asExpression(Value v)
ExpressionFactory
asExpression in interface ExpressionFactory
public Expression equal(Value v1,
Value v2)
ExpressionFactory
equal in interface ExpressionFactory
public Expression notEqual(Value v1,
Value v2)
ExpressionFactory
notEqual in interface ExpressionFactory
public Expression lessThan(Value v1,
Value v2)
ExpressionFactory
lessThan in interface ExpressionFactory
public Expression greaterThan(Value v1,
Value v2)
ExpressionFactory
greaterThan in interface ExpressionFactory
public Expression lessThanEqual(Value v1,
Value v2)
ExpressionFactory
lessThanEqual in interface ExpressionFactory
public Expression greaterThanEqual(Value v1,
Value v2)
ExpressionFactory
greaterThanEqual in interface ExpressionFactorypublic Expression isEmpty(Value v1)
ExpressionFactory
isEmpty in interface ExpressionFactorypublic Expression isNotEmpty(Value v1)
ExpressionFactory
isNotEmpty in interface ExpressionFactory
public Expression contains(Value v1,
Value v2)
ExpressionFactory
contains in interface ExpressionFactory
public Expression containsKey(Value v1,
Value v2)
ExpressionFactory
containsKey in interface ExpressionFactory
public Expression containsValue(Value v1,
Value v2)
ExpressionFactory
containsValue in interface ExpressionFactory
public Value getMapValue(Value map,
Value arg)
ExpressionFactory
getMapValue in interface ExpressionFactory
public Expression isInstance(Value v1,
Class c)
ExpressionFactory
isInstance in interface ExpressionFactory
public Expression and(Expression exp1,
Expression exp2)
ExpressionFactory
and in interface ExpressionFactory
public Expression or(Expression exp1,
Expression exp2)
ExpressionFactory
or in interface ExpressionFactorypublic Expression not(Expression exp)
ExpressionFactory
not in interface ExpressionFactory
public Expression bindVariable(Value var,
Value val)
ExpressionFactory
bindVariable in interface ExpressionFactory
public Expression bindKeyVariable(Value var,
Value val)
ExpressionFactory
bindKeyVariable in interface ExpressionFactory
public Expression bindValueVariable(Value var,
Value val)
ExpressionFactory
bindValueVariable in interface ExpressionFactory
public Expression endsWith(Value v1,
Value v2)
ExpressionFactory
endsWith in interface ExpressionFactory
public Expression matches(Value v1,
Value v2,
String single,
String multi,
String esc)
ExpressionFactory
matches in interface ExpressionFactoryv1 - the value to comparev2 - the pattern against which to comparesingle - the token that signifies a single-character matchmulti - the token that signifies a multi-character matchesc - the escape token that escapes the matching tokens
public Expression notMatches(Value v1,
Value v2,
String single,
String multi,
String esc)
ExpressionFactory
notMatches in interface ExpressionFactoryv1 - the value to comparev2 - the pattern against which to comparesingle - the token that signifies a single-character matchmulti - the token that signifies a multi-character matchesc - the escape token that escapes the matching tokens
public Expression startsWith(Value v1,
Value v2)
ExpressionFactory
startsWith in interface ExpressionFactory
public Subquery newSubquery(ClassMetaData candidate,
boolean subs,
String alias)
ExpressionFactoryExpressionFactory.newPath(Value), passing in the subquery as the
value.
newSubquery in interface ExpressionFactorycandidate - the candidate class of the subquerysubs - whether the query includes subclassesalias - the alias given to the query candidate classpublic Path newPath()
ExpressionFactoryparent.address.city
newPath in interface ExpressionFactorypublic Path newPath(Value val)
ExpressionFactoryvar.address.city
newPath in interface ExpressionFactory
public Literal newLiteral(Object val,
int parseType)
ExpressionFactoryNumber, String, or Boolean instance.
newLiteral in interface ExpressionFactory
public Literal newTypeLiteral(Object val,
int parseType)
ExpressionFactoryNumber, String, or Boolean instance.
newTypeLiteral in interface ExpressionFactorypublic Value getThis()
ExpressionFactorythis.
getThis in interface ExpressionFactorypublic Value getNull()
ExpressionFactory
getNull in interface ExpressionFactorypublic <T extends Date> Value getCurrentDate(Class<T> dateType)
ExpressionFactory
getCurrentDate in interface ExpressionFactorypublic <T extends Date> Value getCurrentTime(Class<T> dateType)
ExpressionFactory
getCurrentTime in interface ExpressionFactorypublic <T extends Date> Value getCurrentTimestamp(Class<T> dateType)
ExpressionFactory
getCurrentTimestamp in interface ExpressionFactory
public Parameter newParameter(Object name,
Class type)
ExpressionFactoryObject if the parameter is not declared.
newParameter in interface ExpressionFactory
public Parameter newCollectionValuedParameter(Object name,
Class type)
ExpressionFactoryObject if the parameter is not declared.
newCollectionValuedParameter in interface ExpressionFactory
public Value newExtension(FilterListener listener,
Value target,
Value arg)
ExpressionFactory
newExtension in interface ExpressionFactory
public Value newAggregate(AggregateListener listener,
Value arg)
ExpressionFactory
newAggregate in interface ExpressionFactory
public Arguments newArgumentList(Value val1,
Value val2)
ExpressionFactory
newArgumentList in interface ExpressionFactorypublic Arguments newArgumentList(Value... values)
ExpressionFactory
newArgumentList in interface ExpressionFactory
public Value newUnboundVariable(String name,
Class type)
ExpressionFactoryObject
if the variable is not declared.
newUnboundVariable in interface ExpressionFactory
public Value newBoundVariable(String name,
Class type)
ExpressionFactorycontains clause, and the returned value will be reused
for any further instances of the variable in subexpression of the
filter string. The type may be Object if the variable is
not declared.
newBoundVariable in interface ExpressionFactory
public Value cast(Value val,
Class cls)
ExpressionFactory
cast in interface ExpressionFactory
public Value add(Value val1,
Value val2)
ExpressionFactory
add in interface ExpressionFactory
public Value subtract(Value val1,
Value val2)
ExpressionFactory
subtract in interface ExpressionFactory
public Value multiply(Value val1,
Value val2)
ExpressionFactory
multiply in interface ExpressionFactory
public Value divide(Value val1,
Value val2)
ExpressionFactory
divide in interface ExpressionFactory
public Value mod(Value val1,
Value val2)
ExpressionFactory
mod in interface ExpressionFactorypublic Value abs(Value val)
ExpressionFactory
abs in interface ExpressionFactory
public Value indexOf(Value val1,
Value val2)
ExpressionFactoryString.indexOf(int) function on
the given target with the given args.
indexOf in interface ExpressionFactory
public Value concat(Value val1,
Value val2)
ExpressionFactory
concat in interface ExpressionFactorypublic Value stringLength(Value str)
ExpressionFactory
stringLength in interface ExpressionFactory
public Value trim(Value str,
Value trimChar,
Boolean where)
ExpressionFactory
trim in interface ExpressionFactorystr - the value from which to trimtrimChar - the characters to trim offwhere - which side of the String to trim: null
indicates both sides, true indicates
leading, and false indicates trailingpublic Value sqrt(Value val)
ExpressionFactory
sqrt in interface ExpressionFactory
public Value substring(Value val1,
Value val2)
ExpressionFactoryString.substring(int) function on
the given target with the given args. As with String.substring(int),
the start index is zero-based, and the second argument is the end index.
substring in interface ExpressionFactorypublic Value toUpperCase(Value val)
ExpressionFactory
toUpperCase in interface ExpressionFactorypublic Value toLowerCase(Value val)
ExpressionFactory
toLowerCase in interface ExpressionFactorypublic Value avg(Value val)
ExpressionFactory
avg in interface ExpressionFactorypublic Value count(Value val)
ExpressionFactory
count in interface ExpressionFactorypublic Value distinct(Value val)
ExpressionFactory
distinct in interface ExpressionFactorypublic Value max(Value val)
ExpressionFactory
max in interface ExpressionFactorypublic Value min(Value val)
ExpressionFactory
min in interface ExpressionFactorypublic Value sum(Value val)
ExpressionFactory
sum in interface ExpressionFactorypublic Value any(Value val)
ExpressionFactory
any in interface ExpressionFactorypublic Value all(Value val)
ExpressionFactory
all in interface ExpressionFactorypublic Value size(Value val)
ExpressionFactory
size in interface ExpressionFactorypublic Value index(Value val)
ExpressionFactory
index in interface ExpressionFactorypublic Value type(Value val)
ExpressionFactory
type in interface ExpressionFactory
public Value mapEntry(Value key,
Value val)
ExpressionFactory
mapEntry in interface ExpressionFactory
public Value mapKey(Value key,
Value val)
ExpressionFactory
mapKey in interface ExpressionFactorypublic Value getKey(Value val)
ExpressionFactory
getKey in interface ExpressionFactorypublic Value getObjectId(Value val)
ExpressionFactory
getObjectId in interface ExpressionFactory
public Value generalCaseExpression(Expression[] exp,
Value val)
ExpressionFactory
generalCaseExpression in interface ExpressionFactory
public Value simpleCaseExpression(Value caseOperand,
Expression[] exp,
Value val)
ExpressionFactory
simpleCaseExpression in interface ExpressionFactory
public Expression whenCondition(Expression exp,
Value val)
ExpressionFactory
whenCondition in interface ExpressionFactory
public Expression whenScalar(Value val1,
Value val2)
ExpressionFactory
whenScalar in interface ExpressionFactorypublic Value coalesceExpression(Value[] val)
ExpressionFactory
coalesceExpression in interface ExpressionFactory
public Value nullIfExpression(Value val1,
Value val2)
ExpressionFactory
nullIfExpression in interface ExpressionFactory
public Value newFunction(String functionName,
Class<?> resultType,
Value... args)
ExpressionFactory
newFunction in interface ExpressionFactory
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||