-
Notifications
You must be signed in to change notification settings - Fork 222
/
NodeStatsByPeriodMap.java
37 lines (30 loc) · 1.07 KB
/
NodeStatsByPeriodMap.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
package org.jumpmind.symmetric.statistic;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class NodeStatsByPeriodMap extends AbstractStatsByPeriodMap<Map<String,ChannelStats>,ChannelStats> {
private static final long serialVersionUID = 1L;
public NodeStatsByPeriodMap(Date start, Date end, List<ChannelStats> list,
int periodSizeInMinutes) {
super(start, end, list, periodSizeInMinutes);
}
@Override
protected void add(Date periodStart, ChannelStats stat) {
Map<String, ChannelStats> map = get(periodStart);
if (map == null) {
map = new HashMap<String, ChannelStats>();
put(periodStart, map);
}
ChannelStats existing = map.get(stat.getNodeId());
if (existing == null) {
map.put(stat.getNodeId(), stat);
} else {
existing.add(stat);
}
}
@Override
protected void addBlank(Date periodStart) {
put(periodStart, new HashMap<String, ChannelStats>());
}
}