camel-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From acosent...@apache.org
Subject [5/9] camel git commit: CAMEL-11736 - Camel-AWS: Use regional client instead of define region for single operation - AWS SDB
Date Fri, 01 Sep 2017 11:45:21 GMT
CAMEL-11736 - Camel-AWS: Use regional client instead of define region for single operation
- AWS SDB


Project: http://git-wip-us.apache.org/repos/asf/camel/repo
Commit: http://git-wip-us.apache.org/repos/asf/camel/commit/fc16ce16
Tree: http://git-wip-us.apache.org/repos/asf/camel/tree/fc16ce16
Diff: http://git-wip-us.apache.org/repos/asf/camel/diff/fc16ce16

Branch: refs/heads/master
Commit: fc16ce1670434290facd9264c1052b31d3827792
Parents: 5fed8b2
Author: Andrea Cosentino <ancosen@gmail.com>
Authored: Fri Sep 1 12:36:37 2017 +0200
Committer: Andrea Cosentino <ancosen@gmail.com>
Committed: Fri Sep 1 12:36:37 2017 +0200

----------------------------------------------------------------------
 .../src/main/docs/aws-sdb-component.adoc         |  7 ++++---
 .../component/aws/sdb/SdbConfiguration.java      | 17 +++++++++++++++--
 .../camel/component/aws/sdb/SdbEndpoint.java     | 19 +++++++++++--------
 3 files changed, 30 insertions(+), 13 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/camel/blob/fc16ce16/components/camel-aws/src/main/docs/aws-sdb-component.adoc
----------------------------------------------------------------------
diff --git a/components/camel-aws/src/main/docs/aws-sdb-component.adoc b/components/camel-aws/src/main/docs/aws-sdb-component.adoc
index 36635b7..f133310 100644
--- a/components/camel-aws/src/main/docs/aws-sdb-component.adoc
+++ b/components/camel-aws/src/main/docs/aws-sdb-component.adoc
@@ -46,7 +46,7 @@ with the following path and query parameters:
 | **domainName** | *Required* The name of the domain currently worked with. |  | String
 |=======================================================================
 
-#### Query Parameters (10 parameters):
+#### Query Parameters (11 parameters):
 
 [width="100%",cols="2,5,^1,2",options="header"]
 |=======================================================================
@@ -57,8 +57,9 @@ with the following path and query parameters:
 | **consistentRead** (producer) | Determines whether or not strong consistency should be
enforced when data is read. | false | boolean
 | **maxNumberOfDomains** (producer) | The maximum number of domain names you want returned.
The range is 1 to 100. |  | Integer
 | **operation** (producer) | Operation to perform | PutAttributes | SdbOperations
-| **proxyHost** (producer) | To define a proxy host when instantiating the SQS client | 
| String
-| **proxyPort** (producer) | To define a proxy port when instantiating the SQS client | 
| Integer
+| **proxyHost** (producer) | To define a proxy host when instantiating the SDB client | 
| String
+| **proxyPort** (producer) | To define a proxy port when instantiating the SDB client | 
| Integer
+| **region** (producer) | The region in which SDB client needs to work |  | String
 | **secretKey** (producer) | Amazon AWS Secret Key |  | String
 | **synchronous** (advanced) | Sets whether synchronous processing should be strictly used
or Camel is allowed to use asynchronous processing (if supported). | false | boolean
 |=======================================================================

