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 ddf8afcbdcbfcda852f9b5beaeae48f0a79e20d8
Author: Andrea Cosentino <anco...@gmail.com>
AuthorDate: Fri Dec 18 11:40:19 2020 +0100

    CAMEL-15969 - Camel-AWS2-SNS: Set the topic policy as file and not as plain 
String
---
 .../org/apache/camel/catalog/docs/aws2-sns-component.adoc      |  4 ++--
 components/camel-aws2-sns/pom.xml                              |  4 ++++
 .../org/apache/camel/component/aws2/sns/aws2-sns.json          |  4 ++--
 .../camel-aws2-sns/src/main/docs/aws2-sns-component.adoc       |  4 ++--
 .../org/apache/camel/component/aws2/sns/Sns2Configuration.java |  3 ++-
 .../java/org/apache/camel/component/aws2/sns/Sns2Endpoint.java | 10 +++++++++-
 .../org/apache/camel/component/aws2/sns/SnsComponentTest.java  |  2 +-
 .../org/apache/camel/component/aws2/sts/STS2Constants.java     |  2 ++
 .../builder/component/dsl/Aws2SnsComponentBuilderFactory.java  |  4 +++-
 .../camel/builder/endpoint/dsl/Sns2EndpointBuilderFactory.java |  4 +++-
 docs/components/modules/ROOT/pages/aws2-sns-component.adoc     |  4 ++--
 11 files changed, 32 insertions(+), 13 deletions(-)

diff --git 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws2-sns-component.adoc
 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws2-sns-component.adoc
index cee68a0..064b21b 100644
--- 
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws2-sns-component.adoc
+++ 
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/docs/aws2-sns-component.adoc
@@ -60,7 +60,7 @@ The AWS 2 Simple Notification System (SNS) component supports 
22 options, which
 | *messageDeduplicationIdStrategy* (producer) | Only for FIFO Topic. Strategy 
for setting the messageDeduplicationId on the message. Can be one of the 
following options: useExchangeId, useContentBasedDeduplication. For the 
useContentBasedDeduplication option, no messageDeduplicationId will be set on 
the message. There are 2 enums and the value can be one of: useExchangeId, 
useContentBasedDeduplication | useExchangeId | String
 | *messageGroupIdStrategy* (producer) | Only for FIFO Topic. Strategy for 
setting the messageGroupId on the message. Can be one of the following options: 
useConstant, useExchangeId, usePropertyValue. For the usePropertyValue option, 
the value of property CamelAwsMessageGroupId will be used. There are 3 enums 
and the value can be one of: useConstant, useExchangeId, usePropertyValue |  | 
String
 | *messageStructure* (producer) | The message structure to use such as json |  
| String
-| *policy* (producer) | The policy for this queue |  | String
+| *policy* (producer) | The policy for this queue. Is loaded by default from 
classpath, but you can prefix with classpath:, file:, or http: to load the 
resource from different systems. |  | String
 | *proxyHost* (producer) | To define a proxy host when instantiating the SNS 
client |  | String
 | *proxyPort* (producer) | To define a proxy port when instantiating the SNS 
client |  | Integer
 | *proxyProtocol* (producer) | To define a proxy protocol when instantiating 
the SNS client. There are 2 enums and the value can be one of: HTTP, HTTPS | 
HTTPS | Protocol
@@ -114,7 +114,7 @@ with the following path and query parameters:
 | *messageDeduplicationIdStrategy* (producer) | Only for FIFO Topic. Strategy 
for setting the messageDeduplicationId on the message. Can be one of the 
following options: useExchangeId, useContentBasedDeduplication. For the 
useContentBasedDeduplication option, no messageDeduplicationId will be set on 
the message. There are 2 enums and the value can be one of: useExchangeId, 
useContentBasedDeduplication | useExchangeId | String
 | *messageGroupIdStrategy* (producer) | Only for FIFO Topic. Strategy for 
setting the messageGroupId on the message. Can be one of the following options: 
useConstant, useExchangeId, usePropertyValue. For the usePropertyValue option, 
the value of property CamelAwsMessageGroupId will be used. There are 3 enums 
and the value can be one of: useConstant, useExchangeId, usePropertyValue |  | 
String
 | *messageStructure* (producer) | The message structure to use such as json |  
| String
-| *policy* (producer) | The policy for this queue |  | String
+| *policy* (producer) | The policy for this queue. Is loaded by default from 
classpath, but you can prefix with classpath:, file:, or http: to load the 
resource from different systems. |  | String
 | *proxyHost* (producer) | To define a proxy host when instantiating the SNS 
