This is an automated email from the ASF dual-hosted git repository. davsclaus pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/camel.git
commit a177812a5486affd534bba9006f0f1fd4be7afbc Author: Claus Ibsen <claus.ib...@gmail.com> AuthorDate: Sat Dec 5 13:14:46 2020 +0100 CAMEL-15764: Setting properties via configurer should ignore case by default as end users may use mixed case and the API components rely on parameter names with a specific case --- .../java/org/apache/camel/reifier/dataformat/DataFormatReifier.java | 1 + .../java/org/apache/camel/reifier/language/ExpressionReifier.java | 1 + .../src/main/java/org/apache/camel/support/DefaultComponent.java | 4 ++-- .../src/main/java/org/apache/camel/support/DefaultEndpoint.java | 4 ++-- .../main/java/org/apache/camel/support/RestProducerFactoryHelper.java | 2 +- .../java/org/apache/camel/support/component/AbstractApiComponent.java | 1 + 6 files changed, 8 insertions(+), 5 deletions(-) diff --git a/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/dataformat/DataFormatReifier.java b/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/dataformat/DataFormatReifier.java index e51fe35..f3e5dd4 100644 --- a/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/dataformat/DataFormatReifier.java +++ b/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/dataformat/DataFormatReifier.java @@ -317,6 +317,7 @@ public abstract class DataFormatReifier<T extends DataFormatDefinition> extends .withTarget(dataFormat) .withReference(true) .withMandatory(true) + .withIgnoreCase(true) .withConfigurer(configurer) .withProperties(properties) .bind(); diff --git a/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/language/ExpressionReifier.java b/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/language/ExpressionReifier.java index dd775a1..4e50324 100644 --- a/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/language/ExpressionReifier.java +++ b/core/camel-core-reifier/src/main/java/org/apache/camel/reifier/language/ExpressionReifier.java @@ -275,6 +275,7 @@ public class ExpressionReifier<T extends ExpressionDefinition> extends AbstractR } PropertyBindingSupport.build() .withConfigurer(configurer) + .withIgnoreCase(true) .bind(camelContext, target, properties); } diff --git a/core/camel-support/src/main/java/org/apache/camel/support/DefaultComponent.java b/core/camel-support/src/main/java/org/apache/camel/support/DefaultComponent.java index 6df994b..cf3bdf1 100644 --- a/core/camel-support/src/main/java/org/apache/camel/support/DefaultComponent.java +++ b/core/camel-support/src/main/java/org/apache/camel/support/DefaultComponent.java @@ -447,8 +447,8 @@ public abstract class DefaultComponent extends ServiceSupport implements Compone } else { configurer = null; } - // use advanced binding - PropertyBindingSupport.build().withConfigurer(configurer).bind(camelContext, bean, parameters); + // use configurer and ignore case as end users may type an option name with mixed case + PropertyBindingSupport.build().withConfigurer(configurer).withIgnoreCase(true).bind(camelContext, bean, parameters); } @Override diff --git a/core/camel-support/src/main/java/org/apache/camel/support/DefaultEndpoint.java b/core/camel-support/src/main/java/org/apache/camel/support/DefaultEndpoint.java index 92d008f..3e89bba 100644 --- a/core/camel-support/src/main/java/org/apache/camel/support/DefaultEndpoint.java +++ b/core/camel-support/src/main/java/org/apache/camel/support/DefaultEndpoint.java @@ -427,8 +427,8 @@ public abstract class DefaultEndpoint extends ServiceSupport implements Endpoint } else if (bean instanceof PropertyConfigurerAware) { configurer = ((PropertyConfigurerAware) bean).getPropertyConfigurer(bean); } - // use advanced binding - PropertyBindingSupport.build().withConfigurer(configurer).bind(camelContext, bean, parameters); + // use configurer and ignore case as end users may type an option name with mixed case + PropertyBindingSupport.build().withConfigurer(configurer).withIgnoreCase(true).bind(camelContext, bean, parameters); } /** diff --git a/core/camel-support/src/main/java/org/apache/camel/support/RestProducerFactoryHelper.java b/core/camel-support/src/main/java/org/apache/camel/support/RestProducerFactoryHelper.java index d9b14a9..2910e83 100644 --- a/core/camel-support/src/main/java/org/apache/camel/support/RestProducerFactoryHelper.java +++ b/core/camel-support/src/main/java/org/apache/camel/support/RestProducerFactoryHelper.java @@ -76,7 +76,7 @@ public final class RestProducerFactoryHelper { // component was not added to the context we can configure it final Component newlyCreated = camelContext.getComponent(componentName, true, false); - PropertyBindingSupport.build().withRemoveParameters(false) + PropertyBindingSupport.build().withRemoveParameters(false).withIgnoreCase(true) .withConfigurer(newlyCreated.getComponentPropertyConfigurer()) .bind(camelContext, newlyCreated, componentProperties); ServiceHelper.startService(newlyCreated); diff --git a/core/camel-support/src/main/java/org/apache/camel/support/component/AbstractApiComponent.java b/core/camel-support/src/main/java/org/apache/camel/support/component/AbstractApiComponent.java index 5090e33..38d9f1a 100644 --- a/core/camel-support/src/main/java/org/apache/camel/support/component/AbstractApiComponent.java +++ b/core/camel-support/src/main/java/org/apache/camel/support/component/AbstractApiComponent.java @@ -131,6 +131,7 @@ public abstract class AbstractApiComponent<E extends Enum<E> & ApiName, T, S ext .resolvePropertyConfigurer(endpointConfiguration.getClass().getName(), getCamelContext()); PropertyBindingSupport.build() .withConfigurer(configurer) + .withIgnoreCase(true) .bind(getCamelContext(), endpointConfiguration, componentProperties); return endpointConfiguration; }