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-k-examples.git
commit 8a0960715dc1395f5bef50adcfdded6320ce9b9b Author: Otavio Rodolfo Piske <opi...@redhat.com> AuthorDate: Fri Jul 17 16:32:40 2020 +0200 Use a property for the amazon host address --- .../aws-kinesis-producer.groovy | 2 +- .../aws-kinesis-source.yaml | 6 +++--- .../extra/custom-kinesis-configuration/pom.xml | 2 +- .../camel/k/examples/CustomKinesisConfiguration.java | 20 +++++++++++--------- .../readme.didact.md | 4 ++-- 5 files changed, 18 insertions(+), 16 deletions(-) diff --git a/90-aws-kinesis-customized-event-source/aws-kinesis-producer.groovy b/90-aws-kinesis-customized-event-source/aws-kinesis-producer.groovy index 14b34d1..bb843ff 100644 --- a/90-aws-kinesis-customized-event-source/aws-kinesis-producer.groovy +++ b/90-aws-kinesis-customized-event-source/aws-kinesis-producer.groovy @@ -1,4 +1,4 @@ -// camel-k: dependency=camel-aws-kinesis dependency=mvn:org.apache.camel.k.examples:custom-kinesis-configuration:1.0.1 +// camel-k: dependency=camel-aws-kinesis dependency=mvn:org.apache.camel.k.examples:custom-kinesis-configuration:1.0.3 // // Apache Camel Kinesis Consumer // diff --git a/90-aws-kinesis-customized-event-source/aws-kinesis-source.yaml b/90-aws-kinesis-customized-event-source/aws-kinesis-source.yaml index 587cfb9..efe6d3b 100644 --- a/90-aws-kinesis-customized-event-source/aws-kinesis-source.yaml +++ b/90-aws-kinesis-customized-event-source/aws-kinesis-source.yaml @@ -12,8 +12,8 @@ spec: # What other types do we have? - type: secret value: aws-kinesis - - type: env - value: AWS_HOST=localstack:4568 + - type: property + value: amazon.host=localstack:4568 - type: property value: camel.component.aws-kinesis.configuration=#class:org.apache.camel.k.examples.CustomKinesisConfiguration dependencies: @@ -34,7 +34,7 @@ spec: # actual AWS Kinesis instance. - camel:camel-aws-kinesis # Provides the custom Kinesis configuration - - mvn:org.apache.camel.k.examples/custom-kinesis-configuration:1.0.1 + - mvn:org.apache.camel.k.examples/custom-kinesis-configuration:1.0.3 flow: from: uri: aws-kinesis:stream diff --git a/90-aws-kinesis-customized-event-source/extra/custom-kinesis-configuration/pom.xml b/90-aws-kinesis-customized-event-source/extra/custom-kinesis-configuration/pom.xml index 1e158a5..ef83582 100644 --- a/90-aws-kinesis-customized-event-source/extra/custom-kinesis-configuration/pom.xml +++ b/90-aws-kinesis-customized-event-source/extra/custom-kinesis-configuration/pom.xml @@ -6,7 +6,7 @@ <groupId>org.apache.camel.k.examples</groupId> <artifactId>custom-kinesis-configuration</artifactId> - <version>1.0.1</version> + <version>1.0.3</version> <properties> <version.maven.compiler>3.8.1</version.maven.compiler> diff --git a/90-aws-kinesis-customized-event-source/extra/custom-kinesis-configuration/src/main/java/org/apache/camel/k/examples/CustomKinesisConfiguration.java b/90-aws-kinesis-customized-event-source/extra/custom-kinesis-configuration/src/main/java/org/apache/camel/k/examples/CustomKinesisConfiguration.java index 501e619..5cf4bf3 100644 --- a/90-aws-kinesis-customized-event-source/extra/custom-kinesis-configuration/src/main/java/org/apache/camel/k/examples/CustomKinesisConfiguration.java +++ b/90-aws-kinesis-customized-event-source/extra/custom-kinesis-configuration/src/main/java/org/apache/camel/k/examples/CustomKinesisConfiguration.java @@ -17,6 +17,7 @@ package org.apache.camel.k.examples; +import org.apache.camel.PropertyInject; import com.amazonaws.ClientConfiguration; import com.amazonaws.Protocol; import com.amazonaws.auth.AWSCredentials; @@ -37,6 +38,9 @@ public class CustomKinesisConfiguration extends KinesisConfiguration { private AmazonKinesis amazonKinesis; + @PropertyInject("amazon.host") + private String amazonHost; + static { /* This makes the Localstack response parseable but is not necessary * when using AWS Kinesis @@ -53,17 +57,15 @@ public class CustomKinesisConfiguration extends KinesisConfiguration { } } - private AmazonKinesis buildClient() { - LOG.info("Creating a custom Kinesis client"); - - String amazonHost = System.getenv("AWS_HOST"); - - if (amazonHost == null || amazonHost.isEmpty()) { - LOG.info("Couldn't find an Amazon host via environment variable, trying with 'aws.host' property instead"); + public void setAmazonHost(String amazonHost) { + this.amazonHost = amazonHost; + } - amazonHost = System.getProperty("aws.host"); - } + public String getAmazonHost() { + return amazonHost; + } + private AmazonKinesis buildClient() { LOG.info("Using Amazon host: {}", amazonHost); ClientConfiguration clientConfiguration = new ClientConfiguration(); diff --git a/90-aws-kinesis-customized-event-source/readme.didact.md b/90-aws-kinesis-customized-event-source/readme.didact.md index 4defe01..15aea34 100644 --- a/90-aws-kinesis-customized-event-source/readme.didact.md +++ b/90-aws-kinesis-customized-event-source/readme.didact.md @@ -183,9 +183,9 @@ comes with a sample producer that will send 100 messages with the text `Hello Ca every 3 seconds. ``` -kamel run --secret aws-kinesis --property camel.component.aws-kinesis.configuration=#class:org.apache.camel.k.examples.CustomKinesisConfiguration --env AWS_HOST=localstack:4568 aws-kinesis-producer.groovy +kamel run --secret aws-kinesis --dependency mvn:org.apache.camel.k.examples:custom-kinesis-configuration:1.0.3 --property camel.component.aws-kinesis.configuration=#class:org.apache.camel.k.examples.CustomKinesisConfiguration --property amazon.host=localstack:4568 aws-kinesis-producer.groovy ``` -([^ execute](didact://?commandId=vscode.didact.sendNamedTerminalAString&text=camelTerm$$kamel%20run%20--secret%20aws-kinesis%20--dependency%20mvn:org.apache.camel.k.examples:custom-kinesis-configuration:1.0.1%20--property%20camel.component.aws-kinesis.configuration=%23class:org.apache.camel.k.examples.CustomKinesisConfiguration%20%20--env%20AWS_HOST=localstack:4568%20aws-kinesis-producer.groovy&completion=Ran%20the%20AWS%20Kinesis%20producer. "Opens a terminal and runs the command above" [...] +([^ execute](didact://?commandId=vscode.didact.sendNamedTerminalAString&text=camelTerm$$kamel%20run%20--secret%20aws-kinesis%20--dependency%20mvn:org.apache.camel.k.examples:custom-kinesis-configuration:1.0.3%20--property%20camel.component.aws-kinesis.configuration=%23class:org.apache.camel.k.examples.CustomKinesisConfiguration%20--property%20amazon.host=localstack:4568%20aws-kinesis-producer.groovy&completion=Ran%20the%20AWS%20Kinesis%20producer. "Opens a terminal and runs the command a [...] If everything is ok, after the build phase finishes, you should see the Camel integration running.