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 a48779e221f0f837650d19b6f41b43cc616f750f
Author: Andrea Cosentino <[email protected]>
AuthorDate: Mon Oct 12 18:07:23 2020 +0200

    CAMEL-15647 - Camel-AWS2-Kinesis-*: Added a CborEnabled option explicitly, 
kinesis
---
 .../component/aws2/kinesis/Kinesis2Configuration.java      | 14 ++++++++++++--
 .../camel/component/aws2/kinesis/Kinesis2Endpoint.java     |  8 ++++++++
 2 files changed, 20 insertions(+), 2 deletions(-)

diff --git 
a/components/camel-aws2-kinesis/src/main/java/org/apache/camel/component/aws2/kinesis/Kinesis2Configuration.java
 
b/components/camel-aws2-kinesis/src/main/java/org/apache/camel/component/aws2/kinesis/Kinesis2Configuration.java
index d978969..d1607f5 100644
--- 
a/components/camel-aws2-kinesis/src/main/java/org/apache/camel/component/aws2/kinesis/Kinesis2Configuration.java
+++ 
b/components/camel-aws2-kinesis/src/main/java/org/apache/camel/component/aws2/kinesis/Kinesis2Configuration.java
@@ -70,6 +70,9 @@ public class Kinesis2Configuration implements Cloneable {
               description = "Setting the autoDiscoverClient mechanism, if 
true, the component will "
                             + " look for a client instance in the registry 
automatically otherwise it will skip that checking")
     private boolean autoDiscoverClient = true;
+    @UriParam(label = "common", defaultValue = "true", 
+               description = "This option will set the CBOR_ENABLED property 
during the execution")
+    private boolean cborEnabled = true;
 
     public KinesisClient getAmazonKinesisClient() {
         return amazonKinesisClient;
@@ -190,12 +193,19 @@ public class Kinesis2Configuration implements Cloneable {
     public void setAutoDiscoverClient(boolean autoDiscoverClient) {
         this.autoDiscoverClient = autoDiscoverClient;
     }
+    
+    public boolean isCborEnabled() {
+               return cborEnabled;
+       }
+
+       public void setCborEnabled(boolean cborEnabled) {
+               this.cborEnabled = cborEnabled;
+       }
 
     // *************************************************
     //
     // *************************************************
-
-    public Kinesis2Configuration copy() {
+       public Kinesis2Configuration copy() {
         try {
             return (Kinesis2Configuration) super.clone();
         } catch (CloneNotSupportedException e) {
diff --git 
a/components/camel-aws2-kinesis/src/main/java/org/apache/camel/component/aws2/kinesis/Kinesis2Endpoint.java
 
b/components/camel-aws2-kinesis/src/main/java/org/apache/camel/component/aws2/kinesis/Kinesis2Endpoint.java
index 072e8bb..20c8433 100644
--- 
a/components/camel-aws2-kinesis/src/main/java/org/apache/camel/component/aws2/kinesis/Kinesis2Endpoint.java
+++ 
b/components/camel-aws2-kinesis/src/main/java/org/apache/camel/component/aws2/kinesis/Kinesis2Endpoint.java
@@ -40,6 +40,8 @@ import software.amazon.awssdk.services.kinesis.model.Record;
 import software.amazon.awssdk.services.kinesis.model.ShardIteratorType;
 import software.amazon.awssdk.utils.AttributeMap;
 
+import static software.amazon.awssdk.core.SdkSystemSetting.CBOR_ENABLED;
+
 /**
  * Consume and produce records from and to AWS Kinesis Streams using AWS SDK 
version 2.x.
  */
@@ -60,6 +62,9 @@ public class Kinesis2Endpoint extends ScheduledPollEndpoint {
     @Override
     protected void doStart() throws Exception {
         super.doStart();
+        if (!configuration.isCborEnabled()) {
+               System.setProperty(CBOR_ENABLED.property(), "false");
+        }
         kinesisClient = configuration.getAmazonKinesisClient() != null
                 ? configuration.getAmazonKinesisClient() : 
createKinesisClient();
 
@@ -78,6 +83,9 @@ public class Kinesis2Endpoint extends ScheduledPollEndpoint {
                 kinesisClient.close();
             }
         }
+        if (!configuration.isCborEnabled()) {
+               System.clearProperty(CBOR_ENABLED.property());
+        }
         super.doStop();
     }
 

Reply via email to