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/07/01 12:15:47 UTC
[camel] 01/03: CAMEL-15264 - Camel-AWS2-Kinesis: Add more
operations support
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 4eced49893236f3095444a2144bfd94ffe26d204
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Wed Jul 1 14:10:35 2020 +0200
CAMEL-15264 - Camel-AWS2-Kinesis: Add more operations support
---
.../aws2/firehose/KinesisFirehose2Operations.java | 2 +-
.../aws2/firehose/KinesisFirehose2Producer.java | 16 ++++++++++++++++
2 files changed, 17 insertions(+), 1 deletion(-)
diff --git a/components/camel-aws2-kinesis/src/main/java/org/apache/camel/component/aws2/firehose/KinesisFirehose2Operations.java b/components/camel-aws2-kinesis/src/main/java/org/apache/camel/component/aws2/firehose/KinesisFirehose2Operations.java
index 93ec644..fcc9bbf 100644
--- a/components/camel-aws2-kinesis/src/main/java/org/apache/camel/component/aws2/firehose/KinesisFirehose2Operations.java
+++ b/components/camel-aws2-kinesis/src/main/java/org/apache/camel/component/aws2/firehose/KinesisFirehose2Operations.java
@@ -18,5 +18,5 @@ package org.apache.camel.component.aws2.firehose;
public enum KinesisFirehose2Operations {
- sendBatchRecord, createDeliveryStream, deleteDeliveryStream
+ sendBatchRecord, createDeliveryStream, deleteDeliveryStream, updateDestination
}
diff --git a/components/camel-aws2-kinesis/src/main/java/org/apache/camel/component/aws2/firehose/KinesisFirehose2Producer.java b/components/camel-aws2-kinesis/src/main/java/org/apache/camel/component/aws2/firehose/KinesisFirehose2Producer.java
index 95aff68..a6ae72d 100644
--- a/components/camel-aws2-kinesis/src/main/java/org/apache/camel/component/aws2/firehose/KinesisFirehose2Producer.java
+++ b/components/camel-aws2-kinesis/src/main/java/org/apache/camel/component/aws2/firehose/KinesisFirehose2Producer.java
@@ -36,6 +36,8 @@ import software.amazon.awssdk.services.firehose.model.PutRecordBatchResponse;
import software.amazon.awssdk.services.firehose.model.PutRecordRequest;
import software.amazon.awssdk.services.firehose.model.PutRecordResponse;
import software.amazon.awssdk.services.firehose.model.Record;
+import software.amazon.awssdk.services.firehose.model.UpdateDestinationRequest;
+import software.amazon.awssdk.services.firehose.model.UpdateDestinationResponse;
public class KinesisFirehose2Producer extends DefaultProducer {
@@ -66,6 +68,9 @@ public class KinesisFirehose2Producer extends DefaultProducer {
case deleteDeliveryStream:
deleteDeliveryStream(getClient(), exchange);
break;
+ case updateDestination:
+ updateDestination(getClient(), exchange);
+ break;
default:
throw new IllegalArgumentException("Unsupported operation");
}
@@ -100,6 +105,17 @@ public class KinesisFirehose2Producer extends DefaultProducer {
}
}
}
+
+ private void updateDestination(FirehoseClient client, Exchange exchange) {
+ if (exchange.getIn().getBody() instanceof CreateDeliveryStreamRequest) {
+ UpdateDestinationRequest req = exchange.getIn().getBody(UpdateDestinationRequest.class);
+ UpdateDestinationResponse result = client.updateDestination(req);
+ Message message = getMessageForResponse(exchange);
+ message.setBody(result);
+ } else {
+ throw new IllegalArgumentException("The updateDestination operation expects an UpdateDestinationRequest instance as body");
+ }
+ }
private void sendBatchRecord(FirehoseClient client, Exchange exchange) {
if (exchange.getIn().getBody() instanceof Iterable) {