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/10/12 16:18:48 UTC
[camel] 01/06: CAMEL-15647 - Camel-AWS2-Kinesis-*: Added a
CborEnabled option explicitly, kinesis
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 <an...@gmail.com>
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();
}