Search in sources :

Example 1 with ValueNodeBuilder

use of org.apache.cayenne.access.sqlbuilder.ValueNodeBuilder in project cayenne by apache.

the class QualifierTranslator method objectNode.

@Override
public void objectNode(Object leaf, Expression parentNode) {
    if (expressionsToSkip.contains(parentNode)) {
        return;
    }
    if (parentNode.getType() == OBJ_PATH || parentNode.getType() == DB_PATH || parentNode.getType() == DBID_PATH) {
        return;
    }
    ValueNodeBuilder valueNodeBuilder = value(leaf).attribute(findDbAttribute(parentNode));
    if (parentNode.getType() == Expression.LIST) {
        valueNodeBuilder.array(true);
    }
    Node nextNode = valueNodeBuilder.build();
    currentNode.addChild(nextNode);
    nextNode.setParent(currentNode);
}
Also used : Node(org.apache.cayenne.access.sqlbuilder.sqltree.Node) PatternMatchNode(org.apache.cayenne.exp.parser.PatternMatchNode) SimpleNode(org.apache.cayenne.exp.parser.SimpleNode) ValueNodeBuilder(org.apache.cayenne.access.sqlbuilder.ValueNodeBuilder)

Aggregations

ValueNodeBuilder (org.apache.cayenne.access.sqlbuilder.ValueNodeBuilder)1 Node (org.apache.cayenne.access.sqlbuilder.sqltree.Node)1 PatternMatchNode (org.apache.cayenne.exp.parser.PatternMatchNode)1 SimpleNode (org.apache.cayenne.exp.parser.SimpleNode)1