com.github.marschall.micrometer.jfr.LongStatisticsFactory Maven / Gradle / Ivy
package com.github.marschall.micrometer.jfr;
@FunctionalInterface
interface LongStatisticsFactory {
LongStatistics newLongStatistics();
static LongStatisticsFactory newInstance(StatisticsMode mode) {
switch (mode) {
case NONE:
return () -> NullLongStatistics.INSTANCE;
case MEMORY:
return FieldUpdaterLongStatistics::new;
case CONCURRENCY:
return AtomicLongStatistics::new;
default:
throw new IncompatibleClassChangeError("unknown enum value: " + mode);
}
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy