001package io.prometheus.client.exporter; 002 003import io.prometheus.client.Predicate; 004import io.prometheus.client.Supplier; 005 006/** 007 * For convenience, an implementation of a {@code Supplier<Predicate<String>>} that 008 * always returns the same sampleNameFilter. 009 */ 010public class SampleNameFilterSupplier implements Supplier<Predicate<String>> { 011 012 private final Predicate<String> sampleNameFilter; 013 014 public static SampleNameFilterSupplier of(Predicate<String> sampleNameFilter) { 015 return new SampleNameFilterSupplier(sampleNameFilter); 016 } 017 018 private SampleNameFilterSupplier(Predicate<String> sampleNameFilter) { 019 this.sampleNameFilter = sampleNameFilter; 020 } 021 022 @Override 023 public Predicate<String> get() { 024 return sampleNameFilter; 025 } 026}