public class PathNode extends ParseTreeNode
There's some parsing going on here as well, just because the path expression has some special syntax for special needs which I don't want to pollute into the 'pure' OQL expression parsing.
| Modifier and Type | Class and Description |
|---|---|
static class |
PathNode.HstoreExtractionMode |
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
VIRTUAL_ARRAY_MODIFIER_KEYS |
static java.lang.String |
VIRTUAL_ARRAY_MODIFIER_VALUES |
static java.lang.String |
VIRTUAL_MODIFIER_FALLBACK |
| Constructor and Description |
|---|
PathNode(Parser parser,
QueryNameSpace nameSpace,
boolean shortcutJoins,
java.lang.String explicitRootAlias,
boolean registerInNameSpace) |
PathNode(ParseTreeNode parent,
Parser parser,
QueryNameSpace nameSpace,
boolean shortcutJoins) |
PathNode(java.lang.String[] path,
QueryNameSpace nameSpace,
boolean shortcutJoins) |
PathNode(java.lang.String s,
Parser parser,
QueryNameSpace nameSpace,
boolean shortcutJoins) |
| Modifier and Type | Method and Description |
|---|---|
void |
addChild(ParseTreeNode child)
Adds a new node as a child of this node.
|
void |
addPathPart(PathPart part) |
void |
addPathPart(java.lang.String name,
boolean nullsafeDotted,
java.lang.String typeCast,
boolean only) |
void |
appendDebugString(java.lang.StringBuilder s)
appends a String representation of this node including it's children to the given StringBuilder
|
boolean |
endsWithAnchor() |
de.ipcon.db.oql.TableSurrogate |
getAnchor() |
EntityI |
getAnchorEntity() |
AttributeI |
getAttributeOfLastPathPart() |
ParseTreeNode |
getChild(int index)
Accessor method for individual children of this node.
|
int |
getChildCount()
Accessor method for the number of children of this node.
|
java.util.List |
getChildren() |
de.ipcon.db.oql.ExpressionResultType |
getExpressionResultType() |
PathPart |
getFirstPathPart() |
PathNode.HstoreExtractionMode |
getHstoreExtractionMode() |
PathPart |
getLastPathPart() |
QueryNameSpace |
getNameSpace() |
int |
getOperatorPrecedence() |
java.util.List<PathPart> |
getPathParts() |
java.lang.String |
getPathPartsAsString() |
java.lang.String |
getPathPartsAsString(int idx) |
int |
getPathPartsCount() |
java.lang.Class<?> |
getResultClass()
Returns the Java result type of this path.
|
boolean |
hasFallback()
True if this path expression explicitly requested language fallback resolution
via the terminal
.fallback modifier on an hstore column. |
boolean |
isLeaf()
Specifies whether this node is a leaf.
|
void |
prependPathPart(PathPart part) |
void |
prependPathPart(java.lang.String name) |
void |
registerInNameSpaceNow() |
void |
removeLastPathPart() |
void |
renderRawHstoreSQL(java.lang.StringBuilder s)
Renders the raw column path without wrapping it in native PostgreSQL array functions (akeys/avals)
and without appending virtual L10n locale keys.
|
void |
renderSQL(java.lang.StringBuilder s,
java.lang.Object[] oqlArgs,
java.util.List sqlArgs)
Renders this node into a StringBuilder as SQL statement, copying
arguments from oqlArgs to sqlArgs if needed.
|
void |
setAnchor(de.ipcon.db.oql.TableSurrogate anchor,
EntityI anchorEntity,
boolean endsWithAnchor) |
void |
setNameSpace(QueryNameSpace nameSpace) |
java.lang.String |
toString()
returns a String representation of just this node.
|
boolean |
touchesLocalizedAttribute()
True if rendering this path into SQL depends on locale state
(either direct virtual L10n lookup or fallback chain resolution).
|
appendComments, debugString, getParent, getToken, getType, hasType, isRoot, removeChild, setOwnType, setParent, setToken, setType, setType, setType, setTypeFromChildren, setTypeFromParentpublic static final java.lang.String VIRTUAL_ARRAY_MODIFIER_KEYS
public static final java.lang.String VIRTUAL_ARRAY_MODIFIER_VALUES
public static final java.lang.String VIRTUAL_MODIFIER_FALLBACK
public PathNode(java.lang.String s,
Parser parser,
QueryNameSpace nameSpace,
boolean shortcutJoins)
throws OQLSyntaxException
OQLSyntaxExceptionpublic PathNode(java.lang.String[] path,
QueryNameSpace nameSpace,
boolean shortcutJoins)
throws OQLSyntaxException
OQLSyntaxExceptionpublic PathNode(Parser parser, QueryNameSpace nameSpace, boolean shortcutJoins, java.lang.String explicitRootAlias, boolean registerInNameSpace) throws OQLSyntaxException
OQLSyntaxExceptionpublic PathNode(ParseTreeNode parent, Parser parser, QueryNameSpace nameSpace, boolean shortcutJoins) throws OQLSyntaxException
OQLSyntaxExceptionpublic void registerInNameSpaceNow()
throws OQLSyntaxException
OQLSyntaxExceptionpublic void setNameSpace(QueryNameSpace nameSpace)
public QueryNameSpace getNameSpace()
public void setAnchor(de.ipcon.db.oql.TableSurrogate anchor,
EntityI anchorEntity,
boolean endsWithAnchor)
public final de.ipcon.db.oql.TableSurrogate getAnchor()
public final EntityI getAnchorEntity()
public final boolean endsWithAnchor()
public final AttributeI getAttributeOfLastPathPart()
public void addChild(ParseTreeNode child)
ParseTreeNodeaddChild in class ParseTreeNodechild - The new childpublic java.util.List getChildren()
public ParseTreeNode getChild(int index)
ParseTreeNodegetChild in class ParseTreeNodeindex - the index of the child to retrieve.public int getChildCount()
ParseTreeNodegetChildCount in class ParseTreeNodepublic boolean isLeaf()
ParseTreeNodeisLeaf in class ParseTreeNodepublic void addPathPart(java.lang.String name,
boolean nullsafeDotted,
java.lang.String typeCast,
boolean only)
public void addPathPart(PathPart part)
public de.ipcon.db.oql.ExpressionResultType getExpressionResultType()
getExpressionResultType in class ParseTreeNodepublic java.lang.Class<?> getResultClass()
.fallback, virtual L10n) yield String, whereas collections
(.keys, .values) yield String[].getResultClass in class ParseTreeNodepublic java.lang.String toString()
ParseTreeNodetoString in class ParseTreeNodepublic void appendDebugString(java.lang.StringBuilder s)
ParseTreeNodeappendDebugString in class ParseTreeNodepublic final PathPart getFirstPathPart()
public final PathPart getLastPathPart()
public void removeLastPathPart()
public void prependPathPart(java.lang.String name)
public void prependPathPart(PathPart part)
public final java.util.List<PathPart> getPathParts()
public int getPathPartsCount()
public java.lang.String getPathPartsAsString()
public java.lang.String getPathPartsAsString(int idx)
public final PathNode.HstoreExtractionMode getHstoreExtractionMode()
public void renderRawHstoreSQL(java.lang.StringBuilder s)
public void renderSQL(java.lang.StringBuilder s,
java.lang.Object[] oqlArgs,
java.util.List sqlArgs)
ParseTreeNoderenderSQL in class ParseTreeNodepublic boolean hasFallback()
.fallback modifier on an hstore column.public boolean touchesLocalizedAttribute()
public int getOperatorPrecedence()
getOperatorPrecedence in class ParseTreeNodeCopyright © 2000-2026 OAshi S.à r.l. All Rights Reserved.