use of com.alibaba.maxgraph.compiler.logical.function.ProcessorFunction in project GraphScope by alibaba.
the class AbstractUseKeyNode method processJoinZeroVertex.
/**
* Process zero for sum and count vertex
*
* @param vertexIdManager The vertex id manager
* @param logicalSubQueryPlan The logical sub query plan
* @param valueVertex The value vertex
* @param joinZeroFlag The join zero flag
* @return The output vertex after deal with join zero flag
*/
protected LogicalVertex processJoinZeroVertex(VertexIdManager vertexIdManager, LogicalSubQueryPlan logicalSubQueryPlan, LogicalVertex valueVertex, boolean joinZeroFlag) {
LogicalVertex outputVertex = valueVertex;
LogicalVertex leftVertex = getSourceVertex();
if (joinZeroFlag && null != leftVertex) {
ProcessorFunction joinZeroFunction = new ProcessorFunction(QueryFlowOuterClass.OperatorType.JOIN_RIGHT_ZERO_JOIN);
LogicalBinaryVertex logicalBinaryVertex = new LogicalBinaryVertex(vertexIdManager.getId(), joinZeroFunction, false, leftVertex, valueVertex);
logicalSubQueryPlan.addLogicalVertex(logicalBinaryVertex);
logicalSubQueryPlan.addLogicalEdge(valueVertex, logicalBinaryVertex, new LogicalEdge());
outputVertex = logicalBinaryVertex;
}
return outputVertex;
}
Aggregations