client |  | String
 | *proxyPort* (producer) | To define a proxy port when instantiating the SNS 
client |  | Integer
 | *proxyProtocol* (producer) | To define a proxy protocol when instantiating 
the SNS client. There are 2 enums and the value can be one of: HTTP, HTTPS | 
HTTPS | Protocol
diff --git a/components/camel-aws2-sns/pom.xml 
b/components/camel-aws2-sns/pom.xml
index b7fe027..918e603 100644
--- a/components/camel-aws2-sns/pom.xml
+++ b/components/camel-aws2-sns/pom.xml
@@ -55,6 +55,10 @@
             <artifactId>apache-client</artifactId>
             <version>${aws-java-sdk2-version}</version>
         </dependency>
+        <dependency>
+            <groupId>commons-io</groupId>
+            <artifactId>commons-io</artifactId>
+        </dependency>
 
         <!-- test infra -->
         <dependency>
diff --git 
a/components/camel-aws2-sns/src/generated/resources/org/apache/camel/component/aws2/sns/aws2-sns.json
 
b/components/camel-aws2-sns/src/generated/resources/org/apache/camel/component/aws2/sns/aws2-sns.json
index f20fb72..c8e25c7 100644
--- 
a/components/camel-aws2-sns/src/generated/resources/org/apache/camel/component/aws2/sns/aws2-sns.json
+++ 
b/components/camel-aws2-sns/src/generated/resources/org/apache/camel/component/aws2/sns/aws2-sns.json
@@ -30,7 +30,7 @@
     "messageDeduplicationIdStrategy": { "kind": "property", "displayName": 
"Message Deduplication Id Strategy", "group": "producer", "label": "producer", 
"required": false, "type": "string", "javaType": "java.lang.String", "enum": [ 
"useExchangeId", "useContentBasedDeduplication" ], "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": "useExchangeId", 
"configurationClass": "org.apache.camel.component.aws2.sns.Sns2Configuration", 
"configurationField": "configuration", [...]
     "messageGroupIdStrategy": { "kind": "property", "displayName": "Message 
Group Id Strategy", "group": "producer", "label": "producer", "required": 
false, "type": "string", "javaType": "java.lang.String", "enum": [ 
"useConstant", "useExchangeId", "usePropertyValue" ], "deprecated": false, 
"autowired": false, "secret": false, "configurationClass": 
"org.apache.camel.component.aws2.sns.Sns2Configuration", "configurationField": 
"configuration", "description": "Only for FIFO Topic. Strategy [...]
     "messageStructure": { "kind": "property", "displayName": "Message 
Structure", "group": "producer", "label": "", "required": false, "type": 
"string", "javaType": "java.lang.String", "deprecated": false, "autowired": 
false, "secret": false, "configurationClass": 
"org.apache.camel.component.aws2.sns.Sns2Configuration", "configurationField": 
"configuration", "description": "The message structure to use such as json" },
-    "policy": { "kind": "property", "displayName": "Policy", "group": 
"producer", "label": "", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"configurationClass": "org.apache.camel.component.aws2.sns.Sns2Configuration", 
"configurationField": "configuration", "description": "The policy for this 
queue" },
+    "policy": { "kind": "property", "displayName": "Policy", "group": 
"producer", "label": "", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"configurationClass": "org.apache.camel.component.aws2.sns.Sns2Configuration", 
"configurationField": "configuration", "description": "The policy for this 
queue. Is loaded by default from classpath, but you can prefix with classpath:, 
file:, or http: to load the resource [...]
     "proxyHost": { "kind": "property", "displayName": "Proxy Host", "group": 
"producer", "label": "", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"configurationClass": "org.apache.camel.component.aws2.sns.Sns2Configuration", 
"configurationField": "configuration", "description": "To define a proxy host 
when instantiating the SNS client" },
     "proxyPort": { "kind": "property", "displayName": "Proxy Port", "group": 
"producer", "label": "", "required": false, "type": "integer", "javaType": 
"java.lang.Integer", "deprecated": false, "autowired": false, "secret": false, 
"configurationClass": "org.apache.camel.component.aws2.sns.Sns2Configuration", 
"configurationField": "configuration", "description": "To define a proxy port 
when instantiating the SNS client" },
     "proxyProtocol": { "kind": "property", "displayName": "Proxy Protocol", 
"group": "producer", "label": "", "required": false, "type": "object", 
"javaType": "software.amazon.awssdk.core.Protocol", "enum": [ "HTTP", "HTTPS" 
], "deprecated": false, "autowired": false, "secret": false, "defaultValue": 
"HTTPS", "configurationClass": 
"org.apache.camel.component.aws2.sns.Sns2Configuration", "configurationField": 
"configuration", "description": "To define a proxy protocol when instantiating 
t [...]
@@ -55,7 +55,7 @@
     "messageDeduplicationIdStrategy": { "kind": "parameter", "displayName": 
"Message Deduplication Id Strategy", "group": "producer", "label": "producer", 
"required": false, "type": "string", "javaType": "java.lang.String", "enum": [ 
"useExchangeId", "useContentBasedDeduplication" ], "deprecated": false, 
"autowired": false, "secret": false, "defaultValue": "useExchangeId", 
"configurationClass": "org.apache.camel.component.aws2.sns.Sns2Configuration", 
"configurationField": "configuration" [...]
     "messageGroupIdStrategy": { "kind": "parameter", "displayName": "Message 
Group Id Strategy", "group": "producer", "label": "producer", "required": 
false, "type": "string", "javaType": "java.lang.String", "enum": [ 
"useConstant", "useExchangeId", "usePropertyValue" ], "deprecated": false, 
"autowired": false, "secret": false, "configurationClass": 
"org.apache.camel.component.aws2.sns.Sns2Configuration", "configurationField": 
"configuration", "description": "Only for FIFO Topic. Strateg [...]
     "messageStructure": { "kind": "parameter", "displayName": "Message 
Structure", "group": "producer", "label": "", "required": false, "type": 
"string", "javaType": "java.lang.String", "deprecated": false, "autowired": 
false, "secret": false, "configurationClass": 
"org.apache.camel.component.aws2.sns.Sns2Configuration", "configurationField": 
"configuration", "description": "The message structure to use such as json" },
-    "policy": { "kind": "parameter", "displayName": "Policy", "group": 
"producer", "label": "", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"configurationClass": "org.apache.camel.component.aws2.sns.Sns2Configuration", 
"configurationField": "configuration", "description": "The policy for this 
queue" },
+    "policy": { "kind": "parameter", "displayName": "Policy", "group": 
"producer", "label": "", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"configurationClass": "org.apache.camel.component.aws2.sns.Sns2Configuration", 
"configurationField": "configuration", "description": "The policy for this 
queue. Is loaded by default from classpath, but you can prefix with classpath:, 
file:, or http: to load the resourc [...]
     "proxyHost": { "kind": "parameter", "displayName": "Proxy Host", "group": 
"producer", "label": "", "required": false, "type": "string", "javaType": 
"java.lang.String", "deprecated": false, "autowired": false, "secret": false, 
"configurationClass": "org.apache.camel.component.aws2.sns.Sns2Configuration", 
"configurationField": "configuration", "description": "To define a proxy host 
when instantiating the SNS client" },
     "proxyPort": { "kind": "parameter", "displayName": "Proxy Port", "group": 
"producer", "label": "", "required": false, "type": "integer", "javaType": 
"java.lang.Integer", "deprecated": false, "autowired": false, "secret": false, 
"configurationClass": "org.apache.camel.component.aws2.sns.Sns2Configuration", 
"configurationField": "configuration", "description": "To define a proxy port 
when instantiating the SNS client" },
     "proxyProtocol": { "kind": "parameter", "displayName": "Proxy Protocol", 
"group": "producer", "label": "", "required": false, "type": "object", 
"javaType": "software.amazon.awssdk.core.Protocol", "enum": [ "HTTP", "HTTPS" 
], "deprecated": false, "autowired": false, "secret": false, "defaultValue": 
"HTTPS", "configurationClass": 
"org.apache.camel.component.aws2.sns.Sns2Configuration", "configurationField": 
"configuration", "description": "To define a proxy protocol when instantiating  
[...]
diff --git a/components/camel-aws2-sns/src/main/docs/aws2-sns-component.adoc 
b/components/camel-aws2-sns/src/main/docs/aws2-sns-component.adoc
index cee68a0..064b21b 100644
--- a/components/camel-aws2-sns/src/main/docs/aws2-sns-component.adoc
+++ b/components/camel-aws2-sns/src/main/docs/aws2-sns-component.adoc
@@ -60,7 +60,7 @@ The AWS 2 Simple Notification System (SNS) component supports 
22 options, which
 | *messageDeduplicationIdStrategy* (producer) | Only for FIFO Topic. Strategy 
for setting the messageDeduplicationId on the message. Can be one of the 
following options: useExchangeId, useContentBasedDeduplication. For the 
useContentBasedDeduplication option, no messageDeduplicationId will be set on 
the message. There are 2 enums and the value can be one of: useExchangeId, 
useContentBasedDeduplication | useExchangeId | String
 | *messageGroupIdStrategy* (producer) | Only for FIFO Topic. Strategy for 
setting the messageGroupId on the message. Can be one of the following options: 
useConstant, useExchangeId, usePropertyValue. For the usePropertyValue option, 
the value of property CamelAwsMessageGroupId will be used. There are 3 enums 
and the value can be one of: useConstant, useExchangeId, usePropertyValue |  | 
String
 | *messageStructure* (producer) | The message structure to use such as json |  
| String
-| *policy* (producer) | The policy for this queue |  | String
+| *policy* (producer) | The policy for this queue. Is loaded by default from 
classpath, but you can prefix with classpath:, file:, or http: to load the 
resource from different systems. |  | String
 | *proxyHost* (producer) | To define a proxy host when instantiating the SNS 
client |  | String
 | *proxyPort* (producer) | To define a proxy port when instantiating the SNS 
client |  | Integer
 | *proxyProtocol* (producer) | To define a proxy protocol when instantiating 
the SNS client. There are 2 enums and the value can be one of: HTTP, HTTPS | 
HTTPS | Protocol
@@ -114,7 +114,7 @@ with the following path and query parameters:
 | *messageDeduplicationIdStrategy* (producer) | Only for FIFO Topic. Strategy 
for setting the messageDeduplicationId on the message. Can be one of the 
following options: useExchangeId, useContentBasedDeduplication. For the 
useContentBasedDeduplication option, no messageDeduplicationId will be set on 
the message. There are 2 enums and the value can be one of: useExchangeId, 
useContentBasedDeduplication | useExchangeId | String
 | *messageGroupIdStrategy* (producer) | Only for FIFO Topic. Strategy for 
setting the messageGroupId on the message. Can be one of the following options: 
useConstant, useExchangeId, usePropertyValue. For the usePropertyValue option, 
the value of property CamelAwsMessageGroupId will be used. There are 3 enums 
and the value can be one of: useConstant, useExchangeId, usePropertyValue |  | 
String
 | *messageStructure* (producer) | The message structure to use such as json |  
| String
-| *policy* (producer) | The policy for this queue |  | String
+| *policy* (producer) | The policy for this queue. Is loaded by default from 
classpath, but you can prefix with classpath:, file:, or http: to load the 
resource from different systems. |  | String
 | *proxyHost* (producer) | To define a proxy host when instantiating the SNS 
client |  | String
 | *proxyPort* (producer) | To define a proxy port when instantiating the SNS 
client |  | Integer
 | *proxyProtocol* (producer) | To define a proxy protocol when instantiating 
the SNS client. There are 2 enums and the value can be one of: HTTP, HTTPS | 
HTTPS | Protocol
diff --git 
a/components/camel-aws2-sns/src/main/java/org/apache/camel/component/aws2/sns/Sns2Configuration.java
 
b/components/camel-aws2-sns/src/main/java/org/apache/camel/component/aws2/sns/Sns2Configuration.java
index 78a0822..cf95090 100644
--- 
a/components/camel-aws2-sns/src/main/java/org/apache/camel/component/aws2/sns/Sns2Configuration.java
+++ 
b/components/camel-aws2-sns/src/main/java/org/apache/camel/component/aws2/sns/Sns2Configuration.java
@@ -144,7 +144,8 @@ public class Sns2Configuration implements Cloneable {
     }
 
     /**
-     * The policy for this queue
+     * The policy for this queue. Is loaded by default from classpath, but you 
can prefix with "classpath:", "file:", or
+     * "http:" to load the resource from different systems.
      */
     public void setPolicy(String policy) {
         this.policy = policy;
diff --git 
a/components/camel-aws2-sns/src/main/java/org/apache/camel/component/aws2/sns/Sns2Endpoint.java
 
b/components/camel-aws2-sns/src/main/java/org/apache/camel/component/aws2/sns/Sns2Endpoint.java
index 73aaf91..93e2b4a 100644
--- 
a/components/camel-aws2-sns/src/main/java/org/apache/camel/component/aws2/sns/Sns2Endpoint.java
+++ 
b/components/camel-aws2-sns/src/main/java/org/apache/camel/component/aws2/sns/Sns2Endpoint.java
@@ -16,6 +16,8 @@
  */
 package org.apache.camel.component.aws2.sns;
 
+import java.io.InputStream;
+import java.nio.charset.Charset;
 import java.util.HashMap;
 import java.util.Map;
 
@@ -32,7 +34,9 @@ import org.apache.camel.spi.UriEndpoint;
 import org.apache.camel.spi.UriParam;
 import org.apache.camel.spi.UriPath;
 import org.apache.camel.support.DefaultEndpoint;
+import org.apache.camel.support.ResourceHelper;
 import org.apache.camel.util.ObjectHelper;
+import org.apache.commons.io.IOUtils;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import software.amazon.awssdk.awscore.exception.AwsServiceException;
@@ -156,8 +160,12 @@ public class Sns2Endpoint extends DefaultEndpoint 
implements HeaderFilterStrateg
         if (ObjectHelper.isNotEmpty(configuration.getPolicy())) {
             LOG.trace("Updating topic [{}] with policy [{}]", 
configuration.getTopicArn(), configuration.getPolicy());
 
+            InputStream s = 
ResourceHelper.resolveMandatoryResourceAsInputStream(this.getCamelContext(),
+                    getConfiguration().getPolicy());
+            String policy = IOUtils.toString(s, Charset.defaultCharset());
+
             
snsClient.setTopicAttributes(SetTopicAttributesRequest.builder().topicArn(configuration.getTopicArn())
-                    
.attributeName("Policy").attributeValue(configuration.getPolicy())
+                    .attributeName("Policy").attributeValue(policy)
                     .build());
 
             LOG.trace("Topic policy updated");
diff --git 
a/components/camel-aws2-sns/src/test/java/org/apache/camel/component/aws2/sns/SnsComponentTest.java
 
b/components/camel-aws2-sns/src/test/java/org/apache/camel/component/aws2/sns/SnsComponentTest.java
index cd0c15a..376c0d6 100644
--- 
a/components/camel-aws2-sns/src/test/java/org/apache/camel/component/aws2/sns/SnsComponentTest.java
+++ 
b/components/camel-aws2-sns/src/test/java/org/apache/camel/component/aws2/sns/SnsComponentTest.java
@@ -60,7 +60,7 @@ public class SnsComponentTest extends CamelTestSupport {
         return new RouteBuilder() {
             @Override
             public void configure() throws Exception {
-                
from("direct:start").to("aws2-sns://MyTopic?amazonSNSClient=#amazonSNSClient&policy=XXX");
+                
from("direct:start").to("aws2-sns://MyTopic?amazonSNSClient=#amazonSNSClient");
             }
         };
     }
diff --git 
a/components/camel-aws2-sts/src/main/java/org/apache/camel/component/aws2/sts/STS2Constants.java
 
b/components/camel-aws2-sts/src/main/java/org/apache/camel/component/aws2/sts/STS2Constants.java
index 79a2cb5..f95ab66 100644
--- 
a/components/camel-aws2-sts/src/main/java/org/apache/camel/component/aws2/sts/STS2Constants.java
+++ 
b/components/camel-aws2-sts/src/main/java/org/apache/camel/component/aws2/sts/STS2Constants.java
@@ -24,4 +24,6 @@ public interface STS2Constants {
     String ROLE_ARN = "CamelAwsStsRoleArn";
     String ROLE_SESSION_NAME = "CamelAwsStsRoleSessionName";
     String FEDERATED_NAME = "CamelAwsStsFederatedName";
+    String ACCESS_KEY_ID = "CamelAwsStsAccessKeyId";
+    String SECRET_KEY_ID = "CamelAwsStsSecretKey";
 }
diff --git 
a/core/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/Aws2SnsComponentBuilderFactory.java
 
b/core/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/Aws2SnsComponentBuilderFactory.java
index 8faa0c9..9553ea7 100644
--- 
a/core/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/Aws2SnsComponentBuilderFactory.java
+++ 
b/core/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/Aws2SnsComponentBuilderFactory.java
@@ -189,7 +189,9 @@ public interface Aws2SnsComponentBuilderFactory {
             return this;
         }
         /**
-         * The policy for this queue.
+         * The policy for this queue. Is loaded by default from classpath, but
+         * you can prefix with classpath:, file:, or http: to load the resource
+         * from different systems.
          * 
          * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
          * 
diff --git 
a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/Sns2EndpointBuilderFactory.java
 
b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/Sns2EndpointBuilderFactory.java
index 870e8d2..bb3577a 100644
--- 
a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/Sns2EndpointBuilderFactory.java
+++ 
b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/Sns2EndpointBuilderFactory.java
@@ -289,7 +289,9 @@ public interface Sns2EndpointBuilderFactory {
             return this;
         }
         /**
-         * The policy for this queue.
+         * The policy for this queue. Is loaded by default from classpath, but
+         * you can prefix with classpath:, file:, or http: to load the resource
+         * from different systems.
          * 
          * The option is a: &lt;code&gt;java.lang.String&lt;/code&gt; type.
          * 
diff --git a/docs/components/modules/ROOT/pages/aws2-sns-component.adoc 
b/docs/components/modules/ROOT/pages/aws2-sns-component.adoc
index 5019b74..7caf225 100644
--- a/docs/components/modules/ROOT/pages/aws2-sns-component.adoc
+++ b/docs/components/modules/ROOT/pages/aws2-sns-component.adoc
@@ -62,7 +62,7 @@ The AWS 2 Simple Notification System (SNS) component supports 
22 options, which
 | *messageDeduplicationIdStrategy* (producer) | Only for FIFO Topic. Strategy 
for setting the messageDeduplicationId on the message. Can be one of the 
following options: useExchangeId, useContentBasedDeduplication. For the 
useContentBasedDeduplication option, no messageDeduplicationId will be set on 
the message. There are 2 enums and the value can be one of: useExchangeId, 
useContentBasedDeduplication | useExchangeId | String
 | *messageGroupIdStrategy* (producer) | Only for FIFO Topic. Strategy for 
setting the messageGroupId on the message. Can be one of the following options: 
useConstant, useExchangeId, usePropertyValue. For the usePropertyValue option, 
the value of property CamelAwsMessageGroupId will be used. There are 3 enums 
and the value can be one of: useConstant, useExchangeId, usePropertyValue |  | 
String
 | *messageStructure* (producer) | The message structure to use such as json |  
| String
-| *policy* (producer) | The policy for this queue |  | String
+| *policy* (producer) | The policy for this queue. Is loaded by default from 
classpath, but you can prefix with classpath:, file:, or http: to load the 
resource from different systems. |  | String
 | *proxyHost* (producer) | To define a proxy host when instantiating the SNS 
client |  | String
 | *proxyPort* (producer) | To define a proxy port when instantiating the SNS 
client |  | Integer
 | *proxyProtocol* (producer) | To define a proxy protocol when instantiating 
the SNS client. There are 2 enums and the value can be one of: HTTP, HTTPS | 
HTTPS | Protocol
@@ -116,7 +116,7 @@ with the following path and query parameters:
 | *messageDeduplicationIdStrategy* (producer) | Only for FIFO Topic. Strategy 
for setting the messageDeduplicationId on the message. Can be one of the 
following options: useExchangeId, useContentBasedDeduplication. For the 
useContentBasedDeduplication option, no messageDeduplicationId will be set on 
the message. There are 2 enums and the value can be one of: useExchangeId, 
useContentBasedDeduplication | useExchangeId | String
 | *messageGroupIdStrategy* (producer) | Only for FIFO Topic. Strategy for 
setting the messageGroupId on the message. Can be one of the following options: 
useConstant, useExchangeId, usePropertyValue. For the usePropertyValue option, 
the value of property CamelAwsMessageGroupId will be used. There are 3 enums 
and the value can be one of: useConstant, useExchangeId, usePropertyValue |  | 
String
 | *messageStructure* (producer) | The message structure to use such as json |  
| String
-| *policy* (producer) | The policy for this queue |  | String
+| *policy* (producer) | The policy for this queue. Is loaded by default from 
classpath, but you can prefix with classpath:, file:, or http: to load the 
resource from different systems. |  | String
 | *proxyHost* (producer) | To define a proxy host when instantiating the SNS 
client |  | String
 | *proxyPort* (producer) | To define a proxy port when instantiating the SNS 
client |  | Integer
 | *proxyProtocol* (producer) | To define a proxy protocol when instantiating 
the SNS client. There are 2 enums and the value can be one of: HTTP, HTTPS | 
HTTPS | Protocol

Reply via email to