diff --git a/core-api/src/main/java/com/optimizely/ab/config/parser/DefaultConfigParser.java b/core-api/src/main/java/com/optimizely/ab/config/parser/DefaultConfigParser.java index 5e6bc84ef..ff1748cb0 100644 --- a/core-api/src/main/java/com/optimizely/ab/config/parser/DefaultConfigParser.java +++ b/core-api/src/main/java/com/optimizely/ab/config/parser/DefaultConfigParser.java @@ -38,6 +38,16 @@ public static ConfigParser getInstance() { } //======== Helper methods ========// + @FunctionalInterface + public interface ParserSupplier { + + /** + * Gets a result. + * + * @return a result + */ + ConfigParser get(); + } public enum ConfigParserSupplier { // WARNING THESE MUST REMAIN LAMBDAS!!! @@ -49,9 +59,9 @@ public enum ConfigParserSupplier { JSON_SIMPLE_CONFIG_PARSER("org.json.simple.JSONObject", () -> { return new JsonSimpleConfigParser(); }); private final String className; - private final Supplier supplier; + private final ParserSupplier supplier; - ConfigParserSupplier(String className, Supplier supplier) { + ConfigParserSupplier(String className, ParserSupplier supplier) { this.className = className; this.supplier = supplier; }