protected FlowNodeGraph createFlowNodeGraph( List<ElementGraph> elementGraphs ) { ElementGraph mapElementGraph = elementGraphs.get( 0 ); ElementGraph reduceElementGraph = elementGraphs.size() == 2 ? elementGraphs.get( 1 ) : null; FlowNodeGraph flowNodeGraph = new FlowNodeGraph(); int nodes = elementGraphs.size(); FlowNode mapperNode = new BaseFlowNode( mapElementGraph, String.format( "(1/%s)", nodes ), 0 ); flowNodeGraph.addVertex( mapperNode ); if( nodes == 2 ) { FlowNode reducerNode = new BaseFlowNode( reduceElementGraph, "(2/2)", 1 ); flowNodeGraph.addVertex( reducerNode ); flowNodeGraph.addEdge( mapperNode, reducerNode, new ProcessEdge( mapperNode, reducerNode ) ); } return flowNodeGraph; } }
protected FlowNodeGraph createFlowNodeGraph( List<ElementGraph> elementGraphs ) { ElementGraph mapElementGraph = elementGraphs.get( 0 ); ElementGraph reduceElementGraph = elementGraphs.size() == 2 ? elementGraphs.get( 1 ) : null; FlowNodeGraph flowNodeGraph = new FlowNodeGraph(); int nodes = elementGraphs.size(); FlowNode mapperNode = new BaseFlowNode( mapElementGraph, String.format( "(1/%s)", nodes ), 0 ); flowNodeGraph.addVertex( mapperNode ); if( nodes == 2 ) { FlowNode reducerNode = new BaseFlowNode( reduceElementGraph, "(2/2)", 1 ); flowNodeGraph.addVertex( reducerNode ); flowNodeGraph.addEdge( mapperNode, reducerNode, new ProcessEdge( mapperNode, reducerNode ) ); } return flowNodeGraph; } }