1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 package org.apache.giraph.block_app.test_setup.graphs;
19
20 import org.apache.giraph.block_app.test_setup.NumericTestGraph;
21 import org.apache.giraph.block_app.test_setup.TestGraphModifier;
22 import org.apache.giraph.function.Supplier;
23 import org.apache.hadoop.io.Writable;
24 import org.apache.hadoop.io.WritableComparable;
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 public class Small2GraphInit<I extends WritableComparable,
40 V extends Writable, E extends Writable>
41 implements TestGraphModifier<I, V, E> {
42 private final Supplier<E> edgeSupplier;
43
44 public Small2GraphInit() {
45 this(null);
46 }
47
48 public Small2GraphInit(Supplier<E> edgeSupplier) {
49 this.edgeSupplier = edgeSupplier;
50 }
51
52 @Override
53 public void modifyGraph(NumericTestGraph<I, V, E> graph) {
54 graph.addSymmetricEdge(0, 1, createEdgeValue());
55 graph.addSymmetricEdge(0, 2, createEdgeValue());
56 graph.addSymmetricEdge(1, 2, createEdgeValue());
57 graph.addSymmetricEdge(3, 4, createEdgeValue());
58 graph.addSymmetricEdge(3, 5, createEdgeValue());
59 graph.addSymmetricEdge(4, 5, createEdgeValue());
60
61 graph.addVertex(6);
62 }
63
64 private E createEdgeValue() {
65 return edgeSupplier != null ? edgeSupplier.get() : null;
66 }
67 }
68