![JAR search and dependency download from the Maven repository](/logo.png)
com.ringcentral.platform.metrics.samples.SpecModsProvider Maven / Gradle / Ivy
package com.ringcentral.platform.metrics.samples;
import com.ringcentral.platform.metrics.MetricInstance;
import com.ringcentral.platform.metrics.infoProviders.PredicativeMetricNamedInfoProvider;
import com.ringcentral.platform.metrics.predicates.MetricNamedPredicate;
import com.ringcentral.platform.metrics.predicates.MetricNamedPredicateBuilder;
import java.util.List;
import java.util.function.Predicate;
public interface SpecModsProvider> extends PredicativeMetricNamedInfoProvider {
default MP addMod(MetricNamedPredicateBuilder> predicateBuilder, M mod) {
return addMod(null, predicateBuilder, mod);
}
/**
* @see #addInfo(String, MetricNamedPredicate, Object)
*/
default MP addMod(String key, MetricNamedPredicateBuilder> predicateBuilder, M mod) {
return addMod(key, predicateBuilder.build(), mod);
}
default MP addMod(MetricNamedPredicate predicate, M mod) {
return addMod(null, predicate, mod);
}
/**
* @see #addInfo(String, MetricNamedPredicate, Object)
*/
default MP addMod(String key, MetricNamedPredicate predicate, M mod) {
return addInfo(key, predicate, mod);
}
@Override
default MP addInfo(MetricNamedPredicate predicate, M info) {
return addInfo(null, predicate, info);
}
/**
* {@inheritDoc}
*/
@Override
MP addInfo(String key, MetricNamedPredicate predicate, M info);
/**
* @see #removeInfo(String)
*/
default MP removeMod(String key) {
return removeInfo(key);
}
/**
* {@inheritDoc}
*/
@Override
MP removeInfo(String key);
/**
* @see #removeInfos(Predicate)
*/
default MP removeMods(Predicate keyPredicate) {
return removeInfos(keyPredicate);
}
/**
* {@inheritDoc}
*/
@Override
MP removeInfos(Predicate keyPredicate);
default List modsFor(MetricInstance instance) {
return infosFor(instance);
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy