File tree Expand file tree Collapse file tree 2 files changed +20
-0
lines changed
src/main/java/com/arpnetworking/clusteraggregator/aggregation Expand file tree Collapse file tree 2 files changed +20
-0
lines changed Original file line number Diff line number Diff line change 26
26
import org .joda .time .DateTime ;
27
27
28
28
import java .util .Map ;
29
+ import java .util .Optional ;
29
30
30
31
/**
31
32
* Container class that holds aggregation pending records.
@@ -84,6 +85,10 @@ public boolean isSpecified(final Statistic statistic) {
84
85
return _specified .getOrDefault (statistic , false );
85
86
}
86
87
88
+ public Optional <DateTime > getMinRequestTime () {
89
+ return _minRequestTime ;
90
+ }
91
+
87
92
/**
88
93
* Add <code>AggregatedData</code> instance.
89
94
*
@@ -122,9 +127,23 @@ public void update(final CombinedMetricData datum) {
122
127
.log ();
123
128
}
124
129
}
130
+
131
+ updateMinRequestTime (datum );
132
+ }
133
+
134
+ private void updateMinRequestTime (final CombinedMetricData datum ) {
135
+ if (datum .getMinRequestTime ().isPresent ()) {
136
+ if (!_minRequestTime .isPresent ()) {
137
+ _minRequestTime = datum .getMinRequestTime ();
138
+ }
139
+ if (datum .getMinRequestTime ().get ().isBefore (_minRequestTime .get ())) {
140
+ _minRequestTime = datum .getMinRequestTime ();
141
+ }
142
+ }
125
143
}
126
144
127
145
private final DateTime _periodStart ;
146
+ private Optional <DateTime > _minRequestTime = Optional .empty ();
128
147
private final Map <Statistic , Calculator <?>> _data = Maps .newHashMap ();
129
148
private final Map <Statistic , Boolean > _specified = Maps .newHashMap ();
130
149
Original file line number Diff line number Diff line change @@ -172,6 +172,7 @@ public Receive createReceive() {
172
172
.setConditions (ImmutableList .of ())
173
173
.setPeriod (_period )
174
174
.setStart (bucket .getPeriodStart ())
175
+ .setMinRequestTime (bucket .getMinRequestTime ().orElse (null ))
175
176
.build ();
176
177
_emitter .tell (periodicData , getSelf ());
177
178
} else {
You can’t perform that action at this time.
0 commit comments