INTERNAL
Validate node and calculate its type.
if (path != null) {
path.validate(context);
setType(path.getType());
// join of embedded attribute is not supported.
if (path.isDotNode()) {
TypeHelper typeHelper = context.getTypeHelper();
VariableNode left = (VariableNode)path.getLeft();
AttributeNode right = (AttributeNode)path.getRight();
if ((left != null) && (right != null)) {
if (typeHelper.isEmbeddedAttribute(left.getType(), right.getAttributeName()))
throw EJBQLException.unsupportJoinArgument(
context.getQueryInfo(), getLine(), getColumn(),
"Fetch Join", getType().toString());
}
}
}