http://git-wip-us.apache.org/repos/asf/camel/blob/fc16ce16/components/camel-aws/src/main/java/org/apache/camel/component/aws/sdb/SdbConfiguration.java
----------------------------------------------------------------------
diff --git a/components/camel-aws/src/main/java/org/apache/camel/component/aws/sdb/SdbConfiguration.java
b/components/camel-aws/src/main/java/org/apache/camel/component/aws/sdb/SdbConfiguration.java
index 30019ff..5686f7f 100644
--- a/components/camel-aws/src/main/java/org/apache/camel/component/aws/sdb/SdbConfiguration.java
+++ b/components/camel-aws/src/main/java/org/apache/camel/component/aws/sdb/SdbConfiguration.java
@@ -46,6 +46,8 @@ public class SdbConfiguration {
     private String proxyHost;
     @UriParam
     private Integer proxyPort;
+    @UriParam
+    private String region;
 
     /**
      * The region with which the AWS-SDB client wants to work with.
@@ -136,7 +138,7 @@ public class SdbConfiguration {
     }
     
     /**
-     * To define a proxy host when instantiating the SQS client
+     * To define a proxy host when instantiating the SDB client
      */
     public String getProxyHost() {
         return proxyHost;
@@ -147,7 +149,7 @@ public class SdbConfiguration {
     }
 
     /**
-     * To define a proxy port when instantiating the SQS client
+     * To define a proxy port when instantiating the SDB client
      */
     public Integer getProxyPort() {
         return proxyPort;
@@ -156,4 +158,15 @@ public class SdbConfiguration {
     public void setProxyPort(Integer proxyPort) {
         this.proxyPort = proxyPort;
     }
+    
+    /**
+     * The region in which SDB client needs to work
+     */
+    public String getRegion() {
+        return region;
+    }
+
+    public void setRegion(String region) {
+        this.region = region;
+    }
 }

http://git-wip-us.apache.org/repos/asf/camel/blob/fc16ce16/components/camel-aws/src/main/java/org/apache/camel/component/aws/sdb/SdbEndpoint.java
----------------------------------------------------------------------
diff --git a/components/camel-aws/src/main/java/org/apache/camel/component/aws/sdb/SdbEndpoint.java
b/components/camel-aws/src/main/java/org/apache/camel/component/aws/sdb/SdbEndpoint.java
index 812cf0c..c2ace82 100644
--- a/components/camel-aws/src/main/java/org/apache/camel/component/aws/sdb/SdbEndpoint.java
+++ b/components/camel-aws/src/main/java/org/apache/camel/component/aws/sdb/SdbEndpoint.java
@@ -21,8 +21,8 @@ import com.amazonaws.auth.AWSCredentials;
 import com.amazonaws.auth.AWSCredentialsProvider;
 import com.amazonaws.auth.AWSStaticCredentialsProvider;
 import com.amazonaws.auth.BasicAWSCredentials;
+import com.amazonaws.client.builder.AwsClientBuilder.EndpointConfiguration;
 import com.amazonaws.services.simpledb.AmazonSimpleDB;
-import com.amazonaws.services.simpledb.AmazonSimpleDBClient;
 import com.amazonaws.services.simpledb.AmazonSimpleDBClientBuilder;
 import com.amazonaws.services.simpledb.model.CreateDomainRequest;
 import com.amazonaws.services.simpledb.model.DomainMetadataRequest;
@@ -81,9 +81,6 @@ public class SdbEndpoint extends ScheduledPollEndpoint {
         super.doStart();
         
         sdbClient = configuration.getAmazonSDBClient() != null ? configuration.getAmazonSDBClient()
: createSdbClient();
-        if (ObjectHelper.isNotEmpty(configuration.getAmazonSdbEndpoint())) {
-            sdbClient.setEndpoint(configuration.getAmazonSdbEndpoint());
-        }
         
         String domainName = getConfiguration().getDomainName();
         LOG.trace("Querying whether domain [{}] already exists...", domainName);
@@ -110,6 +107,7 @@ public class SdbEndpoint extends ScheduledPollEndpoint {
 
     AmazonSimpleDB createSdbClient() {
         AmazonSimpleDB client = null;
+        AmazonSimpleDBClientBuilder clientBuilder = null;
         ClientConfiguration clientConfiguration = null;
         boolean isClientConfigFound = false;
         if (ObjectHelper.isNotEmpty(configuration.getProxyHost()) && ObjectHelper.isNotEmpty(configuration.getProxyPort()))
{
@@ -122,17 +120,22 @@ public class SdbEndpoint extends ScheduledPollEndpoint {
             AWSCredentials credentials = new BasicAWSCredentials(configuration.getAccessKey(),
configuration.getSecretKey());
             AWSCredentialsProvider credentialsProvider = new AWSStaticCredentialsProvider(credentials);
             if (isClientConfigFound) {
-                client = AmazonSimpleDBClientBuilder.standard().withClientConfiguration(clientConfiguration).withCredentials(credentialsProvider).build();
+                clientBuilder = AmazonSimpleDBClientBuilder.standard().withClientConfiguration(clientConfiguration).withCredentials(credentialsProvider);
             } else {
-                client = AmazonSimpleDBClientBuilder.standard().withCredentials(credentialsProvider).build();
+                clientBuilder = AmazonSimpleDBClientBuilder.standard().withCredentials(credentialsProvider);
             }
         } else {
             if (isClientConfigFound) {
-                client = AmazonSimpleDBClientBuilder.standard().build();
+                clientBuilder = AmazonSimpleDBClientBuilder.standard();
             } else {
-                client = AmazonSimpleDBClientBuilder.standard().withClientConfiguration(clientConfiguration).build();
+                clientBuilder = AmazonSimpleDBClientBuilder.standard().withClientConfiguration(clientConfiguration);
             }
         }
+        if (ObjectHelper.isNotEmpty(configuration.getAmazonSdbEndpoint()) && ObjectHelper.isNotEmpty(configuration.getRegion()))
{
+            EndpointConfiguration endpointConfiguration = new EndpointConfiguration(configuration.getAmazonSdbEndpoint(),
configuration.getRegion());
+            clientBuilder = clientBuilder.withEndpointConfiguration(endpointConfiguration);
+        }
+        client = clientBuilder.build();
         return client;
     }
 }


Mime
View raw message