public class RangeExpression extends BinaryOperatorExpression
Modifier and Type | Field and Description |
---|---|
static String |
CLOSE_BRACE |
static String |
COMMA |
static String |
EMPTY |
static String |
OPEN_BRACE |
static String |
SPACE |
_e1, _e2, _op
Constructor and Description |
---|
RangeExpression(Expression e1,
Expression e2) |
Modifier and Type | Method and Description |
---|---|
Expression |
abs()
Absolute value.
|
OrderByItem |
asc()
Return an OrderByItem referencing the SelectItem and specifying ascending
ordering.
|
String |
asExpression(org.apache.openjpa.persistence.query.AliasContext ctx)
Get a JPQL fragment as used in WHERE clause.
|
String |
asJoinable(org.apache.openjpa.persistence.query.AliasContext ctx)
Gets the string representation in FROM clause.
|
Predicate |
between(Calendar arg1,
Calendar arg2)
Create a predicate for testing whether the PredicateOperand lies between
(inclusive) the two arguments.
|
Predicate |
between(Calendar arg1,
PredicateOperand arg2)
Create a predicate for testing whether the PredicateOperand lies between
(inclusive) the two arguments.
|
Predicate |
between(Date arg1,
Date arg2)
Create a predicate for testing whether the PredicateOperand lies between
(inclusive) the two arguments.
|
Predicate |
between(Date arg1,
PredicateOperand arg2)
Create a predicate for testing whether the PredicateOperand lies between
(inclusive) the two arguments.
|
Predicate |
between(Number arg1,
Number arg2)
Create a predicate for testing whether the PredicateOperand lies between
(inclusive) the two arguments.
|
Predicate |
between(Number arg1,
PredicateOperand arg2)
Create a predicate for testing whether the PredicateOperand lies between
(inclusive) the two arguments.
|
Predicate |
between(PredicateOperand arg1,
Calendar arg2)
Create a predicate for testing whether the PredicateOperand lies between
(inclusive) the two arguments.
|
Predicate |
between(PredicateOperand arg1,
Date arg2)
Create a predicate for testing whether the PredicateOperand lies between
(inclusive) the two arguments.
|
Predicate |
between(PredicateOperand arg1,
Number arg2)
Create a predicate for testing whether the PredicateOperand lies between
(inclusive) the two arguments.
|
Predicate |
between(PredicateOperand arg1,
PredicateOperand arg2)
Create a predicate for testing whether the PredicateOperand lies between
(inclusive) the two arguments.
|
Predicate |
between(PredicateOperand arg1,
String arg2)
Create a predicate for testing whether the PredicateOperand lies between
(inclusive) the two arguments.
|
Predicate |
between(String arg1,
PredicateOperand arg2)
Create a predicate for testing whether the PredicateOperand lies between
(inclusive) the two arguments.
|
Predicate |
between(String arg1,
String arg2)
Create a predicate for testing whether the PredicateOperand lies between
(inclusive) the two arguments.
|
Expression |
concat(Expression... exprs)
Concatenate a string with other string(s).
|
Expression |
concat(String... str)
Concatenate a string with other string(s).
|
OrderByItem |
desc()
Return an OrderByItem referencing the SelectItem and specifying
descending ordering.
|
Expression |
dividedBy(Expression expr)
Division.
|
Expression |
dividedBy(Number num)
Division.
|
Predicate |
equal(boolean arg)
Create a predicate for testing equality with the specified argument.
|
Predicate |
equal(Calendar arg)
Create a predicate for testing equality with the specified argument.
|
Predicate |
equal(Class cls)
Create a predicate for testing equality with the specified argument.
|
Predicate |
equal(Date arg)
Create a predicate for testing equality with the specified argument.
|
Predicate |
equal(Enum<?> e)
Create a predicate for testing equality with the specified argument.
|
Predicate |
equal(Number arg)
Create a predicate for testing equality with the specified argument.
|
Predicate |
equal(PredicateOperand arg)
Create a predicate for testing equality with the specified argument.
|
Predicate |
equal(String arg)
Create a predicate for testing equality with the specified argument.
|
String |
getAliasHint(org.apache.openjpa.persistence.query.AliasContext ctx)
Gets the hint to be used while creating alias.
|
Predicate |
greaterEqual(Calendar arg)
Create a predicate for testing whether the PredicateOperand is greater
than or equal to the argument.
|
Predicate |
greaterEqual(Date arg)
Create a predicate for testing whether the PredicateOperand is greater
than or equal to the argument.
|
Predicate |
greaterEqual(Number arg)
Create a predicate for testing whether the PredicateOperand is greater
than or equal to the argument.
|
Predicate |
greaterEqual(PredicateOperand arg)
Create a predicate for testing whether the PredicateOperand is greater
than or equal to the argument.
|
Predicate |
greaterEqual(String arg)
Create a predicate for testing whether the PredicateOperand is greater
than or equal to the argument.
|
Predicate |
greaterThan(Calendar arg)
Create a predicate for testing whether the PredicateOperand is greater
than the argument.
|
Predicate |
greaterThan(Date arg)
Create a predicate for testing whether the PredicateOperand is greater
than the argument.
|
Predicate |
greaterThan(Number arg)
Create a predicate for testing whether the PredicateOperand is greater
than the argument.
|
Predicate |
greaterThan(PredicateOperand arg)
Create a predicate for testing whether the PredicateOperand is greater
than the argument.
|
Predicate |
greaterThan(String arg)
Create a predicate for testing whether the PredicateOperand is greater
than the argument.
|
Predicate |
in(Class... classes)
Create a predicate for testing whether the expression value is a member
of the argument list.
|
Predicate |
in(Enum<?>... enums)
Create a predicate for testing whether the expression value is a member
of the argument list.
|
Predicate |
in(Expression... params)
Create a predicate for testing whether the expression value is a member
of the argument list.
|
Predicate |
in(Number... nums)
Create a predicate for testing whether the expression value is a member
of the argument list.
|
Predicate |
in(String... strings)
Create a predicate for testing whether the expression value is a member
of the argument list.
|
Predicate |
in(Subquery subquery)
Create a predicate for testing whether the expression value is a member
of a subquery result.
|
Predicate |
isNull()
Create a predicate for testing whether the value of the expression is
null.
|
Expression |
length()
String length This method must be invoked on an expression corresponding
to a string.
|
Predicate |
lessEqual(Calendar arg)
Create a predicate for testing whether the PredicateOperand is less than
or equal to the argument.
|
Predicate |
lessEqual(Date arg)
Create a predicate for testing whether the PredicateOperand is less than
or equal to the argument.
|
Predicate |
lessEqual(Number arg)
Create a predicate for testing whether the PredicateOperand is less than
or equal to the argument.
|
Predicate |
lessEqual(PredicateOperand arg)
Create a predicate for testing whether the PredicateOperand is less than
or equal to the argument.
|
Predicate |
lessEqual(String arg)
Create a predicate for testing whether the PredicateOperand is less than
or equal to the argument.
|
Predicate |
lessThan(Calendar arg)
Create a predicate for testing whether the PredicateOperand is less than
the argument.
|
Predicate |
lessThan(Date arg)
Create a predicate for testing whether the PredicateOperand is less than
the argument.
|
Predicate |
lessThan(Number arg)
Create a predicate for testing whether the PredicateOperand is less than
the argument.
|
Predicate |
lessThan(PredicateOperand arg)
Create a predicate for testing whether the PredicateOperand is less than
the argument.
|
Predicate |
lessThan(String arg)
Create a predicate for testing whether the PredicateOperand is less than
the argument.
|
Predicate |
like(PredicateOperand pattern)
Create a predicate for testing whether the PredicateOperand satisfies the
given pattern.
|
Predicate |
like(PredicateOperand pattern,
char escapeChar)
Create a predicate for testing whether the PredicateOperand satisfies the
given pattern.
|
Predicate |
like(PredicateOperand pattern,
PredicateOperand escChar)
Create a predicate for testing whether the PredicateOperand satisfies the
given pattern.
|
Predicate |
like(String pattern)
Create a predicate for testing whether the PredicateOperand satisfies
the given pattern.
|
Predicate |
like(String pattern,
char escChar)
Create a predicate for testing whether the PredicateOperand satisfies
the given pattern.
|
Predicate |
like(String pattern,
PredicateOperand escapeChar)
Create a predicate for testing whether the PredicateOperand satisfies
the given pattern.
|
Expression |
locate(Expression expr)
Locate a string contained within the string corresponding to the
expression on which the method was invoked.
|
Expression |
locate(Expression str,
Expression position)
Locate a string contained within the string corresponding to the
expression on which the method was invoked, starting at a specified
search position.
|
Expression |
locate(Expression str,
int position)
Locate a string contained within the string corresponding to the
expression on which the method was invoked, starting at a specified
search position.
|
Expression |
locate(String str)
Locate a string contained within the string corresponding to the
expression on which the method was invoked.
|
Expression |
locate(String str,
Expression position)
Locate a string contained within the string corresponding to the
expression on which the method was invoked, starting at a specified
search position.
|
Expression |
locate(String str,
int position)
Locate a string contained within the string corresponding to the
expression on which the method was invoked, starting at a specified
search position.
|
Expression |
lower()
Convert string to lowercase.
|
Predicate |
member(PathExpression arg)
Create a predicate for testing whether the expression is a member of the
association or element collection denoted by the path expression.
|
Expression |
minus()
Unary minus.
|
Expression |
minus(Expression expr)
Subtraction.
|
Expression |
minus(Number num)
Subtraction.
|
Expression |
mod(Expression expr)
Modulo operation.
|
Expression |
mod(int num)
Modulo operation.
|
Predicate |
notEqual(boolean arg)
Create a predicate for testing inequality with the specified argument.
|
Predicate |
notEqual(Calendar arg)
Create a predicate for testing inequality with the specified argument.
|
Predicate |
notEqual(Class cls)
Create a predicate for testing inequality with the specified argument.
|
Predicate |
notEqual(Date arg)
Create a predicate for testing inequality with the specified argument.
|
Predicate |
notEqual(Enum<?> e)
Create a predicate for testing inequality with the specified argument.
|
Predicate |
notEqual(Number arg)
Create a predicate for testing inequality with the specified argument.
|
Predicate |
notEqual(PredicateOperand arg)
Create a predicate for testing inequality with the specified argument.
|
Predicate |
notEqual(String arg)
Create a predicate for testing inequality with the specified argument.
|
Expression |
plus(Expression expr)
Addition.
|
Expression |
plus(Number num)
Addition.
|
Expression |
sqrt()
Square root.
|
Expression |
substring(Expression start)
Extract a substring starting at specified position through to the end of
the string.
|
Expression |
substring(Expression start,
Expression len)
Extract a substring.
|
Expression |
substring(Expression start,
int len)
Extract a substring.
|
Expression |
substring(int start)
Extract a substring starting at specified position through to the end of
the string.
|
Expression |
substring(int start,
Expression len)
Extract a substring.
|
Expression |
substring(int start,
int len)
Extract a substring.
|
Expression |
times(Expression expr)
Multiplication.
|
Expression |
times(Number num)
Multiplication.
|
Expression |
trim()
Trim leading and trailing blanks.
|
Expression |
trim(char c)
Trim leading and trailing occurrences of character from the string.
|
Expression |
trim(char c,
TrimSpec spec)
Trim occurrences of the character from leading or trailing (or both)
positions of the string, as specified by trim spec.
|
Expression |
trim(Expression expr)
Trim leading and trailing occurrences of character specified by the
expression argument from the string.
|
Expression |
trim(Expression expr,
TrimSpec spec)
Trim occurrences of the character specified by the expression argument
from leading or trailing (or both) positions of the string, as specified
by trim spec.
|
Expression |
trim(TrimSpec spec)
Trim leading, trailing blanks (or both) as specified by trim spec.
|
Expression |
upper()
Convert string to uppercase.
|
asProjection, getOperand1, getOperand2, getOperator
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
asJoinable
public static final String SPACE
public static final String OPEN_BRACE
public static final String CLOSE_BRACE
public static final String COMMA
public static final String EMPTY
public RangeExpression(Expression e1, Expression e2)
public String asExpression(org.apache.openjpa.persistence.query.AliasContext ctx)
Visitable
asExpression
in interface Visitable
asExpression
in class BinaryOperatorExpression
public Expression abs()
Expression
abs
in interface Expression
public Expression concat(String... str)
Expression
concat
in interface Expression
str
- -
string(s)public Expression concat(Expression... exprs)
Expression
concat
in interface Expression
exprs
- -
expression(s) corresponding to string(s)public Expression dividedBy(Number num)
Expression
dividedBy
in interface Expression
num
- -
divisorpublic Expression dividedBy(Expression expr)
Expression
dividedBy
in interface Expression
expr
- -
expression corresponding to the divisorpublic Predicate in(String... strings)
Expression
in
in interface Expression
public Predicate in(Number... nums)
Expression
in
in interface Expression
public Predicate in(Enum<?>... enums)
Expression
in
in interface Expression
public Predicate in(Class... classes)
Expression
in
in interface Expression
public Predicate in(Expression... params)
Expression
in
in interface Expression
public Predicate in(Subquery subquery)
Expression
in
in interface Expression
public Predicate isNull()
Expression
isNull
in interface Expression
public Expression length()
Expression
length
in interface Expression
public Expression locate(String str)
Expression
locate
in interface Expression
str
- -
string to be locatedpublic Expression locate(Expression expr)
Expression
locate
in interface Expression
expr
- -
expression corresponding to the string to be locatedpublic Expression locate(String str, int position)
Expression
locate
in interface Expression
str
- -
string to be locatedposition
- -
position at which to start the searchpublic Expression locate(String str, Expression position)
Expression
locate
in interface Expression
str
- -
string to be locatedposition
- -
expression corresponding to position at which to start
the searchpublic Expression locate(Expression str, int position)
Expression
locate
in interface Expression
str
- -
expression corresponding to the string to be locatedposition
- -
position at which to start the searchpublic Expression locate(Expression str, Expression position)
Expression
locate
in interface Expression
str
- -
expression corresponding to the string to be locatedposition
- -
expression corresponding to position at which to start
the searchpublic Expression lower()
Expression
lower
in interface Expression
public Predicate member(PathExpression arg)
Expression
member
in interface Expression
arg
- -
a path expression that specifies a collection-valued
association or an element collectionpublic Expression minus()
Expression
minus
in interface Expression
public Expression minus(Number num)
Expression
minus
in interface Expression
num
- -
subtrahendpublic Expression minus(Expression expr)
Expression
minus
in interface Expression
expr
- -
expression corresponding to subtrahendpublic Expression mod(int num)
Expression
mod
in interface Expression
num
- -
integer divisorpublic Expression mod(Expression expr)
Expression
mod
in interface Expression
expr
- -
expression corresponding to integer divisorpublic Expression plus(Number num)
Expression
plus
in interface Expression
num
- -
number to be addedpublic Expression plus(Expression expr)
Expression
plus
in interface Expression
expr
- -
expression corresponding to number to be addedpublic Expression sqrt()
Expression
sqrt
in interface Expression
public Expression substring(int start)
Expression
substring
in interface Expression
start
- -
start position (1 indicates first position)public Expression substring(Expression start)
Expression
substring
in interface Expression
start
- -
expression denoting start position (1 indicates first
position)public Expression substring(int start, int len)
Expression
substring
in interface Expression
start
- -
start position (1 indicates first position)len
- -
length of the substring to be returnedpublic Expression substring(int start, Expression len)
Expression
substring
in interface Expression
start
- -
start position (1 indicates first position)len
- -
expression denoting length of the substring to returnpublic Expression substring(Expression start, int len)
Expression
substring
in interface Expression
start
- -
expression denoting start position (1 indicates first
position)len
- -
length of the substring to returnpublic Expression substring(Expression start, Expression len)
Expression
substring
in interface Expression
start
- -
expression denoting start position (1 indicates first
position)len
- -
expression denoting length of the substring to returnpublic Expression times(Number num)
Expression
times
in interface Expression
num
- -
multiplierpublic Expression times(Expression expr)
Expression
times
in interface Expression
expr
- -
expression corresponding to the multiplierpublic Expression trim()
Expression
trim
in interface Expression
public Expression trim(TrimSpec spec)
Expression
trim
in interface Expression
spec
- -
trim specificationpublic Expression trim(char c)
Expression
trim
in interface Expression
c
- -
character to be trimmedpublic Expression trim(char c, TrimSpec spec)
Expression
trim
in interface Expression
c
- -
character to be trimmedspec
- -
trim specificationpublic Expression trim(Expression expr)
Expression
trim
in interface Expression
expr
- -
expression corresponding to the character to be trimmedpublic Expression trim(Expression expr, TrimSpec spec)
Expression
trim
in interface Expression
expr
- -
expression corresponding to the character to be trimmedspec
- -
trim specificationpublic Expression upper()
Expression
upper
in interface Expression
public OrderByItem asc()
SelectItem
asc
in interface SelectItem
public OrderByItem desc()
SelectItem
desc
in interface SelectItem
public Predicate between(PredicateOperand arg1, PredicateOperand arg2)
PredicateOperand
between
in interface PredicateOperand
arg1
- -
PredicateOperand instance or parameterarg2
- -
PredicateOperand instance or parameterpublic Predicate between(PredicateOperand arg1, Number arg2)
PredicateOperand
between
in interface PredicateOperand
arg1
- -
PredicateOperand instance or parameterarg2
- -
numericpublic Predicate between(Number arg1, PredicateOperand arg2)
PredicateOperand
between
in interface PredicateOperand
arg1
- -
numericarg2
- -
PredicateOperand instance or parameterpublic Predicate between(Number arg1, Number arg2)
PredicateOperand
between
in interface PredicateOperand
arg1
- -
numericarg2
- -
numericpublic Predicate between(PredicateOperand arg1, String arg2)
PredicateOperand
between
in interface PredicateOperand
arg1
- -
PredicateOperand instance or parameterarg2
- -
stringpublic Predicate between(String arg1, PredicateOperand arg2)
PredicateOperand
between
in interface PredicateOperand
arg1
- -
stringarg2
- -
PredicateOperand instance or parameterpublic Predicate between(String arg1, String arg2)
PredicateOperand
between
in interface PredicateOperand
arg1
- -
stringarg2
- -
stringpublic Predicate between(PredicateOperand arg1, Date arg2)
PredicateOperand
between
in interface PredicateOperand
arg1
- -
PredicateOperand instance or parameterarg2
- -
datepublic Predicate between(Date arg1, PredicateOperand arg2)
PredicateOperand
between
in interface PredicateOperand
arg1
- -
datearg2
- -
PredicateOperand instance or parameterpublic Predicate between(Date arg1, Date arg2)
PredicateOperand
between
in interface PredicateOperand
arg1
- -
datearg2
- -
datepublic Predicate between(PredicateOperand arg1, Calendar arg2)
PredicateOperand
between
in interface PredicateOperand
arg1
- -
PredicateOperand instance or parameterarg2
- -
calendarpublic Predicate between(Calendar arg1, PredicateOperand arg2)
PredicateOperand
between
in interface PredicateOperand
arg1
- -
calendararg2
- -
PredicateOperand instance or parameterpublic Predicate between(Calendar arg1, Calendar arg2)
PredicateOperand
between
in interface PredicateOperand
arg1
- -
calendararg2
- -
calendarpublic Predicate equal(PredicateOperand arg)
PredicateOperand
equal
in interface PredicateOperand
arg
- -
PredicateOperand instance or parameterpublic Predicate equal(Class cls)
PredicateOperand
equal
in interface PredicateOperand
cls
- -
entity classpublic Predicate equal(Number arg)
PredicateOperand
equal
in interface PredicateOperand
arg
- -
numericpublic Predicate equal(String arg)
PredicateOperand
equal
in interface PredicateOperand
arg
- -
string valuepublic Predicate equal(boolean arg)
PredicateOperand
equal
in interface PredicateOperand
arg
- -
boolean valuepublic Predicate equal(Date arg)
PredicateOperand
equal
in interface PredicateOperand
arg
- -
datepublic Predicate equal(Calendar arg)
PredicateOperand
equal
in interface PredicateOperand
arg
- -
calendarpublic Predicate equal(Enum<?> e)
PredicateOperand
equal
in interface PredicateOperand
e
- -
enumpublic Predicate greaterEqual(PredicateOperand arg)
PredicateOperand
greaterEqual
in interface PredicateOperand
arg
- -
PredicateOperand instance or parameterpublic Predicate greaterEqual(Number arg)
PredicateOperand
greaterEqual
in interface PredicateOperand
arg
- -
numericpublic Predicate greaterEqual(String arg)
PredicateOperand
greaterEqual
in interface PredicateOperand
arg
- -
stringpublic Predicate greaterEqual(Date arg)
PredicateOperand
greaterEqual
in interface PredicateOperand
arg
- -
datepublic Predicate greaterEqual(Calendar arg)
PredicateOperand
greaterEqual
in interface PredicateOperand
arg
- -
calendarpublic Predicate greaterThan(PredicateOperand arg)
PredicateOperand
greaterThan
in interface PredicateOperand
arg
- -
PredicateOperand instance or parameterpublic Predicate greaterThan(Number arg)
PredicateOperand
greaterThan
in interface PredicateOperand
arg
- -
numericpublic Predicate greaterThan(String arg)
PredicateOperand
greaterThan
in interface PredicateOperand
arg
- -
stringpublic Predicate greaterThan(Date arg)
PredicateOperand
greaterThan
in interface PredicateOperand
arg
- -
datepublic Predicate greaterThan(Calendar arg)
PredicateOperand
greaterThan
in interface PredicateOperand
arg
- -
calendarpublic Predicate lessEqual(PredicateOperand arg)
PredicateOperand
lessEqual
in interface PredicateOperand
arg
- -
PredicateOperand instance or parameterpublic Predicate lessEqual(Number arg)
PredicateOperand
lessEqual
in interface PredicateOperand
arg
- -
numericpublic Predicate lessEqual(String arg)
PredicateOperand
lessEqual
in interface PredicateOperand
arg
- -
stringpublic Predicate lessEqual(Date arg)
PredicateOperand
lessEqual
in interface PredicateOperand
arg
- -
datepublic Predicate lessEqual(Calendar arg)
PredicateOperand
lessEqual
in interface PredicateOperand
arg
- -
calendarpublic Predicate lessThan(PredicateOperand arg)
PredicateOperand
lessThan
in interface PredicateOperand
arg
- -
PredicateOperand instance or parameterpublic Predicate lessThan(Number arg)
PredicateOperand
lessThan
in interface PredicateOperand
arg
- -
numericpublic Predicate lessThan(String arg)
PredicateOperand
lessThan
in interface PredicateOperand
arg
- -
stringpublic Predicate lessThan(Date arg)
PredicateOperand
lessThan
in interface PredicateOperand
arg
- -
datepublic Predicate lessThan(Calendar arg)
PredicateOperand
lessThan
in interface PredicateOperand
arg
- -
calendarpublic Predicate like(PredicateOperand pattern)
PredicateOperand
like
in interface PredicateOperand
public Predicate like(PredicateOperand pattern, PredicateOperand escChar)
PredicateOperand
like
in interface PredicateOperand
public Predicate like(PredicateOperand pattern, char escapeChar)
PredicateOperand
like
in interface PredicateOperand
public Predicate like(String pattern)
PredicateOperand
like
in interface PredicateOperand
public Predicate like(String pattern, PredicateOperand escapeChar)
PredicateOperand
like
in interface PredicateOperand
public Predicate like(String pattern, char escChar)
PredicateOperand
like
in interface PredicateOperand
public Predicate notEqual(PredicateOperand arg)
PredicateOperand
notEqual
in interface PredicateOperand
arg
- -
PredicateOperand instance or parameterpublic Predicate notEqual(Class cls)
PredicateOperand
notEqual
in interface PredicateOperand
cls
- -
entity classpublic Predicate notEqual(Number arg)
PredicateOperand
notEqual
in interface PredicateOperand
arg
- -
numberic valuepublic Predicate notEqual(String arg)
PredicateOperand
notEqual
in interface PredicateOperand
arg
- -
string valuepublic Predicate notEqual(boolean arg)
PredicateOperand
notEqual
in interface PredicateOperand
arg
- -
boolean valuepublic Predicate notEqual(Date arg)
PredicateOperand
notEqual
in interface PredicateOperand
arg
- -
datepublic Predicate notEqual(Calendar arg)
PredicateOperand
notEqual
in interface PredicateOperand
arg
- -
calendarpublic Predicate notEqual(Enum<?> e)
PredicateOperand
notEqual
in interface PredicateOperand
e
- -
enumpublic String getAliasHint(org.apache.openjpa.persistence.query.AliasContext ctx)
Visitable
getAliasHint
in interface Visitable
public String asJoinable(org.apache.openjpa.persistence.query.AliasContext ctx)
Visitable
asJoinable
in interface Visitable
Copyright © 2006–2022 Apache Software Foundation. All rights reserved.