private MetricID findMetricId()

in geronimo-metrics-common/src/main/java/org/apache/geronimo/microprofile/metrics/common/jaxrs/MetricsEndpoints.java [209:220]


    private MetricID findMetricId(final MetricRegistry metricRegistry, final Metadata value) {
        final Map<MetricID, Metric> metrics = metricRegistry.getMetrics();
        final MetricID directKey = RegistryImpl.class.isInstance(metricRegistry) && RegistryImpl.class.cast(metricRegistry).getGlobalTags().length > 0 ?
                new MetricID(value.getName(), RegistryImpl.class.cast(metricRegistry).getGlobalTags()) : new MetricID(value.getName());
        if (metrics.containsKey(directKey)) {
            return directKey;
        }
        return metrics.keySet().stream()
                .filter(it -> Objects.equals(it.getName(), value.getName()))
                .findFirst()
                .orElse(directKey);
    }