com.alibaba.metrics.NOPMetricManager Maven / Gradle / Ivy
package com.alibaba.metrics;
import java.io.IOException;
import java.io.OutputStream;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.SortedMap;
import java.util.SortedSet;
import java.util.concurrent.Callable;
import java.util.concurrent.TimeUnit;
/**
* IMetricManager的空实现
*
* @author wangtao 2016-06-20 17:11.
*/
public class NOPMetricManager implements IMetricManager {
@Override
public Meter getMeter(String group, MetricName name) {
return NOP_METER;
}
@Override
public Counter getCounter(String group, MetricName name) {
return NOP_COUNTER;
}
@Override
public Histogram getHistogram(String group, MetricName name) {
return NOP_HISTOGRAM;
}
@Override
public Timer getTimer(String group, MetricName name) {
return NOP_TIMER;
}
@Override
public List listMetricGroups() {
return Collections.emptyList();
}
@Override
public boolean isEnabled() {
return true;
}
@Override
public void setEnabled(boolean enabled) {
}
@Override
public Map> listMetricNamesByGroup() {
return Collections.emptyMap();
}
@Override
public MetricRegistry getMetricRegistryByGroup(String group) {
return NOP_REGISTRY;
}
@Override
@SuppressWarnings("unchecked")
public SortedMap getGauges(String group, MetricFilter filter) {
return (SortedMap) Collections.emptyMap();
}
@Override
@SuppressWarnings("unchecked")
public SortedMap getCounters(String group, MetricFilter filter) {
return (SortedMap) Collections.emptyMap();
}
@Override
@SuppressWarnings("unchecked")
public SortedMap getHistograms(String group, MetricFilter filter) {
return (SortedMap) Collections.emptyMap();
}
@Override
@SuppressWarnings("unchecked")
public SortedMap getMeters(String group, MetricFilter filter) {
return (SortedMap) Collections.emptyMap();
}
@Override
@SuppressWarnings("unchecked")
public SortedMap getTimers(String group, MetricFilter filter) {
return (SortedMap) Collections.emptyMap();
}
@Override
public void register(String group, MetricName name, Metric metric) {
}
private static final Meter NOP_METER = new Meter() {
@Override
public void mark() {
}
@Override
public void mark(long n) {
}
@Override
public long getCount() {
return 0;
}
@Override
public double getFifteenMinuteRate() {
return 0;
}
@Override
public double getFiveMinuteRate() {
return 0;
}
@Override
public double getMeanRate() {
return 0;
}
@Override
public double getOneMinuteRate() {
return 0;
}
};
private static final Counter NOP_COUNTER = new Counter() {
@Override
public void inc() {
}
@Override
public void inc(long n) {
}
@Override
public void dec() {
}
@Override
public void dec(long n) {
}
@Override
public long getCount() {
return 0;
}
};
private static final Histogram NOP_HISTOGRAM = new Histogram() {
@Override
public void update(int value) {
}
@Override
public void update(long value) {
}
@Override
public long getCount() {
return 0;
}
@Override
public Snapshot getSnapshot() {
return NOP_SNAPSHOT;
}
};
private static final Timer.Context NOP_CONTEXT = new Timer.Context() {
@Override
public void close() throws IOException {
}
@Override
public long stop() {
return 0;
}
};
private static final Snapshot NOP_SNAPSHOT = new Snapshot() {
@Override
public double getValue(double quantile) {
return 0;
}
@Override
public long[] getValues() {
return new long[0];
}
@Override
public int size() {
return 0;
}
@Override
public double getMedian() {
return 0;
}
@Override
public double get75thPercentile() {
return 0;
}
@Override
public double get95thPercentile() {
return 0;
}
@Override
public double get98thPercentile() {
return 0;
}
@Override
public double get99thPercentile() {
return 0;
}
@Override
public double get999thPercentile() {
return 0;
}
@Override
public long getMax() {
return 0;
}
@Override
public double getMean() {
return 0;
}
@Override
public long getMin() {
return 0;
}
@Override
public double getStdDev() {
return 0;
}
@Override
public void dump(OutputStream output) {
}
};
private static final Timer NOP_TIMER = new Timer() {
@Override
public void update(long duration, TimeUnit unit) {
}
@Override
public T time(Callable event) throws Exception {
return event.call();
}
@Override
public Context time() {
return NOP_CONTEXT;
}
@Override
public long getCount() {
return 0;
}
@Override
public double getFifteenMinuteRate() {
return 0;
}
@Override
public double getFiveMinuteRate() {
return 0;
}
@Override
public double getMeanRate() {
return 0;
}
@Override
public double getOneMinuteRate() {
return 0;
}
@Override
public Snapshot getSnapshot() {
return NOP_SNAPSHOT;
}
};
private static final MetricRegistry NOP_REGISTRY = new MetricRegistry() {
@Override
public T register(String name, T metric) throws IllegalArgumentException {
return metric;
}
@Override
public T register(MetricName name, T metric) throws IllegalArgumentException {
return metric;
}
@Override
public void registerAll(MetricSet metrics) throws IllegalArgumentException {
}
@Override
public Counter counter(String name) {
return NOP_COUNTER;
}
@Override
public Counter counter(MetricName name) {
return NOP_COUNTER;
}
@Override
public Histogram histogram(MetricName name) {
return NOP_HISTOGRAM;
}
@Override
public Histogram histogram(String name) {
return NOP_HISTOGRAM;
}
@Override
public Meter meter(MetricName name) {
return null;
}
@Override
public Meter meter(String name) {
return NOP_METER;
}
@Override
public Timer timer(MetricName name) {
return NOP_TIMER;
}
@Override
public Timer timer(String name) {
return NOP_TIMER;
}
@Override
public boolean remove(MetricName name) {
return false;
}
@Override
public void removeMatching(MetricFilter filter) {
}
@Override
public void addListener(MetricRegistryListener listener) {
}
@Override
public void removeListener(MetricRegistryListener listener) {
}
@Override
public SortedSet getNames() {
return (SortedSet)Collections.emptySet();
}
@Override
public SortedMap getGauges() {
return (SortedMap)Collections.emptyMap();
}
@Override
public SortedMap getGauges(MetricFilter filter) {
return (SortedMap)Collections.emptyMap();
}
@Override
public SortedMap getCounters() {
return (SortedMap)Collections.emptyMap();
}
@Override
public SortedMap getCounters(MetricFilter filter) {
return (SortedMap)Collections.emptyMap();
}
@Override
public SortedMap getHistograms() {
return (SortedMap)Collections.emptyMap();
}
@Override
public SortedMap getHistograms(MetricFilter filter) {
return (SortedMap)Collections.emptyMap();
}
@Override
public SortedMap getMeters() {
return (SortedMap)Collections.emptyMap();
}
@Override
public SortedMap getMeters(MetricFilter filter) {
return (SortedMap)Collections.emptyMap();
}
@Override
public SortedMap getTimers() {
return (SortedMap)Collections.emptyMap();
}
@Override
public SortedMap getTimers(MetricFilter filter) {
return (SortedMap)Collections.emptyMap();
}
@Override
public SortedMap getMetrics(MetricFilter filter) {
return (SortedMap)Collections.emptyMap();
}
@Override
public Map getMetrics() {
return (SortedMap)Collections.emptyMap();
}
};
}