|
EclipseLink 2.4.2, build 'v20130514-5956486' API Reference | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.eclipse.persistence.jpa.jpql.parser.AbstractExpression
org.eclipse.persistence.jpa.jpql.parser.AbstractEncapsulatedExpression
org.eclipse.persistence.jpa.jpql.parser.AbstractSingleEncapsulatedExpression
org.eclipse.persistence.jpa.jpql.parser.FunctionExpression
public final class FunctionExpression
This expression adds support to call native database functions.
New to JPA 2.1.
func_expression ::= <identifier>('function_name' {, func_item}*)
| Field Summary |
|---|
| Fields inherited from class org.eclipse.persistence.jpa.jpql.parser.AbstractExpression |
|---|
COMMA, DOT, DOUBLE_QUOTE, LEFT_CURLY_BRACKET, LEFT_PARENTHESIS, NOT_DEFINED, RIGHT_CURLY_BRACKET, RIGHT_PARENTHESIS, SINGLE_QUOTE, SPACE, UNDERSCORE |
| Constructor Summary | |
|---|---|
FunctionExpression(AbstractExpression parent,
java.lang.String identifier)
Creates a new FuncExpression. |
|
FunctionExpression(AbstractExpression parent,
java.lang.String identifier,
FunctionExpressionFactory.ParameterCount parameterCount,
java.lang.String parameterQueryBNFId)
Creates a new FunctionExpression. |
|
| Method Summary | |
|---|---|
void |
accept(ExpressionVisitor visitor)
Visits this Expression by the given visitor. |
protected void |
addOrderedEncapsulatedExpressionTo(java.util.List<Expression> children)
Adds the Expressions representing the encapsulated Expression. |
java.lang.String |
encapsulatedExpressionBNF()
Returns the BNF used to parse the encapsulated expression. |
java.lang.String |
getFunctionName()
Returns the name of the SQL function. |
FunctionExpressionFactory.ParameterCount |
getParameterCount()
Returns the number of parameters a FunctionExpression can have, which will be during
validation. |
JPQLQueryBNF |
getQueryBNF()
Returns the BNF of this Expression. |
java.lang.String |
getUnquotedFunctionName()
Returns the name of the SQL function. |
boolean |
hasComma()
Determines whether the comma was parsed after the function name. |
boolean |
hasEncapsulatedExpression()
Determines whether something was parsed after the left parenthesis. |
boolean |
hasFunctionName()
Determines whether the function name was parsed. |
boolean |
hasSpaceAfterComma()
Determines whether a whitespace was parsed after the comma. |
protected void |
parseEncapsulatedExpression(WordParser wordParser,
int whitespaceCount,
boolean tolerant)
Parses the encapsulated expression by starting at the current position, which is part of the given WordParser. |
protected java.lang.String |
parseIdentifier(WordParser wordParser)
Parses the identifier of this expression. |
protected void |
toParsedTextEncapsulatedExpression(java.lang.StringBuilder writer,
boolean actual)
Generates a string representation of the encapsulated Expression. |
| Methods inherited from class org.eclipse.persistence.jpa.jpql.parser.AbstractSingleEncapsulatedExpression |
|---|
acceptChildren, addChildrenTo, findQueryBNF, getExpression, hasExpression, removeEncapsulatedExpression, setExpression |
| Methods inherited from class org.eclipse.persistence.jpa.jpql.parser.AbstractEncapsulatedExpression |
|---|
addOrderedChildrenTo, areLogicalIdentifiersSupported, getActualIdentifier, getIdentifier, hasLeftParenthesis, hasRightParenthesis, hasSpaceAfterIdentifier, isParsingComplete, parse, shouldParseRightParenthesis, toParsedText |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Constructor Detail |
|---|
public FunctionExpression(AbstractExpression parent, java.lang.String identifier)
FuncExpression.
parent - The parent of this expressionidentifier - The JPQL identifierpublic FunctionExpression(AbstractExpression parent, java.lang.String identifier, FunctionExpressionFactory.ParameterCount parameterCount, java.lang.String parameterQueryBNFId)
FunctionExpression.
parent - The parent of this expressionidentifier - The JPQL identifierparameterCount - The number of parameters a FunctionExpression can haveparameterQueryBNFId - The unique identifier of the JPQLQueryBNF that will be used
to parse the arguments of the function expression| Method Detail |
|---|
public void accept(ExpressionVisitor visitor)
Expression by the given visitor.
visitor - The ExpressionVisitor to visit this objectprotected void addOrderedEncapsulatedExpressionTo(java.util.List<Expression> children)
Expressions representing the encapsulated Expression.
addOrderedEncapsulatedExpressionTo in class AbstractSingleEncapsulatedExpressionchildren - The list used to store the string representation of the encapsulated Expressionpublic java.lang.String encapsulatedExpressionBNF()
encapsulatedExpressionBNF in class AbstractSingleEncapsulatedExpressionpublic java.lang.String getFunctionName()
public FunctionExpressionFactory.ParameterCount getParameterCount()
FunctionExpression can have, which will be during
validation.
public JPQLQueryBNF getQueryBNF()
Expression.
JPQLQueryBNF, which represents the grammar of this Expressionpublic java.lang.String getUnquotedFunctionName()
public boolean hasComma()
true if a comma was parsed after the function name and the first
expression; false otherwisepublic boolean hasEncapsulatedExpression()
hasEncapsulatedExpression in class AbstractSingleEncapsulatedExpressiontrue if something was parsed; false otherwisepublic boolean hasFunctionName()
true if the function name was parsed; false otherwisepublic boolean hasSpaceAfterComma()
true if there was a whitespace after the comma; false otherwiseprotected void parseEncapsulatedExpression(WordParser wordParser, int whitespaceCount, boolean tolerant)
WordParser.
parseEncapsulatedExpression in class AbstractSingleEncapsulatedExpressionwordParser - The text to parse based on the current position of the cursorwhitespaceCount - The number of whitespace characters that were parsed after '('tolerant - Determines whether the parsing system should be tolerant, meaning if it should
try to parse invalid or incomplete queriesprotected java.lang.String parseIdentifier(WordParser wordParser)
parseIdentifier in class AbstractEncapsulatedExpression
protected void toParsedTextEncapsulatedExpression(java.lang.StringBuilder writer,
boolean actual)
Expression.
toParsedTextEncapsulatedExpression in class AbstractSingleEncapsulatedExpressionwriter - The buffer used to append the encapsulated Expression's string
representationactual - Determines whether to include any characters that are considered
virtual, i.e. that was parsed when the query is incomplete and is needed for functionality
like content assist
|
EclipseLink 2.4.2, build 'v20130514-5956486' API Reference | ||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||