class OverrideConfigFilter implements ConfigFilter {

    @Override
    public String apply(Config.Key key, String stringValue) {
        List<Map.Entry<Predicate<Config.Key>, String>> overrideValues = overrideValuesSupplier.get();
        if (overrideValues != null) {
            for (Map.Entry<Predicate<Config.Key>, String> entry : overrideValues) {
                if (entry.getKey().test(key)) {
                    return entry.getValue();
                }
            }
        }
        return stringValue;
    }

    public  OverrideConfigFilter(Supplier<List<Map.Entry<Predicate<Config.Key>, String>>> overrideValuesSupplier);

}