diff --git a/docs/content/en/docs/documentation/configuration.md b/docs/content/en/docs/documentation/configuration.md index 34aa639525..c066ae95e0 100644 --- a/docs/content/en/docs/documentation/configuration.md +++ b/docs/content/en/docs/documentation/configuration.md @@ -184,12 +184,12 @@ Operator operator = new Operator(ConfigLoader.getDefault().applyConfigs()); ### Built-in Providers -| Provider | Source | Key mapping | -|---|---|---| -| `EnvVarConfigProvider` | `System.getenv()` | dots and hyphens → underscores, upper-cased (`josdk.check-crd` → `JOSDK_CHECK_CRD`) | -| `PropertiesConfigProvider` | `java.util.Properties` or `.properties` file | key used as-is; use `PropertiesConfigProvider.systemProperties()` to read Java system properties | -| `YamlConfigProvider` | YAML file | dot-separated key traverses nested mappings | -| `AgregatePriorityListConfigProvider` | ordered list of providers | first non-empty result wins | +| Provider | Source | Key mapping | +|---------------------------------------|---|---| +| `EnvVarConfigProvider` | `System.getenv()` | dots and hyphens → underscores, upper-cased (`josdk.check-crd` → `JOSDK_CHECK_CRD`) | +| `PropertiesConfigProvider` | `java.util.Properties` or `.properties` file | key used as-is; use `PropertiesConfigProvider.systemProperties()` to read Java system properties | +| `YamlConfigProvider` | YAML file | dot-separated key traverses nested mappings | +| `AggregatePriorityListConfigProvider` | ordered list of providers | first non-empty result wins | All string-based providers convert values to the target type automatically. Supported types: `String`, `Boolean`, `Integer`, `Long`, `Double`, `Duration` (ISO-8601, e.g. `PT30S`). @@ -244,11 +244,11 @@ Only keys that are actually present in the source are applied; everything else r programmatic or annotation-based default. You can also compose multiple sources with explicit priority using -`AgregatePriorityListConfigProvider`: +`AggregatePriorityListConfigProvider`: ```java var configLoader = new ConfigLoader( - new AgregatePriorityListConfigProvider(List.of( + new AggregatePriorityListConfigProvider(List.of( new EnvVarConfigProvider(), // highest priority PropertiesConfigProvider.systemProperties(), new YamlConfigProvider(Path.of("config/operator.yaml")) // lowest priority diff --git a/operator-framework/src/main/java/io/javaoperatorsdk/operator/config/loader/ConfigLoader.java b/operator-framework/src/main/java/io/javaoperatorsdk/operator/config/loader/ConfigLoader.java index d46a6116d7..d66b9139d4 100644 --- a/operator-framework/src/main/java/io/javaoperatorsdk/operator/config/loader/ConfigLoader.java +++ b/operator-framework/src/main/java/io/javaoperatorsdk/operator/config/loader/ConfigLoader.java @@ -27,7 +27,7 @@ import io.javaoperatorsdk.operator.api.config.ConfigurationServiceOverrider; import io.javaoperatorsdk.operator.api.config.ControllerConfigurationOverrider; import io.javaoperatorsdk.operator.api.config.LeaderElectionConfigurationBuilder; -import io.javaoperatorsdk.operator.config.loader.provider.AgregatePriorityListConfigProvider; +import io.javaoperatorsdk.operator.config.loader.provider.AggregatePriorityListConfigProvider; import io.javaoperatorsdk.operator.config.loader.provider.EnvVarConfigProvider; import io.javaoperatorsdk.operator.config.loader.provider.PropertiesConfigProvider; import io.javaoperatorsdk.operator.processing.event.rate.LinearRateLimiter; @@ -166,7 +166,7 @@ public static ConfigLoader getDefault() { public ConfigLoader() { this( - new AgregatePriorityListConfigProvider( + new AggregatePriorityListConfigProvider( List.of(new EnvVarConfigProvider(), PropertiesConfigProvider.systemProperties())), DEFAULT_CONTROLLER_KEY_PREFIX, DEFAULT_OPERATOR_KEY_PREFIX); diff --git a/operator-framework/src/main/java/io/javaoperatorsdk/operator/config/loader/provider/AgregatePriorityListConfigProvider.java b/operator-framework/src/main/java/io/javaoperatorsdk/operator/config/loader/provider/AggregatePriorityListConfigProvider.java similarity index 89% rename from operator-framework/src/main/java/io/javaoperatorsdk/operator/config/loader/provider/AgregatePriorityListConfigProvider.java rename to operator-framework/src/main/java/io/javaoperatorsdk/operator/config/loader/provider/AggregatePriorityListConfigProvider.java index 5190156ce5..081e14302f 100644 --- a/operator-framework/src/main/java/io/javaoperatorsdk/operator/config/loader/provider/AgregatePriorityListConfigProvider.java +++ b/operator-framework/src/main/java/io/javaoperatorsdk/operator/config/loader/provider/AggregatePriorityListConfigProvider.java @@ -24,11 +24,11 @@ * A {@link ConfigProvider} that delegates to an ordered list of providers. Providers are queried in * list order; the first non-empty result wins. */ -public class AgregatePriorityListConfigProvider implements ConfigProvider { +public class AggregatePriorityListConfigProvider implements ConfigProvider { private final List providers; - public AgregatePriorityListConfigProvider(List providers) { + public AggregatePriorityListConfigProvider(List providers) { this.providers = List.copyOf(providers); } diff --git a/operator-framework/src/test/java/io/javaoperatorsdk/operator/config/loader/ConfigLoaderTest.java b/operator-framework/src/test/java/io/javaoperatorsdk/operator/config/loader/ConfigLoaderTest.java index 1fc1ebe98f..1144e1c4f3 100644 --- a/operator-framework/src/test/java/io/javaoperatorsdk/operator/config/loader/ConfigLoaderTest.java +++ b/operator-framework/src/test/java/io/javaoperatorsdk/operator/config/loader/ConfigLoaderTest.java @@ -240,7 +240,7 @@ public Optional getValue(String key, Class type) { // -- binding coverage ------------------------------------------------------- /** - * Supported scalar types that AgregatePriorityListConfigProvider can parse from a string. Every + * Supported scalar types that AggregatePriorityListConfigProvider can parse from a string. Every * binding's type must be one of these. */ private static final Set> SUPPORTED_TYPES = diff --git a/operator-framework/src/test/java/io/javaoperatorsdk/operator/config/loader/provider/PriorityListConfigProviderTest.java b/operator-framework/src/test/java/io/javaoperatorsdk/operator/config/loader/provider/PriorityListConfigProviderTest.java index ad2a332868..40989ebcb9 100644 --- a/operator-framework/src/test/java/io/javaoperatorsdk/operator/config/loader/provider/PriorityListConfigProviderTest.java +++ b/operator-framework/src/test/java/io/javaoperatorsdk/operator/config/loader/provider/PriorityListConfigProviderTest.java @@ -35,7 +35,7 @@ private static PropertiesConfigProvider propsProvider(String key, String value) @Test void returnsEmptyWhenAllProvidersReturnEmpty() { var provider = - new AgregatePriorityListConfigProvider( + new AggregatePriorityListConfigProvider( List.of(new EnvVarConfigProvider(k -> null), propsProvider(null, null))); assertThat(provider.getValue("josdk.no.such.key", String.class)).isEmpty(); } @@ -43,7 +43,7 @@ void returnsEmptyWhenAllProvidersReturnEmpty() { @Test void firstProviderWins() { var provider = - new AgregatePriorityListConfigProvider( + new AggregatePriorityListConfigProvider( List.of( new EnvVarConfigProvider(k -> k.equals("JOSDK_TEST_KEY") ? "first" : null), propsProvider("josdk.test.key", "second"))); @@ -53,7 +53,7 @@ void firstProviderWins() { @Test void fallsBackToLaterProviderWhenEarlierReturnsEmpty() { var provider = - new AgregatePriorityListConfigProvider( + new AggregatePriorityListConfigProvider( List.of( new EnvVarConfigProvider(k -> null), propsProvider("josdk.test.key", "from-second"))); @@ -66,7 +66,7 @@ void respectsOrderWithThreeProviders() { var second = propsProvider("josdk.test.key", "from-second"); var third = new EnvVarConfigProvider(k -> k.equals("JOSDK_TEST_KEY") ? "from-third" : null); - var provider = new AgregatePriorityListConfigProvider(List.of(first, second, third)); + var provider = new AggregatePriorityListConfigProvider(List.of(first, second, third)); assertThat(provider.getValue("josdk.test.key", String.class)).hasValue("from-second"); } }