public final class DateTime extends AbstractExpression
Expression
represents a date or time. It supports the following identifiers:
CURRENT_DATE: This function returns the value of current date on the database server.
CURRENT_TIME: This function returns the value of current time on the database server.
CURRENT_TIMESTAMP: This function returns the value of current timestamp on the database server.
functions_returning_datetime ::= CURRENT_DATE | CURRENT_TIME | CURRENT_TIMESTAMP
The JDBC escape syntax may be used for the specification of date, time, and timestamp literals.
expression ::= {d 'yyyy-mm-dd'} | {t 'hh:mm:ss'} | {ts 'yyyy-mm-dd hh:mm:ss.f...'}
COMMA, DOT, DOUBLE_QUOTE, LEFT_CURLY_BRACKET, LEFT_PARENTHESIS, NOT_DEFINED, RIGHT_CURLY_BRACKET, RIGHT_PARENTHESIS, SINGLE_QUOTE, SPACE, UNDERSCORE
ABS, ALL, AND, ANY, AS, ASC, AVG, BETWEEN, BIT_LENGTH, BOTH, CASE, CHAR_LENGTH, CHARACTER_LENGTH, CLASS, COALESCE, CONCAT, COUNT, CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP, DELETE, DELETE_FROM, DESC, DIFFERENT, DISTINCT, DIVISION, ELSE, EMPTY, END, ENTRY, EQUAL, ESCAPE, EXISTS, FALSE, FETCH, FROM, FUNC, GREATER_THAN, GREATER_THAN_OR_EQUAL, GROUP_BY, HAVING, IN, INDEX, INNER, INNER_JOIN, INNER_JOIN_FETCH, IS, IS_EMPTY, IS_NOT_EMPTY, IS_NOT_NULL, IS_NULL, JOIN, JOIN_FETCH, KEY, 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_EXISTS, NOT_IN, NOT_LIKE, NOT_MEMBER, NOT_MEMBER_OF, NULL, NULLIF, OBJECT, OF, OR, ORDER_BY, OUTER, PLUS, POSITION, POSITIONAL_PARAMETER, QUOTE, SELECT, SET, SIZE, SOME, SQRT, SUBSTRING, SUM, THEN, TRAILING, TREAT, TRIM, TRUE, TYPE, UNKNOWN, UPDATE, UPPER, VALUE, WHEN, WHERE
Modifier and Type | Method and Description |
---|---|
void |
accept(ExpressionVisitor visitor)
Visits this
Expression by the given visitor . |
void |
acceptChildren(ExpressionVisitor visitor)
Visits the children of this
Expression . |
JPQLQueryBNF |
getQueryBNF()
Returns the BNF of this
Expression . |
String |
getText()
Returns the encapsulated text of this
AbstractExpression , which can be used in various
ways, it can be a keyword, a literal, etc. |
boolean |
isCurrentDate()
Determines whether this
DateTime represents the JPQL identifier
CURRENT_DATE . |
boolean |
isCurrentTime()
Determines whether this
DateTime represents the JPQL identifier
CURRENT_TIME . |
boolean |
isCurrentTimestamp()
Determines whether this
DateTime represents the JPQL identifier
CURRENT_TIMESTAMP . |
boolean |
isJDBCDate()
Determines whether this
DateTime represents the JDBC escape syntax for date, time,
timestamp formats. |
String |
toParsedText()
Returns a string representation of this
StringExpression and its children. |
children, findQueryBNF, getChildren, getParent, getRoot, identifierRole, identifiers, identifierVersion, isAncestor, isIdentifier, isVirtual, orderedChildren, queryBNF, toActualText, toString
public void accept(ExpressionVisitor visitor)
Expression
by the given visitor
.visitor
- The visitor
to visit this objectpublic void acceptChildren(ExpressionVisitor visitor)
Expression
. This method can be used to optimize traversing
the children since a new list is not created every time Expression.children()
or Expression.getChildren()
is called.
This does not traverse the Expression
sub-hierarchy, use an subclass of
AbstractTraverseChildrenVisitor
in order to traverse the entire sub-hierarchy.
visitor
- The visitor
to visit the children of this object.public JPQLQueryBNF getQueryBNF()
Expression
.getQueryBNF
in class AbstractExpression
JPQLQueryBNF
, which represents the grammar of this Expression
public String getText()
AbstractExpression
, which can be used in various
ways, it can be a keyword, a literal, etc.public boolean isCurrentDate()
DateTime
represents the JPQL identifier
CURRENT_DATE
.true
if this Expression
represents
CURRENT_DATE
; false
otherwisepublic boolean isCurrentTime()
DateTime
represents the JPQL identifier
CURRENT_TIME
.true
if this Expression
represents
CURRENT_TIME
; false
otherwisepublic boolean isCurrentTimestamp()
DateTime
represents the JPQL identifier
CURRENT_TIMESTAMP
.true
if this Expression
represents
CURRENT_TIMESTAMP
; false
otherwisepublic boolean isJDBCDate()
DateTime
represents the JDBC escape syntax for date, time,
timestamp formats.true
if this Expression
represents a JDBC escape syntax;
false
otherwisepublic String toParsedText()
StringExpression
and its children. The
expression should contain whitespace even if the beautified version would not have any. For
instance, "SELECT e " should be returned where Expression#toText()
would return
"SELECT e".toParsedText
in interface Expression
toParsedText
in class AbstractExpression
StringExpression
EclipseLink 2.3.2, "build v20111125-r10461" API Reference