public class EclipseLinkActualJPQLQueryFormatter extends AbstractActualJPQLQueryFormatter implements EclipseLinkStateObjectVisitor
IJPQLQueryFormatter
is used to generate a string representation of a StateObject
based on how it was parsed,
which means this formatter can only be used when the model.query.StateObject StateObject
was created by parsing a JPQL query because it needs to
retrieve parsing information from the corresponding parser.Expression Expression
.
This version adds support for EclipseLink extension.
It is possible to partially match the JPQL query that was parsed, the value of the exactMatch
will determine whether the string representation of any given jpql.model.query.StateObject StateObject
should reflect the exact string that was parsed.
true
will use every bit of information contained in the corresponding Expression
to perfectly match what was parsed;
false
will only match the case sensitivity of the JPQL identifiers.
IJPQLQueryFormatter.IdentifierStyle
exactMatch
COMMA, COMMA_SPACE, LEFT_PARENTHESIS, RIGHT_PARENTHESIS, SPACE, style, writer
Constructor and Description |
---|
EclipseLinkActualJPQLQueryFormatter(boolean exactMatch)
Creates a new
EclipseLinkActualJPQLQueryFormatter . |
EclipseLinkActualJPQLQueryFormatter(boolean exactMatch,
IJPQLQueryFormatter.IdentifierStyle style)
Creates a new
EclipseLinkActualJPQLQueryFormatter . |
appendIdentifier, isUsingExactMatch, shouldOutput, toStringAggregateFunction, toStringChildren, toStringCompound, toStringDoubleEncapsulated, toStringEncapsulatedIdentificationVariable, toStringFromClause, toStringIdentificationVariableDeclaration, toStringModifyStatement, toStringPathExpression, toStringRangeVariableDeclaration, toStringSelectStatement, toStringSimpleStateObject, toStringSingleEncapsulated, toStringTripleEncapsulated, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit
formatIdentifier, getIdentifierStyle, toString, toString, toText
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit
public EclipseLinkActualJPQLQueryFormatter(boolean exactMatch)
EclipseLinkActualJPQLQueryFormatter
.exactMatch
- Determines whether the string representation of any given StateObject
should reflect the exact
string that was parsed: true
will use every bit of information contained in the
corresponding Expression
to
perfectly match what was parsed; false
will only match the case sensitivity of
the JPQL identifierspublic EclipseLinkActualJPQLQueryFormatter(boolean exactMatch, IJPQLQueryFormatter.IdentifierStyle style)
EclipseLinkActualJPQLQueryFormatter
.exactMatch
- Determines whether the string representation of any given StateObject
should reflect the exact
string that was parsed: true
will use every bit of information contained in the
corresponding Expression
to
perfectly match what was parsed (case of JPQL identifiers and the presence of whitespace);
false
will only match the case sensitivity of the JPQL identifiersstyle
- Determines how the JPQL identifiers are written out, which is used if the StateObject
was modified after its
creationjava.lang.NullPointerException
- The IdentifierStyle cannot be null