[ 
https://issues.apache.org/jira/browse/CAMEL-12641?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16541182#comment-16541182
 ] 

ASF GitHub Bot commented on CAMEL-12641:
----------------------------------------

oscerd closed pull request #2421: CAMEL-12641 : Aws-sns and aws-sqs components 
not accepting Date type …
URL: https://github.com/apache/camel/pull/2421
 
 
   

This is a PR merged from a forked repository.
As GitHub hides the original diff on merge, it is displayed below for
the sake of provenance:

As this is a foreign pull request (from a fork), the diff is supplied
below (as it won't show otherwise due to GitHub magic):

diff --git 
a/components/camel-aws/src/main/java/org/apache/camel/component/aws/sns/SnsProducer.java
 
b/components/camel-aws/src/main/java/org/apache/camel/component/aws/sns/SnsProducer.java
index cdfd52d18dc..2b447e1a0bb 100644
--- 
a/components/camel-aws/src/main/java/org/apache/camel/component/aws/sns/SnsProducer.java
+++ 
b/components/camel-aws/src/main/java/org/apache/camel/component/aws/sns/SnsProducer.java
@@ -17,6 +17,7 @@
 package org.apache.camel.component.aws.sns;
 
 import java.nio.ByteBuffer;
+import java.util.Date;
 import java.util.HashMap;
 import java.util.Map;
 import java.util.Map.Entry;
@@ -104,6 +105,11 @@ private String determineMessageStructure(Exchange 
exchange) {
                     mav.setDataType("Binary");
                     mav.withBinaryValue((ByteBuffer)value);
                     result.put(entry.getKey(), mav);
+                } else if (value instanceof Date) {
+                    MessageAttributeValue mav = new MessageAttributeValue();
+                    mav.setDataType("String");
+                    mav.withStringValue(value.toString());
+                    result.put(entry.getKey(), mav);
                 } else {
                     // cannot translate the message header to message 
attribute value
                     LOG.warn("Cannot put the message header key={}, value={} 
into Sns MessageAttribute", entry.getKey(), entry.getValue());
diff --git 
a/components/camel-aws/src/main/java/org/apache/camel/component/aws/sqs/SqsProducer.java
 
b/components/camel-aws/src/main/java/org/apache/camel/component/aws/sqs/SqsProducer.java
index 74c8868df44..74b3e02953d 100644
--- 
a/components/camel-aws/src/main/java/org/apache/camel/component/aws/sqs/SqsProducer.java
+++ 
b/components/camel-aws/src/main/java/org/apache/camel/component/aws/sqs/SqsProducer.java
@@ -17,6 +17,7 @@
 package org.apache.camel.component.aws.sqs;
 
 import java.nio.ByteBuffer;
+import java.util.Date;
 import java.util.HashMap;
 import java.util.Map;
 import java.util.Map.Entry;
@@ -161,6 +162,11 @@ public String toString() {
                     mav.setDataType(dataType);
                     mav.withStringValue(((Number)value).toString());
                     result.put(entry.getKey(), mav);
+                } else if (value instanceof Date) {
+                    MessageAttributeValue mav = new MessageAttributeValue();
+                    mav.setDataType("String");
+                    mav.withStringValue(value.toString());
+                    result.put(entry.getKey(), mav);
                 } else {
                     // cannot translate the message header to message 
attribute value
                     LOG.warn("Cannot put the message header key={}, value={} 
into Sqs MessageAttribute", entry.getKey(), entry.getValue());


 

----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


> Aws-sns and aws-sqs components not accepting Date type message attributes
> -------------------------------------------------------------------------
>
>                 Key: CAMEL-12641
>                 URL: https://issues.apache.org/jira/browse/CAMEL-12641
>             Project: Camel
>          Issue Type: Improvement
>          Components: camel-aws
>    Affects Versions: 2.21.1
>            Reporter: Saravanakumar Selvaraj
>            Assignee: Andrea Cosentino
>            Priority: Minor
>             Fix For: 2.23.0
>
>
> Camel aws-sns and aws-sqs components not accepting Date type message 
> attributes. For example, the camel route like,
> {{          <from id="_from1" uri="timer://foo?repeatCount=1" />}}
> {{          <to id="_to1"  uri="aws-sns://***/>}}
> fails with error while publishing the message.
> {{2018-07-11 18:49:49,109 [2 - timer://foo] WARN  SnsProducer                 
>    - Cannot put the message header key=firedTime, 
> value=2018-07-11T18:49:49.090+0530 into Sns MessageAttribute}}
>  
> Because it carries header _firedTime_ as java.util.Date



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

Reply via email to