You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by ac...@apache.org on 2020/03/10 11:24:50 UTC

[camel] 02/03: CAMEL-14685 - Camel-RabbitMQ: Introduce an HeaderFilterStrategy to RabbitMQMessageConverter, fixed test and regen

This is an automated email from the ASF dual-hosted git repository.

acosentino pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/camel.git

commit 397184a8640420fd850aac85cd200e29e257cbe0
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Tue Mar 10 11:58:40 2020 +0100

    CAMEL-14685 - Camel-RabbitMQ: Introduce an HeaderFilterStrategy to RabbitMQMessageConverter, fixed test and regen
---
 .../rabbitmq/RabbitMQEndpointConfigurer.java       |  2 ++
 .../apache/camel/component/rabbitmq/rabbitmq.json  |  1 +
 .../src/main/docs/rabbitmq-component.adoc          |  3 ++-
 .../component/rabbitmq/RabbitMQProducerTest.java   |  4 +++-
 .../dsl/RabbitMQEndpointBuilderFactory.java        | 26 ++++++++++++++++++++++
 5 files changed, 34 insertions(+), 2 deletions(-)

diff --git a/components/camel-rabbitmq/src/generated/java/org/apache/camel/component/rabbitmq/RabbitMQEndpointConfigurer.java b/components/camel-rabbitmq/src/generated/java/org/apache/camel/component/rabbitmq/RabbitMQEndpointConfigurer.java
index 2abc432..e9a909c 100644
--- a/components/camel-rabbitmq/src/generated/java/org/apache/camel/component/rabbitmq/RabbitMQEndpointConfigurer.java
+++ b/components/camel-rabbitmq/src/generated/java/org/apache/camel/component/rabbitmq/RabbitMQEndpointConfigurer.java
@@ -16,6 +16,8 @@ public class RabbitMQEndpointConfigurer extends PropertyConfigurerSupport implem
         RabbitMQEndpoint target = (RabbitMQEndpoint) obj;
         switch (ignoreCase ? name.toLowerCase() : name) {
         case "addresses": target.setAddresses(property(camelContext, java.lang.String.class, value)); return true;
+        case "allowcustomheaders":
+        case "allowCustomHeaders": target.setAllowCustomHeaders(property(camelContext, boolean.class, value)); return true;
         case "allownullheaders":
         case "allowNullHeaders": target.setAllowNullHeaders(property(camelContext, boolean.class, value)); return true;
         case "args": target.setArgs(property(camelContext, java.util.Map.class, value)); return true;
diff --git a/components/camel-rabbitmq/src/generated/resources/org/apache/camel/component/rabbitmq/rabbitmq.json b/components/camel-rabbitmq/src/generated/resources/org/apache/camel/component/rabbitmq/rabbitmq.json
index f3aca78..3acc988 100644
--- a/components/camel-rabbitmq/src/generated/resources/org/apache/camel/component/rabbitmq/rabbitmq.json
+++ b/components/camel-rabbitmq/src/generated/resources/org/apache/camel/component/rabbitmq/rabbitmq.json
@@ -107,6 +107,7 @@
     "exceptionHandler": { "kind": "parameter", "displayName": "Exception Handler", "group": "consumer (advanced)", "label": "consumer,advanced", "required": false, "type": "object", "javaType": "org.apache.camel.spi.ExceptionHandler", "optionalPrefix": "consumer.", "deprecated": false, "secret": false, "description": "To let the consumer use a custom ExceptionHandler. Notice if the option bridgeErrorHandler is enabled then this option is not in use. By default the consumer will deal with [...]
     "exchangePattern": { "kind": "parameter", "displayName": "Exchange Pattern", "group": "consumer (advanced)", "label": "consumer,advanced", "required": false, "type": "object", "javaType": "org.apache.camel.ExchangePattern", "enum": [ "InOnly", "InOut", "InOptionalOut" ], "deprecated": false, "secret": false, "description": "Sets the exchange pattern when the consumer creates an exchange." },
     "threadPoolSize": { "kind": "parameter", "displayName": "Thread Pool Size", "group": "consumer (advanced)", "label": "consumer,advanced", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "secret": false, "defaultValue": "10", "description": "The consumer uses a Thread Pool Executor with a fixed number of threads. This setting allows you to set that number of threads." },
+    "allowCustomHeaders": { "kind": "parameter", "displayName": "Allow Custom Headers", "group": "producer", "label": "producer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": false, "description": "Allow pass custom values to header" },
     "allowNullHeaders": { "kind": "parameter", "displayName": "Allow Null Headers", "group": "producer", "label": "producer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": false, "description": "Allow pass null values to header" },
     "bridgeEndpoint": { "kind": "parameter", "displayName": "Bridge Endpoint", "group": "producer", "label": "producer", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": false, "description": "If the bridgeEndpoint is true, the producer will ignore the message header of rabbitmq.EXCHANGE_NAME and rabbitmq.ROUTING_KEY" },
     "channelPoolMaxSize": { "kind": "parameter", "displayName": "Channel Pool Max Size", "group": "producer", "label": "producer", "required": false, "type": "integer", "javaType": "int", "deprecated": false, "secret": false, "defaultValue": "10", "description": "Get maximum number of opened channel in pool" },
diff --git a/components/camel-rabbitmq/src/main/docs/rabbitmq-component.adoc b/components/camel-rabbitmq/src/main/docs/rabbitmq-component.adoc
index 29ef17b..45f956a 100644
--- a/components/camel-rabbitmq/src/main/docs/rabbitmq-component.adoc
+++ b/components/camel-rabbitmq/src/main/docs/rabbitmq-component.adoc
@@ -133,7 +133,7 @@ with the following path and query parameters:
 |===
 
 
-=== Query Parameters (60 parameters):
+=== Query Parameters (61 parameters):
 
 
 [width="100%",cols="2,5,^1,2",options="header"]
@@ -172,6 +172,7 @@ with the following path and query parameters:
 | *exceptionHandler* (consumer) | To let the consumer use a custom ExceptionHandler. Notice if the option bridgeErrorHandler is enabled then this option is not in use. By default the consumer will deal with exceptions, that will be logged at WARN or ERROR level and ignored. |  | ExceptionHandler
 | *exchangePattern* (consumer) | Sets the exchange pattern when the consumer creates an exchange. The value can be one of: InOnly, InOut, InOptionalOut |  | ExchangePattern
 | *threadPoolSize* (consumer) | The consumer uses a Thread Pool Executor with a fixed number of threads. This setting allows you to set that number of threads. | 10 | int
+| *allowCustomHeaders* (producer) | Allow pass custom values to header | false | boolean
 | *allowNullHeaders* (producer) | Allow pass null values to header | false | boolean
 | *bridgeEndpoint* (producer) | If the bridgeEndpoint is true, the producer will ignore the message header of rabbitmq.EXCHANGE_NAME and rabbitmq.ROUTING_KEY | false | boolean
 | *channelPoolMaxSize* (producer) | Get maximum number of opened channel in pool | 10 | int
diff --git a/components/camel-rabbitmq/src/test/java/org/apache/camel/component/rabbitmq/RabbitMQProducerTest.java b/components/camel-rabbitmq/src/test/java/org/apache/camel/component/rabbitmq/RabbitMQProducerTest.java
index 6f2f19b..b4677d5 100644
--- a/components/camel-rabbitmq/src/test/java/org/apache/camel/component/rabbitmq/RabbitMQProducerTest.java
+++ b/components/camel-rabbitmq/src/test/java/org/apache/camel/component/rabbitmq/RabbitMQProducerTest.java
@@ -48,10 +48,12 @@ public class RabbitMQProducerTest {
 
     @Before
     public void before() throws IOException, TimeoutException {
+        RabbitMQMessageConverter converter = new RabbitMQMessageConverter();
+        converter.setAllowCustomHeaders(true);
         Mockito.when(exchange.getIn()).thenReturn(message);
         Mockito.when(endpoint.connect(any(ExecutorService.class))).thenReturn(conn);
         Mockito.when(conn.createChannel()).thenReturn(null);
-        Mockito.when(endpoint.getMessageConverter()).thenReturn(new RabbitMQMessageConverter());
+        Mockito.when(endpoint.getMessageConverter()).thenReturn(converter);
     }
 
     @Test
diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/RabbitMQEndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/RabbitMQEndpointBuilderFactory.java
index cca0f53..4226e31 100644
--- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/RabbitMQEndpointBuilderFactory.java
+++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/RabbitMQEndpointBuilderFactory.java
@@ -1659,6 +1659,32 @@ public interface RabbitMQEndpointBuilderFactory {
             return this;
         }
         /**
+         * Allow pass custom values to header.
+         * 
+         * The option is a: <code>boolean</code> type.
+         * 
+         * Default: false
+         * Group: producer
+         */
+        default RabbitMQEndpointProducerBuilder allowCustomHeaders(
+                boolean allowCustomHeaders) {
+            doSetProperty("allowCustomHeaders", allowCustomHeaders);
+            return this;
+        }
+        /**
+         * Allow pass custom values to header.
+         * 
+         * The option will be converted to a <code>boolean</code> type.
+         * 
+         * Default: false
+         * Group: producer
+         */
+        default RabbitMQEndpointProducerBuilder allowCustomHeaders(
+                String allowCustomHeaders) {
+            doSetProperty("allowCustomHeaders", allowCustomHeaders);
+            return this;
+        }
+        /**
          * Allow pass null values to header.
          * 
          * The option is a: <code>boolean</code> type.