package backtype.storm.metric.api; import backtype.storm.metric.api.IMetric; import java.util.HashMap; import java.util.Map; public class MultiCountMetric implements IMetric { Map<String, CountMetric> _value = new HashMap(); public MultiCountMetric() { } public CountMetric scope(String key) { CountMetric val = _value.get(key); if (val == null) { _value.put(key, val = new CountMetric()); } return val; } public Object getValueAndReset() { Map ret = new HashMap(); for (Map.Entry<String, CountMetric> e : _value.entrySet()) { ret.put(e.getKey(), e.getValue().getValueAndReset()); } return ret; } }