Class UnknownExpression
- java.lang.Object
- 
- org.eclipse.persistence.jpa.jpql.parser.AbstractExpression
- 
- org.eclipse.persistence.jpa.jpql.parser.UnknownExpression
 
 
- 
- All Implemented Interfaces:
- Expression
 
 public final class UnknownExpression extends AbstractExpression This expression contains a portion of the query that is unknown to the parser. This can happen when the query is malformed or incomplete.- Version:
- 2.5
- Author:
- Pascal Filion
- Since:
- 2.3
 
- 
- 
Field Summary- 
Fields inherited from class org.eclipse.persistence.jpa.jpql.parser.AbstractExpressionCOMMA, DOT, DOUBLE_QUOTE, LEFT_CURLY_BRACKET, LEFT_PARENTHESIS, NOT_DEFINED, RIGHT_CURLY_BRACKET, RIGHT_PARENTHESIS, SINGLE_QUOTE, SPACE, UNDERSCORE
 - 
Fields inherited from interface org.eclipse.persistence.jpa.jpql.parser.ExpressionABS, ALL, AND, ANY, AS, AS_OF, ASC, AVG, BETWEEN, BIT_LENGTH, BOTH, CASE, CAST, CHAR_LENGTH, CHARACTER_LENGTH, CLASS, COALESCE, COLUMN, CONCAT, CONNECT_BY, COUNT, CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP, DELETE, DELETE_FROM, DESC, DIFFERENT, DISTINCT, DIVISION, ELSE, EMPTY, END, ENTRY, EQUAL, ESCAPE, EXCEPT, EXISTS, EXTRACT, FALSE, FETCH, FIRST, FROM, FUNC, FUNCTION, GREATER_THAN, GREATER_THAN_OR_EQUAL, GROUP_BY, HAVING, IN, INDEX, INNER, INNER_JOIN, INNER_JOIN_FETCH, INTERSECT, IS, IS_EMPTY, IS_NOT_EMPTY, IS_NOT_NULL, IS_NULL, JOIN, JOIN_FETCH, KEY, LAST, LEADING, LEFT, LEFT_JOIN, LEFT_JOIN_FETCH, LEFT_OUTER_JOIN, LEFT_OUTER_JOIN_FETCH, LENGTH, LIKE, LOCATE, LOWER, LOWER_THAN, LOWER_THAN_OR_EQUAL, MAX, MEMBER, MEMBER_OF, MIN, MINUS, MOD, MULTIPLICATION, NAMED_PARAMETER, NEW, NOT, NOT_BETWEEN, NOT_EQUAL, NOT_EXISTS, NOT_IN, NOT_LIKE, NOT_MEMBER, NOT_MEMBER_OF, NULL, NULLIF, NULLS, NULLS_FIRST, NULLS_LAST, OBJECT, OF, ON, OPERATOR, OR, ORDER_BY, ORDER_SIBLINGS_BY, OUTER, PLUS, POSITION, POSITIONAL_PARAMETER, QUOTE, REGEXP, SCN, SELECT, SET, SIZE, SOME, SQL, SQRT, START_WITH, SUBSTRING, SUM, TABLE, THEN, TIMESTAMP, TRAILING, TREAT, TRIM, TRUE, TYPE, UNION, UNKNOWN, UPDATE, UPPER, VALUE, WHEN, WHERE
 
- 
 - 
Constructor SummaryConstructors Constructor Description UnknownExpression(AbstractExpression parent, java.lang.String text)Creates a newUnknownExpression.
 - 
Method SummaryAll Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaccept(ExpressionVisitor visitor)Visits thisExpressionby the givenvisitor.voidacceptChildren(ExpressionVisitor visitor)Visits the children of thisExpression.protected voidaddOrderedChildrenTo(java.util.List<Expression> children)Adds the children of thisAbstractExpressionto the given list.JPQLQueryBNFfindQueryBNF(Expression expression)Retrieves theJPQLQueryBNFthat represents the fragment of thisExpressionthat was used when parsing the givenExpression.JPQLQueryBNFgetQueryBNF()Returns the BNF of thisExpression.java.lang.StringgetText()Returns the encapsulated text of thisAbstractExpression, which can be used in various ways, it can be a keyword, a literal, etc.protected booleanisUnknown()Determines whether this expression is an unknownExpressionor any other subclass.protected voidparse(WordParser wordParser, boolean tolerant)Parses the query by starting at the current position, which is part of the givenWordParser.java.lang.StringtoParsedText()Returns a string representation of thisExpressionand its children.protected voidtoParsedText(java.lang.StringBuilder writer, boolean actual)Generates a string representation of thisExpression, including its children, if it has any.- 
Methods inherited from class org.eclipse.persistence.jpa.jpql.parser.AbstractExpressionacceptUnknownVisitor, acceptUnknownVisitor, addChildrenTo, buildExpressionFromFallingBack, buildNullExpression, buildStringExpression, buildStringExpression, buildUnknownExpression, calculatePosition, children, findFallBackExpressionFactory, getExpressionFactory, getExpressionRegistry, getGrammar, getIdentifierVersion, getJPAVersion, getLength, getOffset, getParent, getQueryBNF, getRoot, handleAggregate, handleCollection, isAncestor, isIdentifier, isNull, isParsingComplete, isTolerant, isVirtual, orderedChildren, parse, parseUsingExpressionFactory, populatePosition, rebuildActualText, rebuildParsedText, setParent, setText, shouldParseWithFactoryFirst, shouldSkipLiteral, toActualText, toString
 
