* >= AND
* / \
* <= TRUE
*/
NodeFactory nodeFactory = getNodeFactory();
ContextManager cm = getContextManager();
QueryTreeNode trueNode = (QueryTreeNode) nodeFactory.getNode(
C_NodeTypes.BOOLEAN_CONSTANT_NODE,
Boolean.TRUE,
cm);
/* Create the AND <= */
BinaryComparisonOperatorNode lessEqual =
(BinaryComparisonOperatorNode) nodeFactory.getNode(
C_NodeTypes.BINARY_LESS_EQUALS_OPERATOR_NODE,
leftClone1,
rightOperandList.elementAt(1),
cm);
/* Set type info for the operator node */
lessEqual.bindComparisonOperator();
/* Create the AND */
AndNode newAnd = (AndNode) nodeFactory.getNode(
C_NodeTypes.AND_NODE,
lessEqual,
trueNode,
cm);
newAnd.postBindFixup();
/* Create the AND >= */
BinaryComparisonOperatorNode greaterEqual =
(BinaryComparisonOperatorNode) nodeFactory.getNode(
C_NodeTypes.BINARY_GREATER_EQUALS_OPERATOR_NODE,
leftOperand,
rightOperandList.elementAt(0),
cm);
/* Set type info for the operator node */
greaterEqual.bindComparisonOperator();
/* Create the AND */
newAnd = (AndNode) nodeFactory.getNode(
C_NodeTypes.AND_NODE,
greaterEqual,
newAnd,
cm);
newAnd.postBindFixup();