|
|
@ -61,6 +61,11 @@ public class SlidingWindow<T> {
|
|
61
|
61
|
|
|
62
|
62
|
public void slide(long slideBy) {
|
|
63
|
63
|
windowStart += slideBy;
|
|
|
64
|
removeOldValues();
|
|
|
65
|
addNewValues();
|
|
|
66
|
}
|
|
|
67
|
|
|
|
68
|
private void removeOldValues() {
|
|
64
|
69
|
for (int i = 0; i < currentValues.size(); i++) {
|
|
65
|
70
|
long timestamp = currentTimestamps.get(i);
|
|
66
|
71
|
if (!isInWindow(timestamp)) {
|
|
|
@ -69,7 +74,9 @@ public class SlidingWindow<T> {
|
|
69
|
74
|
i -= 1;
|
|
70
|
75
|
}
|
|
71
|
76
|
}
|
|
|
77
|
}
|
|
72
|
78
|
|
|
|
79
|
private void addNewValues() {
|
|
73
|
80
|
for (int i = 0; i < newValues.size(); i++) {
|
|
74
|
81
|
long timestamp = newTimestamps.get(i);
|
|
75
|
82
|
if (isInWindow(timestamp)) {
|