- 
 
- 
- 
- 
Constructor Detail- 
UnknownExpressionpublic UnknownExpression(AbstractExpression parent, java.lang.String text) Creates a newUnknownExpression.- Parameters:
- parent- The parent of this expression
- text- The text to be stored in this expression
 
 
- 
 - 
Method Detail- 
acceptpublic void accept(ExpressionVisitor visitor) Visits thisExpressionby the givenvisitor.- Parameters:
- visitor- The- ExpressionVisitorto visit this object
 
 - 
acceptChildrenpublic void acceptChildren(ExpressionVisitor visitor) Visits the children of thisExpression. This method can be used to optimize traversing the children since a new list is not created every timeExpression.children()is called.This does not traverse the Expressionsub-hierarchy, use a subclass ofAbstractTraverseChildrenVisitorin order to traverse the entire sub-hierarchy.- Parameters:
- visitor- The- visitorto visit the children of this object.
 
 - 
addOrderedChildrenToprotected void addOrderedChildrenTo(java.util.List<Expression> children) Adds the children of thisAbstractExpressionto the given list.- Overrides:
- addOrderedChildrenToin class- AbstractExpression
- Parameters:
- children- The list used to store the string representation of this- AbstractExpression
 
 - 
findQueryBNFpublic JPQLQueryBNF findQueryBNF(Expression expression) Retrieves theJPQLQueryBNFthat represents the fragment of thisExpressionthat was used when parsing the givenExpression.- Specified by:
- findQueryBNFin interface- Expression
- Overrides:
- findQueryBNFin class- AbstractExpression
- Parameters:
- expression- The- Expressionthat is a descendant of this one
- Returns:
- The JPQLQueryBNFthat was used to parse the given expression
 
 - 
getQueryBNFpublic JPQLQueryBNF getQueryBNF() Returns the BNF of thisExpression.- Returns:
- The JPQLQueryBNF, which represents the grammar of thisExpression
 
 - 
getTextpublic java.lang.String getText() Returns the encapsulated text of thisAbstractExpression, which can be used in various ways, it can be a keyword, a literal, etc.- Overrides:
- getTextin class- AbstractExpression
- Returns:
- Either the JPQL identifier for this AbstractExpression, the literal it encapsulates or an empty string
 
 - 
isUnknownprotected boolean isUnknown() Determines whether this expression is an unknownExpressionor any other subclass.- Overrides:
- isUnknownin class- AbstractExpression
- Returns:
- falseby default
 
 - 
parseprotected void parse(WordParser wordParser, boolean tolerant) Parses the query by starting at the current position, which is part of the givenWordParser.- Specified by:
- parsein class- AbstractExpression
- Parameters:
- wordParser- The text to parse based on the current position of the cursor
- tolerant- Determines whether the parsing system should be tolerant, meaning if it should try to parse invalid or incomplete queries
 
 - 
toParsedTextpublic java.lang.String toParsedText() Returns a string representation of thisExpressionand its children. The expression should contain whitespace even if the beautified version would not have any. For instance, "SELECT e " should be returned whereExpression.toParsedText()would return "SELECT e".- Specified by:
- toParsedTextin interface- Expression
- Overrides:
- toParsedTextin class- AbstractExpression
- Returns:
- The string representation of this Expression
 
 - 
toParsedTextprotected void toParsedText(java.lang.StringBuilder writer, boolean actual)Generates a string representation of thisExpression, including its children, if it has any.- Specified by:
- toParsedTextin class- AbstractExpression
- Parameters:
- writer- The buffer used to append this- Expression's string representation
- actual- Determines whether the string representation should represent what was parsed, i.e. include any "virtual" whitespace (such as ending whitespace) and the actual case of the JPQL identifiers
 
 
- 
 
-