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 2019/12/11 12:10:33 UTC
[camel] 02/02: CAMEL-14284: Configuring endpoint should set
properties on endpoint and not configuration object - aws-kinesis-firehose
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 97f0a648e88945131e5332769980159c2e450417
Author: Andrea Cosentino <an...@gmail.com>
AuthorDate: Wed Dec 11 13:10:02 2019 +0100
CAMEL-14284: Configuring endpoint should set properties on endpoint and not configuration object - aws-kinesis-firehose
---
.../aws/firehose/KinesisFirehoseComponent.java | 32 +++++++++-------------
.../KinesisFirehoseComponentConfigurationTest.java | 8 +++---
2 files changed, 17 insertions(+), 23 deletions(-)
diff --git a/components/camel-aws-kinesis/src/main/java/org/apache/camel/component/aws/firehose/KinesisFirehoseComponent.java b/components/camel-aws-kinesis/src/main/java/org/apache/camel/component/aws/firehose/KinesisFirehoseComponent.java
index c41aeee..8028aa6 100644
--- a/components/camel-aws-kinesis/src/main/java/org/apache/camel/component/aws/firehose/KinesisFirehoseComponent.java
+++ b/components/camel-aws-kinesis/src/main/java/org/apache/camel/component/aws/firehose/KinesisFirehoseComponent.java
@@ -22,6 +22,7 @@ import java.util.Set;
import com.amazonaws.services.kinesisfirehose.AmazonKinesisFirehose;
import org.apache.camel.CamelContext;
import org.apache.camel.Endpoint;
+import org.apache.camel.component.aws.kinesis.KinesisConfiguration;
import org.apache.camel.spi.Metadata;
import org.apache.camel.spi.annotations.Component;
import org.apache.camel.support.DefaultComponent;
@@ -46,29 +47,22 @@ public class KinesisFirehoseComponent extends DefaultComponent {
public KinesisFirehoseComponent(CamelContext context) {
super(context);
- this.configuration = new KinesisFirehoseConfiguration();
registerExtension(new KinesisFirehoseComponentVerifierExtension());
}
@Override
protected Endpoint createEndpoint(String uri, String remaining, Map<String, Object> parameters) throws Exception {
- KinesisFirehoseConfiguration configuration = this.configuration.copy();
+ KinesisFirehoseConfiguration configuration = this.configuration != null ? this.configuration.copy() : new KinesisFirehoseConfiguration();
configuration.setStreamName(remaining);
- setProperties(configuration, parameters);
- if (ObjectHelper.isEmpty(configuration.getAccessKey())) {
- setAccessKey(accessKey);
- }
- if (ObjectHelper.isEmpty(configuration.getSecretKey())) {
- setSecretKey(secretKey);
- }
- if (ObjectHelper.isEmpty(configuration.getRegion())) {
- setRegion(region);
- }
+ KinesisFirehoseEndpoint endpoint = new KinesisFirehoseEndpoint(uri, configuration, this);
+ endpoint.getConfiguration().setAccessKey(accessKey);
+ endpoint.getConfiguration().setSecretKey(secretKey);
+ endpoint.getConfiguration().setRegion(region);
+ setProperties(endpoint, parameters);
checkAndSetRegistryClient(configuration);
if (configuration.getAmazonKinesisFirehoseClient() == null && (configuration.getAccessKey() == null || configuration.getSecretKey() == null)) {
throw new IllegalArgumentException("AmazonKinesisFirehoseClient or accessKey and secretKey must be specified");
}
- KinesisFirehoseEndpoint endpoint = new KinesisFirehoseEndpoint(uri, configuration, this);
return endpoint;
}
@@ -84,36 +78,36 @@ public class KinesisFirehoseComponent extends DefaultComponent {
}
public String getAccessKey() {
- return configuration.getAccessKey();
+ return accessKey;
}
/**
* Amazon AWS Access Key
*/
public void setAccessKey(String accessKey) {
- configuration.setAccessKey(accessKey);
+ this.accessKey = accessKey;
}
public String getSecretKey() {
- return configuration.getSecretKey();
+ return secretKey;
}
/**
* Amazon AWS Secret Key
*/
public void setSecretKey(String secretKey) {
- configuration.setSecretKey(secretKey);
+ this.secretKey = secretKey;
}
public String getRegion() {
- return configuration.getRegion();
+ return region;
}
/**
* Amazon AWS Region
*/
public void setRegion(String region) {
- configuration.setRegion(region);
+ this.region = region;
}
private void checkAndSetRegistryClient(KinesisFirehoseConfiguration configuration) {
diff --git a/components/camel-aws-kinesis/src/test/java/org/apache/camel/component/aws/firehose/KinesisFirehoseComponentConfigurationTest.java b/components/camel-aws-kinesis/src/test/java/org/apache/camel/component/aws/firehose/KinesisFirehoseComponentConfigurationTest.java
index 343d404..4cab23e 100644
--- a/components/camel-aws-kinesis/src/test/java/org/apache/camel/component/aws/firehose/KinesisFirehoseComponentConfigurationTest.java
+++ b/components/camel-aws-kinesis/src/test/java/org/apache/camel/component/aws/firehose/KinesisFirehoseComponentConfigurationTest.java
@@ -25,7 +25,7 @@ public class KinesisFirehoseComponentConfigurationTest extends CamelTestSupport
@Test
public void createEndpointWithAccessAndSecretKey() throws Exception {
- KinesisFirehoseComponent component = new KinesisFirehoseComponent(context);
+ KinesisFirehoseComponent component = context.getComponent("aws-kinesis-firehose", KinesisFirehoseComponent.class);
KinesisFirehoseEndpoint endpoint = (KinesisFirehoseEndpoint)component.createEndpoint("aws-kinesis-firehose://some_stream_name?accessKey=xxxxx&secretKey=yyyyy");
assertEquals("some_stream_name", endpoint.getConfiguration().getStreamName());
@@ -35,7 +35,7 @@ public class KinesisFirehoseComponentConfigurationTest extends CamelTestSupport
@Test
public void createEndpointWithComponentElements() throws Exception {
- KinesisFirehoseComponent component = new KinesisFirehoseComponent(context);
+ KinesisFirehoseComponent component = context.getComponent("aws-kinesis-firehose", KinesisFirehoseComponent.class);
component.setAccessKey("XXX");
component.setSecretKey("YYY");
KinesisFirehoseEndpoint endpoint = (KinesisFirehoseEndpoint)component.createEndpoint("aws-kinesis-firehose://some_stream_name");
@@ -47,7 +47,7 @@ public class KinesisFirehoseComponentConfigurationTest extends CamelTestSupport
@Test
public void createEndpointWithComponentAndEndpointElements() throws Exception {
- KinesisFirehoseComponent component = new KinesisFirehoseComponent(context);
+ KinesisFirehoseComponent component = context.getComponent("aws-kinesis-firehose", KinesisFirehoseComponent.class);
component.setAccessKey("XXX");
component.setSecretKey("YYY");
component.setRegion(Regions.US_WEST_1.toString());
@@ -61,7 +61,7 @@ public class KinesisFirehoseComponentConfigurationTest extends CamelTestSupport
@Test
public void createEndpointWithComponentEndpointElementsAndProxy() throws Exception {
- KinesisFirehoseComponent component = new KinesisFirehoseComponent(context);
+ KinesisFirehoseComponent component = context.getComponent("aws-kinesis-firehose", KinesisFirehoseComponent.class);
component.setAccessKey("XXX");
component.setSecretKey("YYY");
component.setRegion(Regions.US_WEST_1.toString());