13
13
*/
14
14
package com .spotify .reaper .core ;
15
15
16
+ import com .spotify .reaper .service .RingRange ;
17
+
16
18
import org .joda .time .DateTime ;
17
19
18
20
import java .math .BigInteger ;
@@ -23,8 +25,7 @@ public class RepairSegment {
23
25
private final Integer repairCommandId ; // received when triggering repair in Cassandra
24
26
private final long columnFamilyId ;
25
27
private final long runId ;
26
- private final BigInteger startToken ; // open
27
- private final BigInteger endToken ; // closed
28
+ private final RingRange tokenRange ;
28
29
private final State state ;
29
30
private final DateTime startTime ;
30
31
private final DateTime endTime ;
@@ -45,12 +46,8 @@ public long getRunId() {
45
46
return runId ;
46
47
}
47
48
48
- public BigInteger getStartToken () {
49
- return startToken ;
50
- }
51
-
52
- public BigInteger getEndToken () {
53
- return endToken ;
49
+ public RingRange getTokenRange () {
50
+ return tokenRange ;
54
51
}
55
52
56
53
public State getState () {
@@ -68,12 +65,11 @@ public DateTime getEndTime() {
68
65
public static RepairSegment getCopy (RepairSegment origSegment , State newState ,
69
66
int newRepairCommandId ,
70
67
DateTime newStartTime , DateTime newEndTime ) {
71
- return new Builder (origSegment .getStartToken (),
72
- origSegment .getEndToken (), newState )
68
+ return new Builder (origSegment .getRunId (), origSegment .getTokenRange (), newState )
73
69
.columnFamilyId (origSegment .getColumnFamilyId ())
74
70
.repairCommandId (newRepairCommandId )
75
71
.startTime (newStartTime )
76
- .endTime (newEndTime ).build (origSegment .getRunId (), origSegment . getId ());
72
+ .endTime (newEndTime ).build (origSegment .getId ());
77
73
}
78
74
79
75
public enum State {
@@ -83,31 +79,30 @@ public enum State {
83
79
DONE
84
80
}
85
81
86
- private RepairSegment (Builder builder , long runId , long id ) {
82
+ private RepairSegment (Builder builder ,long id ) {
87
83
this .id = id ;
88
84
this .repairCommandId = builder .repairCommandId ;
89
85
this .columnFamilyId = builder .columnFamilyId ;
90
- this .runId = runId ;
91
- this .startToken = builder .startToken ;
92
- this .endToken = builder .endToken ;
86
+ this .runId = builder .runId ;
87
+ this .tokenRange = builder .tokenRange ;
93
88
this .state = builder .state ;
94
89
this .startTime = builder .startTime ;
95
90
this .endTime = builder .endTime ;
96
91
}
97
92
98
93
public static class Builder {
99
94
100
- public final BigInteger startToken ;
101
- public final BigInteger endToken ;
95
+ public final long runId ;
96
+ public final RingRange tokenRange ;
102
97
public final State state ;
103
98
private long columnFamilyId ;
104
99
private int repairCommandId ;
105
100
private DateTime startTime ;
106
101
private DateTime endTime ;
107
102
108
- public Builder (BigInteger startToken , BigInteger endToken , State state ) {
109
- this .startToken = startToken ;
110
- this .endToken = endToken ;
103
+ public Builder (long runId , RingRange tokenRange , State state ) {
104
+ this .runId = runId ;
105
+ this .tokenRange = tokenRange ;
111
106
this .state = state ;
112
107
}
113
108
@@ -131,19 +126,8 @@ public Builder endTime(DateTime endTime) {
131
126
return this ;
132
127
}
133
128
134
- public RepairSegment build (long runId , long id ) {
135
- return new RepairSegment (this , runId , id );
129
+ public RepairSegment build (long id ) {
130
+ return new RepairSegment (this , id );
136
131
}
137
-
138
- @ Override
139
- public String toString () {
140
- return String .format ("(%s,%s]" , startToken .toString (), endToken .toString ());
141
- }
142
- }
143
-
144
- public String toString () {
145
- return String .format ("(%s,%s]" ,
146
- startToken .toString (),
147
- endToken .toString ());
148
132
}
149
133
}
0 commit comments