1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.giraph.graph;
20
21
22
23
24
25
26 public enum GraphFunctions {
27
28 UNKNOWN {
29 @Override public boolean isMaster() { return false; }
30 @Override public boolean isWorker() { return false; }
31 @Override public boolean isZooKeeper() { return false; }
32 },
33
34 MASTER_ONLY {
35 @Override public boolean isMaster() { return true; }
36 @Override public boolean isWorker() { return false; }
37 @Override public boolean isZooKeeper() { return false; }
38 },
39
40 MASTER_ZOOKEEPER_ONLY {
41 @Override public boolean isMaster() { return true; }
42 @Override public boolean isWorker() { return false; }
43 @Override public boolean isZooKeeper() { return true; }
44 },
45
46 WORKER_ONLY {
47 @Override public boolean isMaster() { return false; }
48 @Override public boolean isWorker() { return true; }
49 @Override public boolean isZooKeeper() { return false; }
50 },
51
52 ALL {
53 @Override public boolean isMaster() { return true; }
54 @Override public boolean isWorker() { return true; }
55 @Override public boolean isZooKeeper() { return true; }
56 },
57
58 ALL_EXCEPT_ZOOKEEPER {
59 @Override public boolean isMaster() { return true; }
60 @Override public boolean isWorker() { return true; }
61 @Override public boolean isZooKeeper() { return false; }
62 };
63
64
65
66
67
68
69 public abstract boolean isMaster();
70
71
72
73
74
75
76 public abstract boolean isWorker();
77
78
79
80
81
82
83 public abstract boolean isZooKeeper();
84
85 public boolean isKnown() {
86 return this != UNKNOWN;
87 }
88
89 public boolean isUnknown() {
90 return !isKnown();
91 }
92
93 public boolean isNotAWorker() {
94 return isKnown() && !isWorker();
95 }
96 }