private void notifyListenerOfAddedMetric()

in core/src/main/java/com/spotify/metrics/core/SemanticMetricRegistry.java [501:521]


    private void notifyListenerOfAddedMetric(
        final SemanticMetricRegistryListener listener, final Metric metric, final MetricId name
    ) {
        if (metric instanceof Gauge) {
            listener.onGaugeAdded(name, (Gauge<?>) metric);
        } else if (metric instanceof Counter) {
            listener.onCounterAdded(name, (Counter) metric);
        } else if (metric instanceof Histogram) {
            listener.onHistogramAdded(name, (Histogram) metric);
        } else if (metric instanceof Meter) {
            listener.onMeterAdded(name, (Meter) metric);
        } else if (metric instanceof Timer) {
            listener.onTimerAdded(name, (Timer) metric);
        } else if (metric instanceof DerivingMeter) {
            listener.onDerivingMeterAdded(name, (DerivingMeter) metric);
        } else if (metric instanceof Distribution) {
            listener.onDistributionAdded(name, (Distribution) metric);
        } else {
            throw new IllegalArgumentException("Unknown metric type: " + metric.getClass());
        }
    }