Module org.elasticsearch.server
Package org.elasticsearch.index.store
Interface PluggableDirectoryMetricsHolder<M extends DirectoryMetrics.PluggableMetrics<M>>
- All Known Implementing Classes:
SingleThreadDirectoryMetricHolder,ThreadLocalDirectoryMetricHolder
public interface PluggableDirectoryMetricsHolder<M extends DirectoryMetrics.PluggableMetrics<M>>
-
Method Summary
Modifier and TypeMethodDescriptioninstance()Get the instance to record metrics on.static <M extends DirectoryMetrics.PluggableMetrics<M>>
PluggableDirectoryMetricsHolder<M> noop(M noopData) A utility to be used when no metrics are needed, intended to be used with a noop data implementation.Get an instance that can be used in a single threaded scope.
-
Method Details
-
noop
static <M extends DirectoryMetrics.PluggableMetrics<M>> PluggableDirectoryMetricsHolder<M> noop(M noopData) A utility to be used when no metrics are needed, intended to be used with a noop data implementation. -
instance
M instance()Get the instance to record metrics on.- Returns:
- the instance to record metrics on.
-
singleThreaded
PluggableDirectoryMetricsHolder<M> singleThreaded()Get an instance that can be used in a single threaded scope. This may be an instance optimized for single threaded use. It cannot be tied to a single thread, but can rely on external synchronization in case it is passed between threads.- Returns:
- single threaded instance.
-