This is an automated email from the ASF dual-hosted git repository. davsclaus pushed a commit to branch main in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push: new 75e2e5b2eb6 CAMEL-21321: camel-main - Allow configuring long ENV names using more human readable 75e2e5b2eb6 is described below commit 75e2e5b2eb63acc14df93c67e2181fef5d407fa3 Author: Claus Ibsen <claus.ib...@gmail.com> AuthorDate: Sat Oct 5 10:16:01 2024 +0200 CAMEL-21321: camel-main - Allow configuring long ENV names using more human readable --- .../properties/PropertiesComponentConfigurer.java | 34 ++++- .../component/properties/PropertiesComponent.java | 2 +- .../camel/impl/console/EventConsoleConfigurer.java | 20 ++- .../GarbageCollectorDevConsoleConfigurer.java | 19 ++- .../console/JavaSecurityDevConsoleConfigurer.java | 19 ++- .../impl/console/JvmDevConsoleConfigurer.java | 20 ++- .../impl/console/MemoryDevConsoleConfigurer.java | 19 ++- .../impl/console/ThreadDevConsoleConfigurer.java | 19 ++- .../impl/console/TraceDevConsoleConfigurer.java | 20 ++- .../apache/camel/impl/console/EventConsole.java | 2 +- .../impl/console/GarbageCollectorDevConsole.java | 2 +- .../camel/impl/console/JavaSecurityDevConsole.java | 2 +- .../apache/camel/impl/console/JvmDevConsole.java | 2 +- .../camel/impl/console/MemoryDevConsole.java | 2 +- .../camel/impl/console/ThreadDevConsole.java | 2 +- .../apache/camel/impl/console/TraceDevConsole.java | 2 +- .../AwsVaultConfigurationPropertiesConfigurer.java | 34 ++++- ...zureVaultConfigurationPropertiesConfigurer.java | 35 +++++- .../DebuggerConfigurationPropertiesConfigurer.java | 33 ++++- .../GcpVaultConfigurationPropertiesConfigurer.java | 30 ++++- ...corpVaultConfigurationPropertiesConfigurer.java | 27 +++- .../HealthConfigurationPropertiesConfigurer.java | 26 +++- ...ttpServerConfigurationPropertiesConfigurer.java | 41 +++++- ...etesVaultConfigurationPropertiesConfigurer.java | 25 +++- .../main/LraConfigurationPropertiesConfigurer.java | 23 +++- .../MainConfigurationPropertiesConfigurer.java | 140 ++++++++++++++++++++- .../MetricsConfigurationPropertiesConfigurer.java | 28 ++++- .../OtelConfigurationPropertiesConfigurer.java | 23 +++- .../RestConfigurationPropertiesConfigurer.java | 47 ++++++- ...ontrollerConfigurationPropertiesConfigurer.java | 30 ++++- .../main/SSLConfigurationPropertiesConfigurer.java | 37 +++++- ...hreadPoolConfigurationPropertiesConfigurer.java | 26 +++- ...olProfileConfigurationPropertiesConfigurer.java | 26 +++- .../TracerConfigurationPropertiesConfigurer.java | 32 ++++- .../main/AwsVaultConfigurationProperties.java | 2 +- .../main/AzureVaultConfigurationProperties.java | 2 +- .../main/DebuggerConfigurationProperties.java | 2 +- .../main/GcpVaultConfigurationProperties.java | 2 +- .../HashicorpVaultConfigurationProperties.java | 2 +- .../camel/main/HealthConfigurationProperties.java | 2 +- .../main/HttpServerConfigurationProperties.java | 2 +- .../KubernetesVaultConfigurationProperties.java | 2 +- .../camel/main/LraConfigurationProperties.java | 2 +- .../camel/main/MainConfigurationProperties.java | 2 +- .../java/org/apache/camel/main/MainHelper.java | 27 ++++ .../camel/main/MetricsConfigurationProperties.java | 2 +- .../camel/main/OtelConfigurationProperties.java | 2 +- .../camel/main/RestConfigurationProperties.java | 2 +- .../RouteControllerConfigurationProperties.java | 2 +- .../camel/main/SSLConfigurationProperties.java | 2 +- .../main/ThreadPoolConfigurationProperties.java | 2 +- .../ThreadPoolProfileConfigurationProperties.java | 2 +- .../camel/main/TracerConfigurationProperties.java | 2 +- .../java/org/apache/camel/util/StringHelper.java | 14 +++ .../org/apache/camel/util/StringHelperTest.java | 33 +++++ 55 files changed, 907 insertions(+), 52 deletions(-) diff --git a/core/camel-base/src/generated/java/org/apache/camel/component/properties/PropertiesComponentConfigurer.java b/core/camel-base/src/generated/java/org/apache/camel/component/properties/PropertiesComponentConfigurer.java index e5e87f12356..7af20e677ab 100644 --- a/core/camel-base/src/generated/java/org/apache/camel/component/properties/PropertiesComponentConfigurer.java +++ b/core/camel-base/src/generated/java/org/apache/camel/component/properties/PropertiesComponentConfigurer.java @@ -17,7 +17,30 @@ import org.apache.camel.component.properties.PropertiesComponent; */ @Generated("org.apache.camel.maven.packaging.GenerateConfigurerMojo") @SuppressWarnings("unchecked") -public class PropertiesComponentConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter { +public class PropertiesComponentConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter { + + private static final Map<String, Object> ALL_OPTIONS; + static { + Map<String, Object> map = new CaseInsensitiveMap(); + map.put("AutoDiscoverPropertiesSources", boolean.class); + map.put("CamelContext", org.apache.camel.CamelContext.class); + map.put("DefaultFallbackEnabled", boolean.class); + map.put("Encoding", java.lang.String.class); + map.put("EnvironmentVariableMode", int.class); + map.put("IgnoreMissingLocation", boolean.class); + map.put("IgnoreMissingProperty", boolean.class); + map.put("InitialProperties", java.util.Properties.class); + map.put("LocalProperties", java.util.Properties.class); + map.put("Location", java.lang.String.class); + map.put("Locations", java.util.List.class); + map.put("NestedPlaceholder", boolean.class); + map.put("OverrideProperties", java.util.Properties.class); + map.put("PropertiesFunctionResolver", org.apache.camel.component.properties.PropertiesFunctionResolver.class); + map.put("PropertiesParser", org.apache.camel.component.properties.PropertiesParser.class); + map.put("SystemPropertiesMode", int.class); + ALL_OPTIONS = map; + ConfigurerStrategy.addBootstrapConfigurerClearer(PropertiesComponentConfigurer::clearBootstrapConfigurers); + } @Override public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) { @@ -56,6 +79,15 @@ public class PropertiesComponentConfigurer extends org.apache.camel.support.comp } } + @Override + public Map<String, Object> getAllOptions(Object target) { + return ALL_OPTIONS; + } + + public static void clearBootstrapConfigurers() { + ALL_OPTIONS.clear(); + } + @Override public Class<?> getOptionType(String name, boolean ignoreCase) { switch (ignoreCase ? name.toLowerCase() : name) { diff --git a/core/camel-base/src/main/java/org/apache/camel/component/properties/PropertiesComponent.java b/core/camel-base/src/main/java/org/apache/camel/component/properties/PropertiesComponent.java index 698103884de..904402ff462 100644 --- a/core/camel-base/src/main/java/org/apache/camel/component/properties/PropertiesComponent.java +++ b/core/camel-base/src/main/java/org/apache/camel/component/properties/PropertiesComponent.java @@ -57,7 +57,7 @@ import org.slf4j.LoggerFactory; */ @ManagedResource(description = "Managed PropertiesComponent") @JdkService(org.apache.camel.spi.PropertiesComponent.FACTORY) -@Configurer(bootstrap = true) +@Configurer(bootstrap = true, extended = true) public class PropertiesComponent extends ServiceSupport implements org.apache.camel.spi.PropertiesComponent, StaticService, CamelContextAware { diff --git a/core/camel-console/src/generated/java/org/apache/camel/impl/console/EventConsoleConfigurer.java b/core/camel-console/src/generated/java/org/apache/camel/impl/console/EventConsoleConfigurer.java index c5ce51584e4..29737e6b804 100644 --- a/core/camel-console/src/generated/java/org/apache/camel/impl/console/EventConsoleConfigurer.java +++ b/core/camel-console/src/generated/java/org/apache/camel/impl/console/EventConsoleConfigurer.java @@ -17,7 +17,16 @@ import org.apache.camel.impl.console.EventConsole; */ @Generated("org.apache.camel.maven.packaging.GenerateConfigurerMojo") @SuppressWarnings("unchecked") -public class EventConsoleConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter { +public class EventConsoleConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter { + + private static final Map<String, Object> ALL_OPTIONS; + static { + Map<String, Object> map = new CaseInsensitiveMap(); + map.put("CamelContext", org.apache.camel.CamelContext.class); + map.put("Capacity", int.class); + ALL_OPTIONS = map; + ConfigurerStrategy.addBootstrapConfigurerClearer(EventConsoleConfigurer::clearBootstrapConfigurers); + } @Override public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) { @@ -30,6 +39,15 @@ public class EventConsoleConfigurer extends org.apache.camel.support.component.P } } + @Override + public Map<String, Object> getAllOptions(Object target) { + return ALL_OPTIONS; + } + + public static void clearBootstrapConfigurers() { + ALL_OPTIONS.clear(); + } + @Override public Class<?> getOptionType(String name, boolean ignoreCase) { switch (ignoreCase ? name.toLowerCase() : name) { diff --git a/core/camel-console/src/generated/java/org/apache/camel/impl/console/GarbageCollectorDevConsoleConfigurer.java b/core/camel-console/src/generated/java/org/apache/camel/impl/console/GarbageCollectorDevConsoleConfigurer.java index 8da678447ce..b468167b51f 100644 --- a/core/camel-console/src/generated/java/org/apache/camel/impl/console/GarbageCollectorDevConsoleConfigurer.java +++ b/core/camel-console/src/generated/java/org/apache/camel/impl/console/GarbageCollectorDevConsoleConfigurer.java @@ -17,7 +17,15 @@ import org.apache.camel.impl.console.GarbageCollectorDevConsole; */ @Generated("org.apache.camel.maven.packaging.GenerateConfigurerMojo") @SuppressWarnings("unchecked") -public class GarbageCollectorDevConsoleConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter { +public class GarbageCollectorDevConsoleConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter { + + private static final Map<String, Object> ALL_OPTIONS; + static { + Map<String, Object> map = new CaseInsensitiveMap(); + map.put("CamelContext", org.apache.camel.CamelContext.class); + ALL_OPTIONS = map; + ConfigurerStrategy.addBootstrapConfigurerClearer(GarbageCollectorDevConsoleConfigurer::clearBootstrapConfigurers); + } @Override public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) { @@ -29,6 +37,15 @@ public class GarbageCollectorDevConsoleConfigurer extends org.apache.camel.suppo } } + @Override + public Map<String, Object> getAllOptions(Object target) { + return ALL_OPTIONS; + } + + public static void clearBootstrapConfigurers() { + ALL_OPTIONS.clear(); + } + @Override public Class<?> getOptionType(String name, boolean ignoreCase) { switch (ignoreCase ? name.toLowerCase() : name) { diff --git a/core/camel-console/src/generated/java/org/apache/camel/impl/console/JavaSecurityDevConsoleConfigurer.java b/core/camel-console/src/generated/java/org/apache/camel/impl/console/JavaSecurityDevConsoleConfigurer.java index 5f8079b4efd..a4ae282a93b 100644 --- a/core/camel-console/src/generated/java/org/apache/camel/impl/console/JavaSecurityDevConsoleConfigurer.java +++ b/core/camel-console/src/generated/java/org/apache/camel/impl/console/JavaSecurityDevConsoleConfigurer.java @@ -17,7 +17,15 @@ import org.apache.camel.impl.console.JavaSecurityDevConsole; */ @Generated("org.apache.camel.maven.packaging.GenerateConfigurerMojo") @SuppressWarnings("unchecked") -public class JavaSecurityDevConsoleConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter { +public class JavaSecurityDevConsoleConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter { + + private static final Map<String, Object> ALL_OPTIONS; + static { + Map<String, Object> map = new CaseInsensitiveMap(); + map.put("CamelContext", org.apache.camel.CamelContext.class); + ALL_OPTIONS = map; + ConfigurerStrategy.addBootstrapConfigurerClearer(JavaSecurityDevConsoleConfigurer::clearBootstrapConfigurers); + } @Override public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) { @@ -29,6 +37,15 @@ public class JavaSecurityDevConsoleConfigurer extends org.apache.camel.support.c } } + @Override + public Map<String, Object> getAllOptions(Object target) { + return ALL_OPTIONS; + } + + public static void clearBootstrapConfigurers() { + ALL_OPTIONS.clear(); + } + @Override public Class<?> getOptionType(String name, boolean ignoreCase) { switch (ignoreCase ? name.toLowerCase() : name) { diff --git a/core/camel-console/src/generated/java/org/apache/camel/impl/console/JvmDevConsoleConfigurer.java b/core/camel-console/src/generated/java/org/apache/camel/impl/console/JvmDevConsoleConfigurer.java index 7f021ae7dab..4bfc135370b 100644 --- a/core/camel-console/src/generated/java/org/apache/camel/impl/console/JvmDevConsoleConfigurer.java +++ b/core/camel-console/src/generated/java/org/apache/camel/impl/console/JvmDevConsoleConfigurer.java @@ -17,7 +17,16 @@ import org.apache.camel.impl.console.JvmDevConsole; */ @Generated("org.apache.camel.maven.packaging.GenerateConfigurerMojo") @SuppressWarnings("unchecked") -public class JvmDevConsoleConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter { +public class JvmDevConsoleConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter { + + private static final Map<String, Object> ALL_OPTIONS; + static { + Map<String, Object> map = new CaseInsensitiveMap(); + map.put("CamelContext", org.apache.camel.CamelContext.class); + map.put("ShowClasspath", boolean.class); + ALL_OPTIONS = map; + ConfigurerStrategy.addBootstrapConfigurerClearer(JvmDevConsoleConfigurer::clearBootstrapConfigurers); + } @Override public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) { @@ -31,6 +40,15 @@ public class JvmDevConsoleConfigurer extends org.apache.camel.support.component. } } + @Override + public Map<String, Object> getAllOptions(Object target) { + return ALL_OPTIONS; + } + + public static void clearBootstrapConfigurers() { + ALL_OPTIONS.clear(); + } + @Override public Class<?> getOptionType(String name, boolean ignoreCase) { switch (ignoreCase ? name.toLowerCase() : name) { diff --git a/core/camel-console/src/generated/java/org/apache/camel/impl/console/MemoryDevConsoleConfigurer.java b/core/camel-console/src/generated/java/org/apache/camel/impl/console/MemoryDevConsoleConfigurer.java index 0446b9842ab..8758c352177 100644 --- a/core/camel-console/src/generated/java/org/apache/camel/impl/console/MemoryDevConsoleConfigurer.java +++ b/core/camel-console/src/generated/java/org/apache/camel/impl/console/MemoryDevConsoleConfigurer.java @@ -17,7 +17,15 @@ import org.apache.camel.impl.console.MemoryDevConsole; */ @Generated("org.apache.camel.maven.packaging.GenerateConfigurerMojo") @SuppressWarnings("unchecked") -public class MemoryDevConsoleConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter { +public class MemoryDevConsoleConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter { + + private static final Map<String, Object> ALL_OPTIONS; + static { + Map<String, Object> map = new CaseInsensitiveMap(); + map.put("CamelContext", org.apache.camel.CamelContext.class); + ALL_OPTIONS = map; + ConfigurerStrategy.addBootstrapConfigurerClearer(MemoryDevConsoleConfigurer::clearBootstrapConfigurers); + } @Override public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) { @@ -29,6 +37,15 @@ public class MemoryDevConsoleConfigurer extends org.apache.camel.support.compone } } + @Override + public Map<String, Object> getAllOptions(Object target) { + return ALL_OPTIONS; + } + + public static void clearBootstrapConfigurers() { + ALL_OPTIONS.clear(); + } + @Override public Class<?> getOptionType(String name, boolean ignoreCase) { switch (ignoreCase ? name.toLowerCase() : name) { diff --git a/core/camel-console/src/generated/java/org/apache/camel/impl/console/ThreadDevConsoleConfigurer.java b/core/camel-console/src/generated/java/org/apache/camel/impl/console/ThreadDevConsoleConfigurer.java index 0da735c23be..d6a2a472747 100644 --- a/core/camel-console/src/generated/java/org/apache/camel/impl/console/ThreadDevConsoleConfigurer.java +++ b/core/camel-console/src/generated/java/org/apache/camel/impl/console/ThreadDevConsoleConfigurer.java @@ -17,7 +17,15 @@ import org.apache.camel.impl.console.ThreadDevConsole; */ @Generated("org.apache.camel.maven.packaging.GenerateConfigurerMojo") @SuppressWarnings("unchecked") -public class ThreadDevConsoleConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter { +public class ThreadDevConsoleConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter { + + private static final Map<String, Object> ALL_OPTIONS; + static { + Map<String, Object> map = new CaseInsensitiveMap(); + map.put("CamelContext", org.apache.camel.CamelContext.class); + ALL_OPTIONS = map; + ConfigurerStrategy.addBootstrapConfigurerClearer(ThreadDevConsoleConfigurer::clearBootstrapConfigurers); + } @Override public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) { @@ -29,6 +37,15 @@ public class ThreadDevConsoleConfigurer extends org.apache.camel.support.compone } } + @Override + public Map<String, Object> getAllOptions(Object target) { + return ALL_OPTIONS; + } + + public static void clearBootstrapConfigurers() { + ALL_OPTIONS.clear(); + } + @Override public Class<?> getOptionType(String name, boolean ignoreCase) { switch (ignoreCase ? name.toLowerCase() : name) { diff --git a/core/camel-console/src/generated/java/org/apache/camel/impl/console/TraceDevConsoleConfigurer.java b/core/camel-console/src/generated/java/org/apache/camel/impl/console/TraceDevConsoleConfigurer.java index b51af401730..d6bbea035f9 100644 --- a/core/camel-console/src/generated/java/org/apache/camel/impl/console/TraceDevConsoleConfigurer.java +++ b/core/camel-console/src/generated/java/org/apache/camel/impl/console/TraceDevConsoleConfigurer.java @@ -17,7 +17,16 @@ import org.apache.camel.impl.console.TraceDevConsole; */ @Generated("org.apache.camel.maven.packaging.GenerateConfigurerMojo") @SuppressWarnings("unchecked") -public class TraceDevConsoleConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter { +public class TraceDevConsoleConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter { + + private static final Map<String, Object> ALL_OPTIONS; + static { + Map<String, Object> map = new CaseInsensitiveMap(); + map.put("CamelContext", org.apache.camel.CamelContext.class); + map.put("Capacity", int.class); + ALL_OPTIONS = map; + ConfigurerStrategy.addBootstrapConfigurerClearer(TraceDevConsoleConfigurer::clearBootstrapConfigurers); + } @Override public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) { @@ -30,6 +39,15 @@ public class TraceDevConsoleConfigurer extends org.apache.camel.support.componen } } + @Override + public Map<String, Object> getAllOptions(Object target) { + return ALL_OPTIONS; + } + + public static void clearBootstrapConfigurers() { + ALL_OPTIONS.clear(); + } + @Override public Class<?> getOptionType(String name, boolean ignoreCase) { switch (ignoreCase ? name.toLowerCase() : name) { diff --git a/core/camel-console/src/main/java/org/apache/camel/impl/console/EventConsole.java b/core/camel-console/src/main/java/org/apache/camel/impl/console/EventConsole.java index a12479dc095..f2ad01380af 100644 --- a/core/camel-console/src/main/java/org/apache/camel/impl/console/EventConsole.java +++ b/core/camel-console/src/main/java/org/apache/camel/impl/console/EventConsole.java @@ -32,7 +32,7 @@ import org.apache.camel.util.TimeUtils; import org.apache.camel.util.json.JsonObject; @DevConsole(name = "event", displayName = "Camel Events", description = "The most recent Camel events") -@Configurer(bootstrap = true) +@Configurer(bootstrap = true, extended = true) public class EventConsole extends AbstractDevConsole { @Metadata(defaultValue = "25", diff --git a/core/camel-console/src/main/java/org/apache/camel/impl/console/GarbageCollectorDevConsole.java b/core/camel-console/src/main/java/org/apache/camel/impl/console/GarbageCollectorDevConsole.java index 3a4252f7239..4b727fe98fa 100644 --- a/core/camel-console/src/main/java/org/apache/camel/impl/console/GarbageCollectorDevConsole.java +++ b/core/camel-console/src/main/java/org/apache/camel/impl/console/GarbageCollectorDevConsole.java @@ -29,7 +29,7 @@ import org.apache.camel.util.json.JsonArray; import org.apache.camel.util.json.JsonObject; @DevConsole(name = "gc", displayName = "Garbage Collector", description = "Displays Garbage Collector information") -@Configurer(bootstrap = true) +@Configurer(bootstrap = true, extended = true) public class GarbageCollectorDevConsole extends AbstractDevConsole { public GarbageCollectorDevConsole() { diff --git a/core/camel-console/src/main/java/org/apache/camel/impl/console/JavaSecurityDevConsole.java b/core/camel-console/src/main/java/org/apache/camel/impl/console/JavaSecurityDevConsole.java index 8feb6c7637b..68cc6b65d6e 100644 --- a/core/camel-console/src/main/java/org/apache/camel/impl/console/JavaSecurityDevConsole.java +++ b/core/camel-console/src/main/java/org/apache/camel/impl/console/JavaSecurityDevConsole.java @@ -28,7 +28,7 @@ import org.apache.camel.util.json.JsonArray; import org.apache.camel.util.json.JsonObject; @DevConsole(name = "java-security", description = "Displays Java Security (JSSE) information") -@Configurer(bootstrap = true) +@Configurer(bootstrap = true, extended = true) public class JavaSecurityDevConsole extends AbstractDevConsole { public JavaSecurityDevConsole() { diff --git a/core/camel-console/src/main/java/org/apache/camel/impl/console/JvmDevConsole.java b/core/camel-console/src/main/java/org/apache/camel/impl/console/JvmDevConsole.java index a89fa7c7e5b..8d1e851afd4 100644 --- a/core/camel-console/src/main/java/org/apache/camel/impl/console/JvmDevConsole.java +++ b/core/camel-console/src/main/java/org/apache/camel/impl/console/JvmDevConsole.java @@ -28,7 +28,7 @@ import org.apache.camel.util.TimeUtils; import org.apache.camel.util.json.JsonObject; @DevConsole(name = "jvm", displayName = "JVM", description = "Displays JVM information") -@Configurer(bootstrap = true) +@Configurer(bootstrap = true, extended = true) public class JvmDevConsole extends AbstractDevConsole { @Metadata(defaultValue = "true", description = "Show classpath information") diff --git a/core/camel-console/src/main/java/org/apache/camel/impl/console/MemoryDevConsole.java b/core/camel-console/src/main/java/org/apache/camel/impl/console/MemoryDevConsole.java index f02708dfb80..141bbbccee1 100644 --- a/core/camel-console/src/main/java/org/apache/camel/impl/console/MemoryDevConsole.java +++ b/core/camel-console/src/main/java/org/apache/camel/impl/console/MemoryDevConsole.java @@ -28,7 +28,7 @@ import org.apache.camel.util.json.JsonObject; import static org.apache.camel.util.UnitUtils.printUnitFromBytesDot; @DevConsole(name = "memory", displayName = "JVM Memory", description = "Displays JVM memory information") -@Configurer(bootstrap = true) +@Configurer(bootstrap = true, extended = true) public class MemoryDevConsole extends AbstractDevConsole { public MemoryDevConsole() { diff --git a/core/camel-console/src/main/java/org/apache/camel/impl/console/ThreadDevConsole.java b/core/camel-console/src/main/java/org/apache/camel/impl/console/ThreadDevConsole.java index 042ecb53a02..414d0535fb1 100644 --- a/core/camel-console/src/main/java/org/apache/camel/impl/console/ThreadDevConsole.java +++ b/core/camel-console/src/main/java/org/apache/camel/impl/console/ThreadDevConsole.java @@ -29,7 +29,7 @@ import org.apache.camel.util.json.JsonArray; import org.apache.camel.util.json.JsonObject; @DevConsole(name = "thread", description = "Displays JVM Threads information") -@Configurer(bootstrap = true) +@Configurer(bootstrap = true, extended = true) public class ThreadDevConsole extends AbstractDevConsole { public ThreadDevConsole() { diff --git a/core/camel-console/src/main/java/org/apache/camel/impl/console/TraceDevConsole.java b/core/camel-console/src/main/java/org/apache/camel/impl/console/TraceDevConsole.java index f34766bb255..a53c9ced4cb 100644 --- a/core/camel-console/src/main/java/org/apache/camel/impl/console/TraceDevConsole.java +++ b/core/camel-console/src/main/java/org/apache/camel/impl/console/TraceDevConsole.java @@ -30,7 +30,7 @@ import org.apache.camel.util.json.JsonArray; import org.apache.camel.util.json.JsonObject; @DevConsole(name = "trace", displayName = "Camel Tracing", description = "Trace routed messages") -@Configurer(bootstrap = true) +@Configurer(bootstrap = true, extended = true) public class TraceDevConsole extends AbstractDevConsole { @Metadata(defaultValue = "100", diff --git a/core/camel-main/src/generated/java/org/apache/camel/main/AwsVaultConfigurationPropertiesConfigurer.java b/core/camel-main/src/generated/java/org/apache/camel/main/AwsVaultConfigurationPropertiesConfigurer.java index 6c185838b30..5fe91949794 100644 --- a/core/camel-main/src/generated/java/org/apache/camel/main/AwsVaultConfigurationPropertiesConfigurer.java +++ b/core/camel-main/src/generated/java/org/apache/camel/main/AwsVaultConfigurationPropertiesConfigurer.java @@ -17,7 +17,30 @@ import org.apache.camel.main.AwsVaultConfigurationProperties; */ @Generated("org.apache.camel.maven.packaging.GenerateConfigurerMojo") @SuppressWarnings("unchecked") -public class AwsVaultConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter { +public class AwsVaultConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter { + + private static final Map<String, Object> ALL_OPTIONS; + static { + Map<String, Object> map = new CaseInsensitiveMap(); + map.put("AccessKey", java.lang.String.class); + map.put("AwsVaultConfiguration", org.apache.camel.vault.AwsVaultConfiguration.class); + map.put("AzureVaultConfiguration", org.apache.camel.vault.AzureVaultConfiguration.class); + map.put("DefaultCredentialsProvider", boolean.class); + map.put("GcpVaultConfiguration", org.apache.camel.vault.GcpVaultConfiguration.class); + map.put("HashicorpVaultConfiguration", org.apache.camel.vault.HashicorpVaultConfiguration.class); + map.put("KubernetesVaultConfiguration", org.apache.camel.vault.KubernetesVaultConfiguration.class); + map.put("ProfileCredentialsProvider", boolean.class); + map.put("ProfileName", java.lang.String.class); + map.put("RefreshEnabled", boolean.class); + map.put("RefreshPeriod", long.class); + map.put("Region", java.lang.String.class); + map.put("SecretKey", java.lang.String.class); + map.put("Secrets", java.lang.String.class); + map.put("SqsQueueUrl", java.lang.String.class); + map.put("UseSqsNotification", boolean.class); + ALL_OPTIONS = map; + ConfigurerStrategy.addBootstrapConfigurerClearer(AwsVaultConfigurationPropertiesConfigurer::clearBootstrapConfigurers); + } @Override public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) { @@ -57,6 +80,15 @@ public class AwsVaultConfigurationPropertiesConfigurer extends org.apache.camel. } } + @Override + public Map<String, Object> getAllOptions(Object target) { + return ALL_OPTIONS; + } + + public static void clearBootstrapConfigurers() { + ALL_OPTIONS.clear(); + } + @Override public Class<?> getOptionType(String name, boolean ignoreCase) { switch (ignoreCase ? name.toLowerCase() : name) { diff --git a/core/camel-main/src/generated/java/org/apache/camel/main/AzureVaultConfigurationPropertiesConfigurer.java b/core/camel-main/src/generated/java/org/apache/camel/main/AzureVaultConfigurationPropertiesConfigurer.java index f0165b5d13b..2a1c27fffc6 100644 --- a/core/camel-main/src/generated/java/org/apache/camel/main/AzureVaultConfigurationPropertiesConfigurer.java +++ b/core/camel-main/src/generated/java/org/apache/camel/main/AzureVaultConfigurationPropertiesConfigurer.java @@ -17,7 +17,31 @@ import org.apache.camel.main.AzureVaultConfigurationProperties; */ @Generated("org.apache.camel.maven.packaging.GenerateConfigurerMojo") @SuppressWarnings("unchecked") -public class AzureVaultConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter { +public class AzureVaultConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter { + + private static final Map<String, Object> ALL_OPTIONS; + static { + Map<String, Object> map = new CaseInsensitiveMap(); + map.put("AwsVaultConfiguration", org.apache.camel.vault.AwsVaultConfiguration.class); + map.put("AzureIdentityEnabled", boolean.class); + map.put("AzureVaultConfiguration", org.apache.camel.vault.AzureVaultConfiguration.class); + map.put("BlobAccessKey", java.lang.String.class); + map.put("BlobAccountName", java.lang.String.class); + map.put("BlobContainerName", java.lang.String.class); + map.put("ClientId", java.lang.String.class); + map.put("ClientSecret", java.lang.String.class); + map.put("EventhubConnectionString", java.lang.String.class); + map.put("GcpVaultConfiguration", org.apache.camel.vault.GcpVaultConfiguration.class); + map.put("HashicorpVaultConfiguration", org.apache.camel.vault.HashicorpVaultConfiguration.class); + map.put("KubernetesVaultConfiguration", org.apache.camel.vault.KubernetesVaultConfiguration.class); + map.put("RefreshEnabled", boolean.class); + map.put("RefreshPeriod", long.class); + map.put("Secrets", java.lang.String.class); + map.put("TenantId", java.lang.String.class); + map.put("VaultName", java.lang.String.class); + ALL_OPTIONS = map; + ConfigurerStrategy.addBootstrapConfigurerClearer(AzureVaultConfigurationPropertiesConfigurer::clearBootstrapConfigurers); + } @Override public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) { @@ -60,6 +84,15 @@ public class AzureVaultConfigurationPropertiesConfigurer extends org.apache.came } } + @Override + public Map<String, Object> getAllOptions(Object target) { + return ALL_OPTIONS; + } + + public static void clearBootstrapConfigurers() { + ALL_OPTIONS.clear(); + } + @Override public Class<?> getOptionType(String name, boolean ignoreCase) { switch (ignoreCase ? name.toLowerCase() : name) { diff --git a/core/camel-main/src/generated/java/org/apache/camel/main/DebuggerConfigurationPropertiesConfigurer.java b/core/camel-main/src/generated/java/org/apache/camel/main/DebuggerConfigurationPropertiesConfigurer.java index 820b997b6c0..d44ca5c0453 100644 --- a/core/camel-main/src/generated/java/org/apache/camel/main/DebuggerConfigurationPropertiesConfigurer.java +++ b/core/camel-main/src/generated/java/org/apache/camel/main/DebuggerConfigurationPropertiesConfigurer.java @@ -17,7 +17,29 @@ import org.apache.camel.main.DebuggerConfigurationProperties; */ @Generated("org.apache.camel.maven.packaging.GenerateConfigurerMojo") @SuppressWarnings("unchecked") -public class DebuggerConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter { +public class DebuggerConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter { + + private static final Map<String, Object> ALL_OPTIONS; + static { + Map<String, Object> map = new CaseInsensitiveMap(); + map.put("BodyIncludeFiles", boolean.class); + map.put("BodyIncludeStreams", boolean.class); + map.put("BodyMaxChars", int.class); + map.put("Breakpoints", java.lang.String.class); + map.put("Enabled", boolean.class); + map.put("FallbackTimeout", long.class); + map.put("IncludeException", boolean.class); + map.put("IncludeExchangeProperties", boolean.class); + map.put("IncludeExchangeVariables", boolean.class); + map.put("JmxConnectorEnabled", boolean.class); + map.put("JmxConnectorPort", int.class); + map.put("LoggingLevel", org.apache.camel.LoggingLevel.class); + map.put("SingleStepIncludeStartEnd", boolean.class); + map.put("Standby", boolean.class); + map.put("WaitForAttach", boolean.class); + ALL_OPTIONS = map; + ConfigurerStrategy.addBootstrapConfigurerClearer(DebuggerConfigurationPropertiesConfigurer::clearBootstrapConfigurers); + } @Override public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) { @@ -54,6 +76,15 @@ public class DebuggerConfigurationPropertiesConfigurer extends org.apache.camel. } } + @Override + public Map<String, Object> getAllOptions(Object target) { + return ALL_OPTIONS; + } + + public static void clearBootstrapConfigurers() { + ALL_OPTIONS.clear(); + } + @Override public Class<?> getOptionType(String name, boolean ignoreCase) { switch (ignoreCase ? name.toLowerCase() : name) { diff --git a/core/camel-main/src/generated/java/org/apache/camel/main/GcpVaultConfigurationPropertiesConfigurer.java b/core/camel-main/src/generated/java/org/apache/camel/main/GcpVaultConfigurationPropertiesConfigurer.java index e63f1953e0e..5084f68d9c4 100644 --- a/core/camel-main/src/generated/java/org/apache/camel/main/GcpVaultConfigurationPropertiesConfigurer.java +++ b/core/camel-main/src/generated/java/org/apache/camel/main/GcpVaultConfigurationPropertiesConfigurer.java @@ -17,7 +17,26 @@ import org.apache.camel.main.GcpVaultConfigurationProperties; */ @Generated("org.apache.camel.maven.packaging.GenerateConfigurerMojo") @SuppressWarnings("unchecked") -public class GcpVaultConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter { +public class GcpVaultConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter { + + private static final Map<String, Object> ALL_OPTIONS; + static { + Map<String, Object> map = new CaseInsensitiveMap(); + map.put("AwsVaultConfiguration", org.apache.camel.vault.AwsVaultConfiguration.class); + map.put("AzureVaultConfiguration", org.apache.camel.vault.AzureVaultConfiguration.class); + map.put("GcpVaultConfiguration", org.apache.camel.vault.GcpVaultConfiguration.class); + map.put("HashicorpVaultConfiguration", org.apache.camel.vault.HashicorpVaultConfiguration.class); + map.put("KubernetesVaultConfiguration", org.apache.camel.vault.KubernetesVaultConfiguration.class); + map.put("ProjectId", java.lang.String.class); + map.put("RefreshEnabled", boolean.class); + map.put("RefreshPeriod", long.class); + map.put("Secrets", java.lang.String.class); + map.put("ServiceAccountKey", java.lang.String.class); + map.put("SubscriptionName", java.lang.String.class); + map.put("UseDefaultInstance", boolean.class); + ALL_OPTIONS = map; + ConfigurerStrategy.addBootstrapConfigurerClearer(GcpVaultConfigurationPropertiesConfigurer::clearBootstrapConfigurers); + } @Override public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) { @@ -50,6 +69,15 @@ public class GcpVaultConfigurationPropertiesConfigurer extends org.apache.camel. } } + @Override + public Map<String, Object> getAllOptions(Object target) { + return ALL_OPTIONS; + } + + public static void clearBootstrapConfigurers() { + ALL_OPTIONS.clear(); + } + @Override public Class<?> getOptionType(String name, boolean ignoreCase) { switch (ignoreCase ? name.toLowerCase() : name) { diff --git a/core/camel-main/src/generated/java/org/apache/camel/main/HashicorpVaultConfigurationPropertiesConfigurer.java b/core/camel-main/src/generated/java/org/apache/camel/main/HashicorpVaultConfigurationPropertiesConfigurer.java index 18ceb9a6fa6..a26ad5bef73 100644 --- a/core/camel-main/src/generated/java/org/apache/camel/main/HashicorpVaultConfigurationPropertiesConfigurer.java +++ b/core/camel-main/src/generated/java/org/apache/camel/main/HashicorpVaultConfigurationPropertiesConfigurer.java @@ -17,7 +17,23 @@ import org.apache.camel.main.HashicorpVaultConfigurationProperties; */ @Generated("org.apache.camel.maven.packaging.GenerateConfigurerMojo") @SuppressWarnings("unchecked") -public class HashicorpVaultConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter { +public class HashicorpVaultConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter { + + private static final Map<String, Object> ALL_OPTIONS; + static { + Map<String, Object> map = new CaseInsensitiveMap(); + map.put("AwsVaultConfiguration", org.apache.camel.vault.AwsVaultConfiguration.class); + map.put("AzureVaultConfiguration", org.apache.camel.vault.AzureVaultConfiguration.class); + map.put("GcpVaultConfiguration", org.apache.camel.vault.GcpVaultConfiguration.class); + map.put("HashicorpVaultConfiguration", org.apache.camel.vault.HashicorpVaultConfiguration.class); + map.put("Host", java.lang.String.class); + map.put("KubernetesVaultConfiguration", org.apache.camel.vault.KubernetesVaultConfiguration.class); + map.put("Port", java.lang.String.class); + map.put("Scheme", java.lang.String.class); + map.put("Token", java.lang.String.class); + ALL_OPTIONS = map; + ConfigurerStrategy.addBootstrapConfigurerClearer(HashicorpVaultConfigurationPropertiesConfigurer::clearBootstrapConfigurers); + } @Override public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) { @@ -41,6 +57,15 @@ public class HashicorpVaultConfigurationPropertiesConfigurer extends org.apache. } } + @Override + public Map<String, Object> getAllOptions(Object target) { + return ALL_OPTIONS; + } + + public static void clearBootstrapConfigurers() { + ALL_OPTIONS.clear(); + } + @Override public Class<?> getOptionType(String name, boolean ignoreCase) { switch (ignoreCase ? name.toLowerCase() : name) { diff --git a/core/camel-main/src/generated/java/org/apache/camel/main/HealthConfigurationPropertiesConfigurer.java b/core/camel-main/src/generated/java/org/apache/camel/main/HealthConfigurationPropertiesConfigurer.java index df700870425..de4623f8058 100644 --- a/core/camel-main/src/generated/java/org/apache/camel/main/HealthConfigurationPropertiesConfigurer.java +++ b/core/camel-main/src/generated/java/org/apache/camel/main/HealthConfigurationPropertiesConfigurer.java @@ -17,7 +17,22 @@ import org.apache.camel.main.HealthConfigurationProperties; */ @Generated("org.apache.camel.maven.packaging.GenerateConfigurerMojo") @SuppressWarnings("unchecked") -public class HealthConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter { +public class HealthConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter { + + private static final Map<String, Object> ALL_OPTIONS; + static { + Map<String, Object> map = new CaseInsensitiveMap(); + map.put("ConsumersEnabled", java.lang.Boolean.class); + map.put("Enabled", java.lang.Boolean.class); + map.put("ExcludePattern", java.lang.String.class); + map.put("ExposureLevel", java.lang.String.class); + map.put("InitialState", java.lang.String.class); + map.put("ProducersEnabled", java.lang.Boolean.class); + map.put("RegistryEnabled", java.lang.Boolean.class); + map.put("RoutesEnabled", java.lang.Boolean.class); + ALL_OPTIONS = map; + ConfigurerStrategy.addBootstrapConfigurerClearer(HealthConfigurationPropertiesConfigurer::clearBootstrapConfigurers); + } @Override public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) { @@ -42,6 +57,15 @@ public class HealthConfigurationPropertiesConfigurer extends org.apache.camel.su } } + @Override + public Map<String, Object> getAllOptions(Object target) { + return ALL_OPTIONS; + } + + public static void clearBootstrapConfigurers() { + ALL_OPTIONS.clear(); + } + @Override public Class<?> getOptionType(String name, boolean ignoreCase) { switch (ignoreCase ? name.toLowerCase() : name) { diff --git a/core/camel-main/src/generated/java/org/apache/camel/main/HttpServerConfigurationPropertiesConfigurer.java b/core/camel-main/src/generated/java/org/apache/camel/main/HttpServerConfigurationPropertiesConfigurer.java index d7cc0cc53cd..aad80c15a39 100644 --- a/core/camel-main/src/generated/java/org/apache/camel/main/HttpServerConfigurationPropertiesConfigurer.java +++ b/core/camel-main/src/generated/java/org/apache/camel/main/HttpServerConfigurationPropertiesConfigurer.java @@ -17,7 +17,37 @@ import org.apache.camel.main.HttpServerConfigurationProperties; */ @Generated("org.apache.camel.maven.packaging.GenerateConfigurerMojo") @SuppressWarnings("unchecked") -public class HttpServerConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter { +public class HttpServerConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter { + + private static final Map<String, Object> ALL_OPTIONS; + static { + Map<String, Object> map = new CaseInsensitiveMap(); + map.put("AuthenticationEnabled", boolean.class); + map.put("AuthenticationPath", java.lang.String.class); + map.put("BasicPropertiesFile", java.lang.String.class); + map.put("DevConsoleEnabled", boolean.class); + map.put("DownloadEnabled", boolean.class); + map.put("Enabled", boolean.class); + map.put("HealthCheckEnabled", boolean.class); + map.put("Host", java.lang.String.class); + map.put("InfoEnabled", boolean.class); + map.put("JolokiaEnabled", boolean.class); + map.put("JwtKeystorePassword", java.lang.String.class); + map.put("JwtKeystorePath", java.lang.String.class); + map.put("JwtKeystoreType", java.lang.String.class); + map.put("MaxBodySize", java.lang.Long.class); + map.put("MetricsEnabled", boolean.class); + map.put("Path", java.lang.String.class); + map.put("Port", int.class); + map.put("SendEnabled", boolean.class); + map.put("StaticContextPath", java.lang.String.class); + map.put("StaticEnabled", boolean.class); + map.put("UploadEnabled", boolean.class); + map.put("UploadSourceDir", java.lang.String.class); + map.put("UseGlobalSslContextParameters", boolean.class); + ALL_OPTIONS = map; + ConfigurerStrategy.addBootstrapConfigurerClearer(HttpServerConfigurationPropertiesConfigurer::clearBootstrapConfigurers); + } @Override public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) { @@ -69,6 +99,15 @@ public class HttpServerConfigurationPropertiesConfigurer extends org.apache.came } } + @Override + public Map<String, Object> getAllOptions(Object target) { + return ALL_OPTIONS; + } + + public static void clearBootstrapConfigurers() { + ALL_OPTIONS.clear(); + } + @Override public Class<?> getOptionType(String name, boolean ignoreCase) { switch (ignoreCase ? name.toLowerCase() : name) { diff --git a/core/camel-main/src/generated/java/org/apache/camel/main/KubernetesVaultConfigurationPropertiesConfigurer.java b/core/camel-main/src/generated/java/org/apache/camel/main/KubernetesVaultConfigurationPropertiesConfigurer.java index 7037581608c..7c22dba6433 100644 --- a/core/camel-main/src/generated/java/org/apache/camel/main/KubernetesVaultConfigurationPropertiesConfigurer.java +++ b/core/camel-main/src/generated/java/org/apache/camel/main/KubernetesVaultConfigurationPropertiesConfigurer.java @@ -17,7 +17,21 @@ import org.apache.camel.main.KubernetesVaultConfigurationProperties; */ @Generated("org.apache.camel.maven.packaging.GenerateConfigurerMojo") @SuppressWarnings("unchecked") -public class KubernetesVaultConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter { +public class KubernetesVaultConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter { + + private static final Map<String, Object> ALL_OPTIONS; + static { + Map<String, Object> map = new CaseInsensitiveMap(); + map.put("AwsVaultConfiguration", org.apache.camel.vault.AwsVaultConfiguration.class); + map.put("AzureVaultConfiguration", org.apache.camel.vault.AzureVaultConfiguration.class); + map.put("GcpVaultConfiguration", org.apache.camel.vault.GcpVaultConfiguration.class); + map.put("HashicorpVaultConfiguration", org.apache.camel.vault.HashicorpVaultConfiguration.class); + map.put("KubernetesVaultConfiguration", org.apache.camel.vault.KubernetesVaultConfiguration.class); + map.put("RefreshEnabled", boolean.class); + map.put("Secrets", java.lang.String.class); + ALL_OPTIONS = map; + ConfigurerStrategy.addBootstrapConfigurerClearer(KubernetesVaultConfigurationPropertiesConfigurer::clearBootstrapConfigurers); + } @Override public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) { @@ -40,6 +54,15 @@ public class KubernetesVaultConfigurationPropertiesConfigurer extends org.apache } } + @Override + public Map<String, Object> getAllOptions(Object target) { + return ALL_OPTIONS; + } + + public static void clearBootstrapConfigurers() { + ALL_OPTIONS.clear(); + } + @Override public Class<?> getOptionType(String name, boolean ignoreCase) { switch (ignoreCase ? name.toLowerCase() : name) { diff --git a/core/camel-main/src/generated/java/org/apache/camel/main/LraConfigurationPropertiesConfigurer.java b/core/camel-main/src/generated/java/org/apache/camel/main/LraConfigurationPropertiesConfigurer.java index 64c31b6f4f7..538e3e973e9 100644 --- a/core/camel-main/src/generated/java/org/apache/camel/main/LraConfigurationPropertiesConfigurer.java +++ b/core/camel-main/src/generated/java/org/apache/camel/main/LraConfigurationPropertiesConfigurer.java @@ -17,7 +17,19 @@ import org.apache.camel.main.LraConfigurationProperties; */ @Generated("org.apache.camel.maven.packaging.GenerateConfigurerMojo") @SuppressWarnings("unchecked") -public class LraConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter { +public class LraConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter { + + private static final Map<String, Object> ALL_OPTIONS; + static { + Map<String, Object> map = new CaseInsensitiveMap(); + map.put("CoordinatorContextPath", java.lang.String.class); + map.put("CoordinatorUrl", java.lang.String.class); + map.put("Enabled", boolean.class); + map.put("LocalParticipantContextPath", java.lang.String.class); + map.put("LocalParticipantUrl", java.lang.String.class); + ALL_OPTIONS = map; + ConfigurerStrategy.addBootstrapConfigurerClearer(LraConfigurationPropertiesConfigurer::clearBootstrapConfigurers); + } @Override public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) { @@ -36,6 +48,15 @@ public class LraConfigurationPropertiesConfigurer extends org.apache.camel.suppo } } + @Override + public Map<String, Object> getAllOptions(Object target) { + return ALL_OPTIONS; + } + + public static void clearBootstrapConfigurers() { + ALL_OPTIONS.clear(); + } + @Override public Class<?> getOptionType(String name, boolean ignoreCase) { switch (ignoreCase ? name.toLowerCase() : name) { diff --git a/core/camel-main/src/generated/java/org/apache/camel/main/MainConfigurationPropertiesConfigurer.java b/core/camel-main/src/generated/java/org/apache/camel/main/MainConfigurationPropertiesConfigurer.java index e8d03e9f36f..d554ec953ce 100644 --- a/core/camel-main/src/generated/java/org/apache/camel/main/MainConfigurationPropertiesConfigurer.java +++ b/core/camel-main/src/generated/java/org/apache/camel/main/MainConfigurationPropertiesConfigurer.java @@ -17,7 +17,136 @@ import org.apache.camel.main.MainConfigurationProperties; */ @Generated("org.apache.camel.maven.packaging.GenerateConfigurerMojo") @SuppressWarnings("unchecked") -public class MainConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter { +public class MainConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter { + + private static final Map<String, Object> ALL_OPTIONS; + static { + Map<String, Object> map = new CaseInsensitiveMap(); + map.put("AllowUseOriginalMessage", boolean.class); + map.put("AutoConfigurationEnabled", boolean.class); + map.put("AutoConfigurationEnvironmentVariablesEnabled", boolean.class); + map.put("AutoConfigurationFailFast", boolean.class); + map.put("AutoConfigurationLogSummary", boolean.class); + map.put("AutoConfigurationSystemPropertiesEnabled", boolean.class); + map.put("AutoStartup", boolean.class); + map.put("AutowiredEnabled", boolean.class); + map.put("BasePackageScan", java.lang.String.class); + map.put("BasePackageScanEnabled", boolean.class); + map.put("BeanIntrospectionExtendedStatistics", boolean.class); + map.put("BeanIntrospectionLoggingLevel", org.apache.camel.LoggingLevel.class); + map.put("BeanPostProcessorEnabled", boolean.class); + map.put("CamelEventsTimestampEnabled", boolean.class); + map.put("CaseInsensitiveHeaders", boolean.class); + map.put("CloudPropertiesLocation", java.lang.String.class); + map.put("CompileWorkDir", java.lang.String.class); + map.put("ConfigurationClasses", java.lang.String.class); + map.put("Configurations", java.util.List.class); + map.put("ConsumerTemplateCacheSize", int.class); + map.put("ContextReloadEnabled", boolean.class); + map.put("Description", java.lang.String.class); + map.put("DevConsoleEnabled", boolean.class); + map.put("DumpRoutes", java.lang.String.class); + map.put("DumpRoutesGeneratedIds", boolean.class); + map.put("DumpRoutesInclude", java.lang.String.class); + map.put("DumpRoutesLog", boolean.class); + map.put("DumpRoutesOutput", java.lang.String.class); + map.put("DumpRoutesResolvePlaceholders", boolean.class); + map.put("DumpRoutesUriAsParameters", boolean.class); + map.put("DurationHitExitCode", int.class); + map.put("DurationMaxAction", java.lang.String.class); + map.put("DurationMaxIdleSeconds", int.class); + map.put("DurationMaxMessages", int.class); + map.put("DurationMaxSeconds", int.class); + map.put("EndpointBridgeErrorHandler", boolean.class); + map.put("EndpointLazyStartProducer", boolean.class); + map.put("EndpointRuntimeStatisticsEnabled", boolean.class); + map.put("ExchangeFactory", java.lang.String.class); + map.put("ExchangeFactoryCapacity", int.class); + map.put("ExchangeFactoryStatisticsEnabled", boolean.class); + map.put("ExtraShutdownTimeout", int.class); + map.put("FileConfigurations", java.lang.String.class); + map.put("GlobalOptions", java.util.Map.class); + map.put("InflightRepositoryBrowseEnabled", boolean.class); + map.put("JavaRoutesExcludePattern", java.lang.String.class); + map.put("JavaRoutesIncludePattern", java.lang.String.class); + map.put("JmxEnabled", boolean.class); + map.put("JmxManagementMBeansLevel", org.apache.camel.ManagementMBeansLevel.class); + map.put("JmxManagementNamePattern", java.lang.String.class); + map.put("JmxManagementRegisterRoutesCreateByKamelet", boolean.class); + map.put("JmxManagementRegisterRoutesCreateByTemplate", boolean.class); + map.put("JmxManagementStatisticsLevel", org.apache.camel.ManagementStatisticsLevel.class); + map.put("JmxUpdateRouteEnabled", boolean.class); + map.put("Lightweight", boolean.class); + map.put("LoadHealthChecks", boolean.class); + map.put("LoadStatisticsEnabled", boolean.class); + map.put("LoadTypeConverters", boolean.class); + map.put("LogDebugMaxChars", int.class); + map.put("LogExhaustedMessageBody", boolean.class); + map.put("LogLanguage", java.lang.String.class); + map.put("LogMask", boolean.class); + map.put("LogName", java.lang.String.class); + map.put("MainListenerClasses", java.lang.String.class); + map.put("MainListeners", java.util.List.class); + map.put("MdcLoggingKeysPattern", java.lang.String.class); + map.put("MessageHistory", boolean.class); + map.put("Modeline", boolean.class); + map.put("Name", java.lang.String.class); + map.put("ProducerTemplateCacheSize", int.class); + map.put("Profile", java.lang.String.class); + map.put("RouteFilterExcludePattern", java.lang.String.class); + map.put("RouteFilterIncludePattern", java.lang.String.class); + map.put("RoutesBuilderClasses", java.lang.String.class); + map.put("RoutesBuilders", java.util.List.class); + map.put("RoutesCollectorEnabled", boolean.class); + map.put("RoutesCollectorIgnoreLoadingError", boolean.class); + map.put("RoutesExcludePattern", java.lang.String.class); + map.put("RoutesIncludePattern", java.lang.String.class); + map.put("RoutesReloadDirectory", java.lang.String.class); + map.put("RoutesReloadDirectoryRecursive", boolean.class); + map.put("RoutesReloadEnabled", boolean.class); + map.put("RoutesReloadPattern", java.lang.String.class); + map.put("RoutesReloadRemoveAllRoutes", boolean.class); + map.put("RoutesReloadRestartDuration", boolean.class); + map.put("ShutdownLogInflightExchangesOnTimeout", boolean.class); + map.put("ShutdownNowOnTimeout", boolean.class); + map.put("ShutdownRoutesInReverseOrder", boolean.class); + map.put("ShutdownSuppressLoggingOnTimeout", boolean.class); + map.put("ShutdownTimeout", int.class); + map.put("SourceLocationEnabled", boolean.class); + map.put("StartupRecorder", java.lang.String.class); + map.put("StartupRecorderDir", java.lang.String.class); + map.put("StartupRecorderDuration", long.class); + map.put("StartupRecorderMaxDepth", int.class); + map.put("StartupRecorderProfile", java.lang.String.class); + map.put("StartupRecorderRecording", boolean.class); + map.put("StartupSummaryLevel", org.apache.camel.StartupSummaryLevel.class); + map.put("StreamCachingAllowClasses", java.lang.String.class); + map.put("StreamCachingAnySpoolRules", boolean.class); + map.put("StreamCachingBufferSize", int.class); + map.put("StreamCachingDenyClasses", java.lang.String.class); + map.put("StreamCachingEnabled", boolean.class); + map.put("StreamCachingRemoveSpoolDirectoryWhenStopping", boolean.class); + map.put("StreamCachingSpoolCipher", java.lang.String.class); + map.put("StreamCachingSpoolDirectory", java.lang.String.class); + map.put("StreamCachingSpoolEnabled", boolean.class); + map.put("StreamCachingSpoolThreshold", long.class); + map.put("StreamCachingSpoolUsedHeapMemoryLimit", java.lang.String.class); + map.put("StreamCachingSpoolUsedHeapMemoryThreshold", int.class); + map.put("StreamCachingStatisticsEnabled", boolean.class); + map.put("ThreadNamePattern", java.lang.String.class); + map.put("Tracing", boolean.class); + map.put("TracingLoggingFormat", java.lang.String.class); + map.put("TracingPattern", java.lang.String.class); + map.put("TracingStandby", boolean.class); + map.put("TracingTemplates", boolean.class); + map.put("TypeConverterStatisticsEnabled", boolean.class); + map.put("UseBreadcrumb", boolean.class); + map.put("UseDataType", boolean.class); + map.put("UseMdcLogging", boolean.class); + map.put("UuidGenerator", java.lang.String.class); + ALL_OPTIONS = map; + ConfigurerStrategy.addBootstrapConfigurerClearer(MainConfigurationPropertiesConfigurer::clearBootstrapConfigurers); + } @Override public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) { @@ -264,6 +393,15 @@ public class MainConfigurationPropertiesConfigurer extends org.apache.camel.supp } } + @Override + public Map<String, Object> getAllOptions(Object target) { + return ALL_OPTIONS; + } + + public static void clearBootstrapConfigurers() { + ALL_OPTIONS.clear(); + } + @Override public Class<?> getOptionType(String name, boolean ignoreCase) { switch (ignoreCase ? name.toLowerCase() : name) { diff --git a/core/camel-main/src/generated/java/org/apache/camel/main/MetricsConfigurationPropertiesConfigurer.java b/core/camel-main/src/generated/java/org/apache/camel/main/MetricsConfigurationPropertiesConfigurer.java index a17ae8993be..96d224cc6fc 100644 --- a/core/camel-main/src/generated/java/org/apache/camel/main/MetricsConfigurationPropertiesConfigurer.java +++ b/core/camel-main/src/generated/java/org/apache/camel/main/MetricsConfigurationPropertiesConfigurer.java @@ -17,7 +17,24 @@ import org.apache.camel.main.MetricsConfigurationProperties; */ @Generated("org.apache.camel.maven.packaging.GenerateConfigurerMojo") @SuppressWarnings("unchecked") -public class MetricsConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter { +public class MetricsConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter { + + private static final Map<String, Object> ALL_OPTIONS; + static { + Map<String, Object> map = new CaseInsensitiveMap(); + map.put("Binders", java.lang.String.class); + map.put("ClearOnReload", boolean.class); + map.put("EnableExchangeEventNotifier", boolean.class); + map.put("EnableMessageHistory", boolean.class); + map.put("EnableRouteEventNotifier", boolean.class); + map.put("EnableRoutePolicy", boolean.class); + map.put("Enabled", boolean.class); + map.put("NamingStrategy", java.lang.String.class); + map.put("RoutePolicyLevel", java.lang.String.class); + map.put("TextFormatVersion", java.lang.String.class); + ALL_OPTIONS = map; + ConfigurerStrategy.addBootstrapConfigurerClearer(MetricsConfigurationPropertiesConfigurer::clearBootstrapConfigurers); + } @Override public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) { @@ -45,6 +62,15 @@ public class MetricsConfigurationPropertiesConfigurer extends org.apache.camel.s } } + @Override + public Map<String, Object> getAllOptions(Object target) { + return ALL_OPTIONS; + } + + public static void clearBootstrapConfigurers() { + ALL_OPTIONS.clear(); + } + @Override public Class<?> getOptionType(String name, boolean ignoreCase) { switch (ignoreCase ? name.toLowerCase() : name) { diff --git a/core/camel-main/src/generated/java/org/apache/camel/main/OtelConfigurationPropertiesConfigurer.java b/core/camel-main/src/generated/java/org/apache/camel/main/OtelConfigurationPropertiesConfigurer.java index 0c19a619add..abd47a797a9 100644 --- a/core/camel-main/src/generated/java/org/apache/camel/main/OtelConfigurationPropertiesConfigurer.java +++ b/core/camel-main/src/generated/java/org/apache/camel/main/OtelConfigurationPropertiesConfigurer.java @@ -17,7 +17,19 @@ import org.apache.camel.main.OtelConfigurationProperties; */ @Generated("org.apache.camel.maven.packaging.GenerateConfigurerMojo") @SuppressWarnings("unchecked") -public class OtelConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter { +public class OtelConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter { + + private static final Map<String, Object> ALL_OPTIONS; + static { + Map<String, Object> map = new CaseInsensitiveMap(); + map.put("Enabled", boolean.class); + map.put("Encoding", boolean.class); + map.put("ExcludePatterns", java.lang.String.class); + map.put("InstrumentationName", java.lang.String.class); + map.put("TraceProcessors", boolean.class); + ALL_OPTIONS = map; + ConfigurerStrategy.addBootstrapConfigurerClearer(OtelConfigurationPropertiesConfigurer::clearBootstrapConfigurers); + } @Override public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) { @@ -35,6 +47,15 @@ public class OtelConfigurationPropertiesConfigurer extends org.apache.camel.supp } } + @Override + public Map<String, Object> getAllOptions(Object target) { + return ALL_OPTIONS; + } + + public static void clearBootstrapConfigurers() { + ALL_OPTIONS.clear(); + } + @Override public Class<?> getOptionType(String name, boolean ignoreCase) { switch (ignoreCase ? name.toLowerCase() : name) { diff --git a/core/camel-main/src/generated/java/org/apache/camel/main/RestConfigurationPropertiesConfigurer.java b/core/camel-main/src/generated/java/org/apache/camel/main/RestConfigurationPropertiesConfigurer.java index b11be207380..52416a8aeb8 100644 --- a/core/camel-main/src/generated/java/org/apache/camel/main/RestConfigurationPropertiesConfigurer.java +++ b/core/camel-main/src/generated/java/org/apache/camel/main/RestConfigurationPropertiesConfigurer.java @@ -17,7 +17,43 @@ import org.apache.camel.main.RestConfigurationProperties; */ @Generated("org.apache.camel.maven.packaging.GenerateConfigurerMojo") @SuppressWarnings("unchecked") -public class RestConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter { +public class RestConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter { + + private static final Map<String, Object> ALL_OPTIONS; + static { + Map<String, Object> map = new CaseInsensitiveMap(); + map.put("ApiComponent", java.lang.String.class); + map.put("ApiContextPath", java.lang.String.class); + map.put("ApiContextRouteId", java.lang.String.class); + map.put("ApiHost", java.lang.String.class); + map.put("ApiProperties", java.util.Map.class); + map.put("ApiVendorExtension", boolean.class); + map.put("BindingMode", java.lang.String.class); + map.put("BindingPackageScan", java.lang.String.class); + map.put("ClientRequestValidation", boolean.class); + map.put("Component", java.lang.String.class); + map.put("ComponentProperties", java.util.Map.class); + map.put("ConsumerProperties", java.util.Map.class); + map.put("ContextPath", java.lang.String.class); + map.put("CorsHeaders", java.util.Map.class); + map.put("DataFormatProperties", java.util.Map.class); + map.put("EnableCORS", boolean.class); + map.put("EnableNoContentResponse", boolean.class); + map.put("EndpointProperties", java.util.Map.class); + map.put("Host", java.lang.String.class); + map.put("HostNameResolver", java.lang.String.class); + map.put("InlineRoutes", boolean.class); + map.put("JsonDataFormat", java.lang.String.class); + map.put("Port", int.class); + map.put("ProducerApiDoc", java.lang.String.class); + map.put("ProducerComponent", java.lang.String.class); + map.put("Scheme", java.lang.String.class); + map.put("SkipBindingOnErrorCode", boolean.class); + map.put("UseXForwardHeaders", boolean.class); + map.put("XmlDataFormat", java.lang.String.class); + ALL_OPTIONS = map; + ConfigurerStrategy.addBootstrapConfigurerClearer(RestConfigurationPropertiesConfigurer::clearBootstrapConfigurers); + } @Override public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) { @@ -81,6 +117,15 @@ public class RestConfigurationPropertiesConfigurer extends org.apache.camel.supp } } + @Override + public Map<String, Object> getAllOptions(Object target) { + return ALL_OPTIONS; + } + + public static void clearBootstrapConfigurers() { + ALL_OPTIONS.clear(); + } + @Override public Class<?> getOptionType(String name, boolean ignoreCase) { switch (ignoreCase ? name.toLowerCase() : name) { diff --git a/core/camel-main/src/generated/java/org/apache/camel/main/RouteControllerConfigurationPropertiesConfigurer.java b/core/camel-main/src/generated/java/org/apache/camel/main/RouteControllerConfigurationPropertiesConfigurer.java index 75da765d03e..fd504981e20 100644 --- a/core/camel-main/src/generated/java/org/apache/camel/main/RouteControllerConfigurationPropertiesConfigurer.java +++ b/core/camel-main/src/generated/java/org/apache/camel/main/RouteControllerConfigurationPropertiesConfigurer.java @@ -17,7 +17,26 @@ import org.apache.camel.main.RouteControllerConfigurationProperties; */ @Generated("org.apache.camel.maven.packaging.GenerateConfigurerMojo") @SuppressWarnings("unchecked") -public class RouteControllerConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter { +public class RouteControllerConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter { + + private static final Map<String, Object> ALL_OPTIONS; + static { + Map<String, Object> map = new CaseInsensitiveMap(); + map.put("BackOffDelay", long.class); + map.put("BackOffMaxAttempts", long.class); + map.put("BackOffMaxDelay", long.class); + map.put("BackOffMaxElapsedTime", long.class); + map.put("BackOffMultiplier", double.class); + map.put("Enabled", boolean.class); + map.put("ExcludeRoutes", java.lang.String.class); + map.put("IncludeRoutes", java.lang.String.class); + map.put("InitialDelay", long.class); + map.put("ThreadPoolSize", int.class); + map.put("UnhealthyOnExhausted", boolean.class); + map.put("UnhealthyOnRestarting", boolean.class); + ALL_OPTIONS = map; + ConfigurerStrategy.addBootstrapConfigurerClearer(RouteControllerConfigurationPropertiesConfigurer::clearBootstrapConfigurers); + } @Override public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) { @@ -50,6 +69,15 @@ public class RouteControllerConfigurationPropertiesConfigurer extends org.apache } } + @Override + public Map<String, Object> getAllOptions(Object target) { + return ALL_OPTIONS; + } + + public static void clearBootstrapConfigurers() { + ALL_OPTIONS.clear(); + } + @Override public Class<?> getOptionType(String name, boolean ignoreCase) { switch (ignoreCase ? name.toLowerCase() : name) { diff --git a/core/camel-main/src/generated/java/org/apache/camel/main/SSLConfigurationPropertiesConfigurer.java b/core/camel-main/src/generated/java/org/apache/camel/main/SSLConfigurationPropertiesConfigurer.java index 2d7b065b25e..b2ea32ad8df 100644 --- a/core/camel-main/src/generated/java/org/apache/camel/main/SSLConfigurationPropertiesConfigurer.java +++ b/core/camel-main/src/generated/java/org/apache/camel/main/SSLConfigurationPropertiesConfigurer.java @@ -17,7 +17,33 @@ import org.apache.camel.main.SSLConfigurationProperties; */ @Generated("org.apache.camel.maven.packaging.GenerateConfigurerMojo") @SuppressWarnings("unchecked") -public class SSLConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter { +public class SSLConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter { + + private static final Map<String, Object> ALL_OPTIONS; + static { + Map<String, Object> map = new CaseInsensitiveMap(); + map.put("CertAlias", java.lang.String.class); + map.put("CipherSuites", java.lang.String.class); + map.put("CipherSuitesExclude", java.lang.String.class); + map.put("CipherSuitesInclude", java.lang.String.class); + map.put("ClientAuthentication", java.lang.String.class); + map.put("Enabled", boolean.class); + map.put("KeyManagerAlgorithm", java.lang.String.class); + map.put("KeyManagerProvider", java.lang.String.class); + map.put("KeyStore", java.lang.String.class); + map.put("KeyStoreProvider", java.lang.String.class); + map.put("KeyStoreType", java.lang.String.class); + map.put("KeystorePassword", java.lang.String.class); + map.put("Provider", java.lang.String.class); + map.put("SecureRandomAlgorithm", java.lang.String.class); + map.put("SecureRandomProvider", java.lang.String.class); + map.put("SecureSocketProtocol", java.lang.String.class); + map.put("SessionTimeout", int.class); + map.put("TrustStore", java.lang.String.class); + map.put("TrustStorePassword", java.lang.String.class); + ALL_OPTIONS = map; + ConfigurerStrategy.addBootstrapConfigurerClearer(SSLConfigurationPropertiesConfigurer::clearBootstrapConfigurers); + } @Override public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) { @@ -63,6 +89,15 @@ public class SSLConfigurationPropertiesConfigurer extends org.apache.camel.suppo } } + @Override + public Map<String, Object> getAllOptions(Object target) { + return ALL_OPTIONS; + } + + public static void clearBootstrapConfigurers() { + ALL_OPTIONS.clear(); + } + @Override public Class<?> getOptionType(String name, boolean ignoreCase) { switch (ignoreCase ? name.toLowerCase() : name) { diff --git a/core/camel-main/src/generated/java/org/apache/camel/main/ThreadPoolConfigurationPropertiesConfigurer.java b/core/camel-main/src/generated/java/org/apache/camel/main/ThreadPoolConfigurationPropertiesConfigurer.java index 4c6145f8baa..813e5e920cc 100644 --- a/core/camel-main/src/generated/java/org/apache/camel/main/ThreadPoolConfigurationPropertiesConfigurer.java +++ b/core/camel-main/src/generated/java/org/apache/camel/main/ThreadPoolConfigurationPropertiesConfigurer.java @@ -17,7 +17,22 @@ import org.apache.camel.main.ThreadPoolConfigurationProperties; */ @Generated("org.apache.camel.maven.packaging.GenerateConfigurerMojo") @SuppressWarnings("unchecked") -public class ThreadPoolConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter { +public class ThreadPoolConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter { + + private static final Map<String, Object> ALL_OPTIONS; + static { + Map<String, Object> map = new CaseInsensitiveMap(); + map.put("AllowCoreThreadTimeOut", java.lang.Boolean.class); + map.put("Config", java.util.Map.class); + map.put("KeepAliveTime", java.lang.Long.class); + map.put("MaxPoolSize", java.lang.Integer.class); + map.put("MaxQueueSize", java.lang.Integer.class); + map.put("PoolSize", java.lang.Integer.class); + map.put("RejectedPolicy", org.apache.camel.util.concurrent.ThreadPoolRejectedPolicy.class); + map.put("TimeUnit", java.util.concurrent.TimeUnit.class); + ALL_OPTIONS = map; + ConfigurerStrategy.addBootstrapConfigurerClearer(ThreadPoolConfigurationPropertiesConfigurer::clearBootstrapConfigurers); + } @Override public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) { @@ -42,6 +57,15 @@ public class ThreadPoolConfigurationPropertiesConfigurer extends org.apache.came } } + @Override + public Map<String, Object> getAllOptions(Object target) { + return ALL_OPTIONS; + } + + public static void clearBootstrapConfigurers() { + ALL_OPTIONS.clear(); + } + @Override public Class<?> getOptionType(String name, boolean ignoreCase) { switch (ignoreCase ? name.toLowerCase() : name) { diff --git a/core/camel-main/src/generated/java/org/apache/camel/main/ThreadPoolProfileConfigurationPropertiesConfigurer.java b/core/camel-main/src/generated/java/org/apache/camel/main/ThreadPoolProfileConfigurationPropertiesConfigurer.java index 4d96c13e033..f9d52a69c60 100644 --- a/core/camel-main/src/generated/java/org/apache/camel/main/ThreadPoolProfileConfigurationPropertiesConfigurer.java +++ b/core/camel-main/src/generated/java/org/apache/camel/main/ThreadPoolProfileConfigurationPropertiesConfigurer.java @@ -17,7 +17,22 @@ import org.apache.camel.main.ThreadPoolProfileConfigurationProperties; */ @Generated("org.apache.camel.maven.packaging.GenerateConfigurerMojo") @SuppressWarnings("unchecked") -public class ThreadPoolProfileConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter { +public class ThreadPoolProfileConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter { + + private static final Map<String, Object> ALL_OPTIONS; + static { + Map<String, Object> map = new CaseInsensitiveMap(); + map.put("AllowCoreThreadTimeOut", java.lang.Boolean.class); + map.put("Id", java.lang.String.class); + map.put("KeepAliveTime", java.lang.Long.class); + map.put("MaxPoolSize", java.lang.Integer.class); + map.put("MaxQueueSize", java.lang.Integer.class); + map.put("PoolSize", java.lang.Integer.class); + map.put("RejectedPolicy", org.apache.camel.util.concurrent.ThreadPoolRejectedPolicy.class); + map.put("TimeUnit", java.util.concurrent.TimeUnit.class); + ALL_OPTIONS = map; + ConfigurerStrategy.addBootstrapConfigurerClearer(ThreadPoolProfileConfigurationPropertiesConfigurer::clearBootstrapConfigurers); + } @Override public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) { @@ -42,6 +57,15 @@ public class ThreadPoolProfileConfigurationPropertiesConfigurer extends org.apac } } + @Override + public Map<String, Object> getAllOptions(Object target) { + return ALL_OPTIONS; + } + + public static void clearBootstrapConfigurers() { + ALL_OPTIONS.clear(); + } + @Override public Class<?> getOptionType(String name, boolean ignoreCase) { switch (ignoreCase ? name.toLowerCase() : name) { diff --git a/core/camel-main/src/generated/java/org/apache/camel/main/TracerConfigurationPropertiesConfigurer.java b/core/camel-main/src/generated/java/org/apache/camel/main/TracerConfigurationPropertiesConfigurer.java index c513918f7ae..88d6c24959f 100644 --- a/core/camel-main/src/generated/java/org/apache/camel/main/TracerConfigurationPropertiesConfigurer.java +++ b/core/camel-main/src/generated/java/org/apache/camel/main/TracerConfigurationPropertiesConfigurer.java @@ -17,7 +17,28 @@ import org.apache.camel.main.TracerConfigurationProperties; */ @Generated("org.apache.camel.maven.packaging.GenerateConfigurerMojo") @SuppressWarnings("unchecked") -public class TracerConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, PropertyConfigurerGetter { +public class TracerConfigurationPropertiesConfigurer extends org.apache.camel.support.component.PropertyConfigurerSupport implements GeneratedPropertyConfigurer, ExtendedPropertyConfigurerGetter { + + private static final Map<String, Object> ALL_OPTIONS; + static { + Map<String, Object> map = new CaseInsensitiveMap(); + map.put("BacklogSize", int.class); + map.put("BodyIncludeFiles", boolean.class); + map.put("BodyIncludeStreams", boolean.class); + map.put("BodyMaxChars", int.class); + map.put("Enabled", boolean.class); + map.put("IncludeException", boolean.class); + map.put("IncludeExchangeProperties", boolean.class); + map.put("IncludeExchangeVariables", boolean.class); + map.put("RemoveOnDump", boolean.class); + map.put("Standby", boolean.class); + map.put("TraceFilter", java.lang.String.class); + map.put("TracePattern", java.lang.String.class); + map.put("TraceRests", boolean.class); + map.put("TraceTemplates", boolean.class); + ALL_OPTIONS = map; + ConfigurerStrategy.addBootstrapConfigurerClearer(TracerConfigurationPropertiesConfigurer::clearBootstrapConfigurers); + } @Override public boolean configure(CamelContext camelContext, Object obj, String name, Object value, boolean ignoreCase) { @@ -53,6 +74,15 @@ public class TracerConfigurationPropertiesConfigurer extends org.apache.camel.su } } + @Override + public Map<String, Object> getAllOptions(Object target) { + return ALL_OPTIONS; + } + + public static void clearBootstrapConfigurers() { + ALL_OPTIONS.clear(); + } + @Override public Class<?> getOptionType(String name, boolean ignoreCase) { switch (ignoreCase ? name.toLowerCase() : name) { diff --git a/core/camel-main/src/main/java/org/apache/camel/main/AwsVaultConfigurationProperties.java b/core/camel-main/src/main/java/org/apache/camel/main/AwsVaultConfigurationProperties.java index 6684163502a..0ef8f299f14 100644 --- a/core/camel-main/src/main/java/org/apache/camel/main/AwsVaultConfigurationProperties.java +++ b/core/camel-main/src/main/java/org/apache/camel/main/AwsVaultConfigurationProperties.java @@ -23,7 +23,7 @@ import org.apache.camel.vault.AwsVaultConfiguration; /** * Configuration for access to AWS Secret. */ -@Configurer(bootstrap = true) +@Configurer(bootstrap = true, extended = true) public class AwsVaultConfigurationProperties extends AwsVaultConfiguration implements BootstrapCloseable { private MainConfigurationProperties parent; diff --git a/core/camel-main/src/main/java/org/apache/camel/main/AzureVaultConfigurationProperties.java b/core/camel-main/src/main/java/org/apache/camel/main/AzureVaultConfigurationProperties.java index 4a15b5168b2..d0d1723edb9 100644 --- a/core/camel-main/src/main/java/org/apache/camel/main/AzureVaultConfigurationProperties.java +++ b/core/camel-main/src/main/java/org/apache/camel/main/AzureVaultConfigurationProperties.java @@ -23,7 +23,7 @@ import org.apache.camel.vault.AzureVaultConfiguration; /** * Configuration for access to Azure Key Vault Secret. */ -@Configurer(bootstrap = true) +@Configurer(bootstrap = true, extended = true) public class AzureVaultConfigurationProperties extends AzureVaultConfiguration implements BootstrapCloseable { private MainConfigurationProperties parent; diff --git a/core/camel-main/src/main/java/org/apache/camel/main/DebuggerConfigurationProperties.java b/core/camel-main/src/main/java/org/apache/camel/main/DebuggerConfigurationProperties.java index 1655085b0e9..98632124d6b 100644 --- a/core/camel-main/src/main/java/org/apache/camel/main/DebuggerConfigurationProperties.java +++ b/core/camel-main/src/main/java/org/apache/camel/main/DebuggerConfigurationProperties.java @@ -24,7 +24,7 @@ import org.apache.camel.spi.Metadata; /** * Debugger configuration. */ -@Configurer(bootstrap = true) +@Configurer(bootstrap = true, extended = true) public class DebuggerConfigurationProperties implements BootstrapCloseable { private MainConfigurationProperties parent; diff --git a/core/camel-main/src/main/java/org/apache/camel/main/GcpVaultConfigurationProperties.java b/core/camel-main/src/main/java/org/apache/camel/main/GcpVaultConfigurationProperties.java index 5091de6ed88..708c4ff34aa 100644 --- a/core/camel-main/src/main/java/org/apache/camel/main/GcpVaultConfigurationProperties.java +++ b/core/camel-main/src/main/java/org/apache/camel/main/GcpVaultConfigurationProperties.java @@ -23,7 +23,7 @@ import org.apache.camel.vault.GcpVaultConfiguration; /** * Configuration for access to GCP Secret. */ -@Configurer(bootstrap = true) +@Configurer(bootstrap = true, extended = true) public class GcpVaultConfigurationProperties extends GcpVaultConfiguration implements BootstrapCloseable { private MainConfigurationProperties parent; diff --git a/core/camel-main/src/main/java/org/apache/camel/main/HashicorpVaultConfigurationProperties.java b/core/camel-main/src/main/java/org/apache/camel/main/HashicorpVaultConfigurationProperties.java index 04490af8409..1126f5e501d 100644 --- a/core/camel-main/src/main/java/org/apache/camel/main/HashicorpVaultConfigurationProperties.java +++ b/core/camel-main/src/main/java/org/apache/camel/main/HashicorpVaultConfigurationProperties.java @@ -23,7 +23,7 @@ import org.apache.camel.vault.HashicorpVaultConfiguration; /** * Configuration for access to AWS Secret. */ -@Configurer(bootstrap = true) +@Configurer(bootstrap = true, extended = true) public class HashicorpVaultConfigurationProperties extends HashicorpVaultConfiguration implements BootstrapCloseable { private MainConfigurationProperties parent; diff --git a/core/camel-main/src/main/java/org/apache/camel/main/HealthConfigurationProperties.java b/core/camel-main/src/main/java/org/apache/camel/main/HealthConfigurationProperties.java index e508f75454a..5c6bcde1700 100644 --- a/core/camel-main/src/main/java/org/apache/camel/main/HealthConfigurationProperties.java +++ b/core/camel-main/src/main/java/org/apache/camel/main/HealthConfigurationProperties.java @@ -23,7 +23,7 @@ import org.apache.camel.spi.Metadata; /** * Global configuration for Health Check */ -@Configurer(bootstrap = true) +@Configurer(bootstrap = true, extended = true) public class HealthConfigurationProperties implements BootstrapCloseable { private MainConfigurationProperties parent; diff --git a/core/camel-main/src/main/java/org/apache/camel/main/HttpServerConfigurationProperties.java b/core/camel-main/src/main/java/org/apache/camel/main/HttpServerConfigurationProperties.java index a9bb82c78d7..dcc30177cbc 100644 --- a/core/camel-main/src/main/java/org/apache/camel/main/HttpServerConfigurationProperties.java +++ b/core/camel-main/src/main/java/org/apache/camel/main/HttpServerConfigurationProperties.java @@ -23,7 +23,7 @@ import org.apache.camel.spi.Metadata; /** * Configuration for embedded HTTP server for standalone Camel applications (not Spring Boot / Quarkus). */ -@Configurer(bootstrap = true) +@Configurer(bootstrap = true, extended = true) public class HttpServerConfigurationProperties implements BootstrapCloseable { private MainConfigurationProperties parent; diff --git a/core/camel-main/src/main/java/org/apache/camel/main/KubernetesVaultConfigurationProperties.java b/core/camel-main/src/main/java/org/apache/camel/main/KubernetesVaultConfigurationProperties.java index 4bf65f3e619..f568b36bb13 100644 --- a/core/camel-main/src/main/java/org/apache/camel/main/KubernetesVaultConfigurationProperties.java +++ b/core/camel-main/src/main/java/org/apache/camel/main/KubernetesVaultConfigurationProperties.java @@ -23,7 +23,7 @@ import org.apache.camel.vault.KubernetesVaultConfiguration; /** * Configuration for access to AWS Secret. */ -@Configurer(bootstrap = true) +@Configurer(bootstrap = true, extended = true) public class KubernetesVaultConfigurationProperties extends KubernetesVaultConfiguration implements BootstrapCloseable { private MainConfigurationProperties parent; diff --git a/core/camel-main/src/main/java/org/apache/camel/main/LraConfigurationProperties.java b/core/camel-main/src/main/java/org/apache/camel/main/LraConfigurationProperties.java index 0246b724b0b..bc2e19e68cb 100644 --- a/core/camel-main/src/main/java/org/apache/camel/main/LraConfigurationProperties.java +++ b/core/camel-main/src/main/java/org/apache/camel/main/LraConfigurationProperties.java @@ -23,7 +23,7 @@ import org.apache.camel.spi.Metadata; /** * Global configuration for Saga LRA */ -@Configurer(bootstrap = true) +@Configurer(bootstrap = true, extended = true) public class LraConfigurationProperties implements BootstrapCloseable { private MainConfigurationProperties parent; diff --git a/core/camel-main/src/main/java/org/apache/camel/main/MainConfigurationProperties.java b/core/camel-main/src/main/java/org/apache/camel/main/MainConfigurationProperties.java index e3cf452be1d..4327c3f7133 100644 --- a/core/camel-main/src/main/java/org/apache/camel/main/MainConfigurationProperties.java +++ b/core/camel-main/src/main/java/org/apache/camel/main/MainConfigurationProperties.java @@ -31,7 +31,7 @@ import org.apache.camel.spi.Metadata; /** * Global configuration for Camel Main to configure context name, stream caching and other global configurations. */ -@Configurer(bootstrap = true) +@Configurer(bootstrap = true, extended = true) public class MainConfigurationProperties extends DefaultConfigurationProperties<MainConfigurationProperties> implements BootstrapCloseable { diff --git a/core/camel-main/src/main/java/org/apache/camel/main/MainHelper.java b/core/camel-main/src/main/java/org/apache/camel/main/MainHelper.java index d3fbddf00c4..61f994e899c 100644 --- a/core/camel-main/src/main/java/org/apache/camel/main/MainHelper.java +++ b/core/camel-main/src/main/java/org/apache/camel/main/MainHelper.java @@ -316,6 +316,26 @@ public final class MainHelper { configurer = PluginHelper.getBootstrapConfigurerResolver(context).resolvePropertyConfigurer(name, context); } + // we should be flexible in terms of property names as the user may type in names using different cases and + // with or without dots (especially from ENV variables) + if (configurer instanceof ExtendedPropertyConfigurerGetter ec) { + Map<String, Object> options = ec.getAllOptions(target); + for (String key : options.keySet()) { + // first char is upper case + key = Character.toLowerCase(key.charAt(0)) + key.substring(1); + String actualKey = key; + // convert camelCase to dot notation (via toDash) + key = StringHelper.camelCaseToDot(key); + if (properties.get(key) != null) { + Object value = properties.get(key); + String loc = properties.getLocation(key); + properties.remove(key); + properties.put(loc, actualKey, value); + LOG.debug("Adjusting property key: {} -> {}", key, actualKey); + } + } + } + try { // keep a reference of the original keys OrderedLocationProperties backup = new OrderedLocationProperties(); @@ -363,6 +383,13 @@ public final class MainHelper { "Error configuring property ({}) with name: {}) on bean: {} with value: {}. This exception is ignored as failIfNotSet=false.", key, e.getPropertyName(), target, e.getValue(), e); } + } catch (Exception e) { + if (failIfNotSet) { + throw e; + } else { + LOG.debug("Error configuring properties on bean: {}. This exception is ignored as failIfNotSet=false.", target, + e); + } } return rc; diff --git a/core/camel-main/src/main/java/org/apache/camel/main/MetricsConfigurationProperties.java b/core/camel-main/src/main/java/org/apache/camel/main/MetricsConfigurationProperties.java index 772d3242c17..0fd2bcd8e2b 100644 --- a/core/camel-main/src/main/java/org/apache/camel/main/MetricsConfigurationProperties.java +++ b/core/camel-main/src/main/java/org/apache/camel/main/MetricsConfigurationProperties.java @@ -23,7 +23,7 @@ import org.apache.camel.spi.Metadata; /** * Global configuration for Micrometer Metrics. */ -@Configurer(bootstrap = true) +@Configurer(bootstrap = true, extended = true) public class MetricsConfigurationProperties implements BootstrapCloseable { private MainConfigurationProperties parent; diff --git a/core/camel-main/src/main/java/org/apache/camel/main/OtelConfigurationProperties.java b/core/camel-main/src/main/java/org/apache/camel/main/OtelConfigurationProperties.java index 7848d9f9d5d..2ee9adfa779 100644 --- a/core/camel-main/src/main/java/org/apache/camel/main/OtelConfigurationProperties.java +++ b/core/camel-main/src/main/java/org/apache/camel/main/OtelConfigurationProperties.java @@ -23,7 +23,7 @@ import org.apache.camel.spi.Metadata; /** * Global configuration for OpenTelemetry */ -@Configurer(bootstrap = true) +@Configurer(bootstrap = true, extended = true) public class OtelConfigurationProperties implements BootstrapCloseable { private MainConfigurationProperties parent; diff --git a/core/camel-main/src/main/java/org/apache/camel/main/RestConfigurationProperties.java b/core/camel-main/src/main/java/org/apache/camel/main/RestConfigurationProperties.java index f1cc43e7982..078b60c2f6c 100644 --- a/core/camel-main/src/main/java/org/apache/camel/main/RestConfigurationProperties.java +++ b/core/camel-main/src/main/java/org/apache/camel/main/RestConfigurationProperties.java @@ -25,7 +25,7 @@ import org.apache.camel.spi.RestConfiguration; /** * Global configuration for Rest DSL. */ -@Configurer(bootstrap = true) +@Configurer(bootstrap = true, extended = true) public class RestConfigurationProperties extends RestConfiguration implements BootstrapCloseable { private MainConfigurationProperties parent; diff --git a/core/camel-main/src/main/java/org/apache/camel/main/RouteControllerConfigurationProperties.java b/core/camel-main/src/main/java/org/apache/camel/main/RouteControllerConfigurationProperties.java index d19a0576f81..4564e39235d 100644 --- a/core/camel-main/src/main/java/org/apache/camel/main/RouteControllerConfigurationProperties.java +++ b/core/camel-main/src/main/java/org/apache/camel/main/RouteControllerConfigurationProperties.java @@ -23,7 +23,7 @@ import org.apache.camel.spi.Metadata; /** * Route controller configuration. */ -@Configurer(bootstrap = true) +@Configurer(bootstrap = true, extended = true) public class RouteControllerConfigurationProperties implements BootstrapCloseable { private MainConfigurationProperties parent; diff --git a/core/camel-main/src/main/java/org/apache/camel/main/SSLConfigurationProperties.java b/core/camel-main/src/main/java/org/apache/camel/main/SSLConfigurationProperties.java index 675b620e6e6..d572db76b6d 100644 --- a/core/camel-main/src/main/java/org/apache/camel/main/SSLConfigurationProperties.java +++ b/core/camel-main/src/main/java/org/apache/camel/main/SSLConfigurationProperties.java @@ -23,7 +23,7 @@ import org.apache.camel.spi.Metadata; /** * Global configuration for SSL. */ -@Configurer(bootstrap = true) +@Configurer(bootstrap = true, extended = true) public class SSLConfigurationProperties implements BootstrapCloseable { private MainConfigurationProperties parent; diff --git a/core/camel-main/src/main/java/org/apache/camel/main/ThreadPoolConfigurationProperties.java b/core/camel-main/src/main/java/org/apache/camel/main/ThreadPoolConfigurationProperties.java index d37d140e120..9f007c5a1bb 100644 --- a/core/camel-main/src/main/java/org/apache/camel/main/ThreadPoolConfigurationProperties.java +++ b/core/camel-main/src/main/java/org/apache/camel/main/ThreadPoolConfigurationProperties.java @@ -27,7 +27,7 @@ import org.apache.camel.util.concurrent.ThreadPoolRejectedPolicy; /** * Global configuration for thread pools */ -@Configurer(bootstrap = true) +@Configurer(bootstrap = true, extended = true) public class ThreadPoolConfigurationProperties implements BootstrapCloseable { private MainConfigurationProperties parent; diff --git a/core/camel-main/src/main/java/org/apache/camel/main/ThreadPoolProfileConfigurationProperties.java b/core/camel-main/src/main/java/org/apache/camel/main/ThreadPoolProfileConfigurationProperties.java index 1b10da9384c..9da5344949e 100644 --- a/core/camel-main/src/main/java/org/apache/camel/main/ThreadPoolProfileConfigurationProperties.java +++ b/core/camel-main/src/main/java/org/apache/camel/main/ThreadPoolProfileConfigurationProperties.java @@ -21,7 +21,7 @@ import java.util.concurrent.TimeUnit; import org.apache.camel.spi.Configurer; import org.apache.camel.util.concurrent.ThreadPoolRejectedPolicy; -@Configurer(bootstrap = true) +@Configurer(bootstrap = true, extended = true) public class ThreadPoolProfileConfigurationProperties { private String id; diff --git a/core/camel-main/src/main/java/org/apache/camel/main/TracerConfigurationProperties.java b/core/camel-main/src/main/java/org/apache/camel/main/TracerConfigurationProperties.java index 0bf6aa2b37b..6d2eba264df 100644 --- a/core/camel-main/src/main/java/org/apache/camel/main/TracerConfigurationProperties.java +++ b/core/camel-main/src/main/java/org/apache/camel/main/TracerConfigurationProperties.java @@ -23,7 +23,7 @@ import org.apache.camel.spi.Metadata; /** * Tracer configuration. */ -@Configurer(bootstrap = true) +@Configurer(bootstrap = true, extended = true) public class TracerConfigurationProperties implements BootstrapCloseable { private MainConfigurationProperties parent; diff --git a/core/camel-util/src/main/java/org/apache/camel/util/StringHelper.java b/core/camel-util/src/main/java/org/apache/camel/util/StringHelper.java index f414f3d60af..47cd92f9af0 100644 --- a/core/camel-util/src/main/java/org/apache/camel/util/StringHelper.java +++ b/core/camel-util/src/main/java/org/apache/camel/util/StringHelper.java @@ -1185,6 +1185,20 @@ public final class StringHelper { return m.matches(); } + /** + * Converts the string from camel case into dot format (helloGreatWorld -> hello.great.world) + * + * @param text the string + * @return the string dot cased + */ + public static String camelCaseToDot(String text) { + if (text == null || text.isEmpty()) { + return text; + } + text = camelCaseToDash(text); + return text.replace('-', '.'); + } + /** * Converts the string from camel case into dash format (helloGreatWorld -> hello-great-world) * diff --git a/core/camel-util/src/test/java/org/apache/camel/util/StringHelperTest.java b/core/camel-util/src/test/java/org/apache/camel/util/StringHelperTest.java index 5e0a91b7689..d56cd78d280 100644 --- a/core/camel-util/src/test/java/org/apache/camel/util/StringHelperTest.java +++ b/core/camel-util/src/test/java/org/apache/camel/util/StringHelperTest.java @@ -63,6 +63,39 @@ public class StringHelperTest { assertEquals("enable-cors", camelCaseToDash("enableCORS")); } + @Test + public void testCamelCashToDot() { + assertNull(camelCaseToDot(null)); + assertEquals("", camelCaseToDot("")); + + assertEquals("hello.world", camelCaseToDot("HelloWorld")); + assertEquals("hello.big.world", camelCaseToDot("HelloBigWorld")); + assertEquals("hello.big.world", camelCaseToDot("Hello-bigWorld")); + assertEquals("my.id", camelCaseToDot("MyId")); + assertEquals("my.id", camelCaseToDot("MyID")); + assertEquals("my.url", camelCaseToDot("MyUrl")); + assertEquals("my.url", camelCaseToDot("MyURL")); + assertEquals("my.big.id", camelCaseToDot("MyBigId")); + assertEquals("my.big.id", camelCaseToDot("MyBigID")); + assertEquals("my.big.url", camelCaseToDot("MyBigUrl")); + assertEquals("my.big.url", camelCaseToDot("MyBigURL")); + assertEquals("my.big.id.again", camelCaseToDot("MyBigIdAgain")); + assertEquals("my.big.id.again", camelCaseToDot("MyBigIDAgain")); + assertEquals("my.big.url.again", camelCaseToDot("MyBigUrlAgain")); + assertEquals("my.big.url.again", camelCaseToDot("MyBigURLAgain")); + + assertEquals("use.mdc.logging", camelCaseToDot("UseMDCLogging")); + assertEquals("mdc.logging.keys.pattern", camelCaseToDot("MDCLoggingKeysPattern")); + assertEquals("available.phone.number.country", camelCaseToDot("AVAILABLE_PHONE_NUMBER_COUNTRY")); + assertEquals("available.phone.number.country", camelCaseToDot("AVAILABLE-PHONE_NUMBER-COUNTRY")); + assertEquals("available.phone.number.country", camelCaseToDot("Available-Phone-Number-Country")); + assertEquals("available.phone.number.country", camelCaseToDot("Available_Phone_Number_Country")); + assertEquals("available.phone.number.country", camelCaseToDot("available_phone_number_country")); + assertEquals("available.phone.number.country", camelCaseToDot("availablePhoneNumberCountry")); + assertEquals("available.phone.number.country", camelCaseToDot("AvailablePhoneNumberCountry")); + assertEquals("enable.cors", camelCaseToDot("enableCORS")); + } + @Test public void testDashToCamelCase() { assertEquals("enableCors", dashToCamelCase("enable-cors"));