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 a58328ea453653f4a8354a38d52d0338faee7ea3
Author: Andrea Cosentino <anco...@gmail.com>
AuthorDate: Wed Apr 8 14:45:35 2020 +0200

    CAMEL-14868 - Camel-AWS2-*: Where possible, give the possiblity to the end 
user to pass an AWS Request pojo as body, aws-translate fixed CS
---
 .../Translate2ComponentVerifierExtension.java      |   3 +-
 .../aws2/translate/Translate2Configuration.java    |  21 +++--
 .../aws2/translate/Translate2Producer.java         | 100 ++++++++++-----------
 .../aws2/translate/Translate2ProducerTest.java     |   6 +-
 .../Translate2ProducerIntegrationTest.java         |  11 +--
 5 files changed, 71 insertions(+), 70 deletions(-)

diff --git 
a/components/camel-aws2-translate/src/main/java/org/apache/camel/component/aws2/translate/Translate2ComponentVerifierExtension.java
 
b/components/camel-aws2-translate/src/main/java/org/apache/camel/component/aws2/translate/Translate2ComponentVerifierExtension.java
index 1ba1aa0..0c34bd8 100644
--- 
a/components/camel-aws2-translate/src/main/java/org/apache/camel/component/aws2/translate/Translate2ComponentVerifierExtension.java
+++ 
b/components/camel-aws2-translate/src/main/java/org/apache/camel/component/aws2/translate/Translate2ComponentVerifierExtension.java
@@ -68,7 +68,8 @@ public class Translate2ComponentVerifierExtension extends 
DefaultComponentVerifi
         try {
             Translate2Configuration configuration = setProperties(new 
Translate2Configuration(), parameters);
             if 
(!TranslateClient.serviceMetadata().regions().contains(Region.of(configuration.getRegion())))
 {
-                ResultErrorBuilder errorBuilder = 
ResultErrorBuilder.withCodeAndDescription(VerificationError.StandardCode.ILLEGAL_PARAMETER,
 "The service is not supported in this region");
+                ResultErrorBuilder errorBuilder = 
ResultErrorBuilder.withCodeAndDescription(VerificationError.StandardCode.ILLEGAL_PARAMETER,
+                                                                               
             "The service is not supported in this region");
                 return builder.error(errorBuilder.build()).build();
             }
             AwsBasicCredentials cred = 
AwsBasicCredentials.create(configuration.getAccessKey(), 
configuration.getSecretKey());
diff --git 
a/components/camel-aws2-translate/src/main/java/org/apache/camel/component/aws2/translate/Translate2Configuration.java
 
b/components/camel-aws2-translate/src/main/java/org/apache/camel/component/aws2/translate/Translate2Configuration.java
index c0152ed..a823eb2 100644
--- 
a/components/camel-aws2-translate/src/main/java/org/apache/camel/component/aws2/translate/Translate2Configuration.java
+++ 
b/components/camel-aws2-translate/src/main/java/org/apache/camel/component/aws2/translate/Translate2Configuration.java
@@ -139,9 +139,8 @@ public class Translate2Configuration implements Cloneable {
 
     /**
      * The region in which Translate client needs to work. When using this
-     * parameter, the configuration will expect the lowercase name of the
-     * region (for example ap-east-1) You'll need to use the name
-     * Region.EU_WEST_1.id()
+     * parameter, the configuration will expect the lowercase name of the 
region
+     * (for example ap-east-1) You'll need to use the name 
Region.EU_WEST_1.id()
      */
     public void setRegion(String region) {
         this.region = region;
@@ -179,23 +178,23 @@ public class Translate2Configuration implements Cloneable 
{
     public void setTargetLanguage(String targetLanguage) {
         this.targetLanguage = targetLanguage;
     }
-    
+
     public boolean isPojoRequest() {
-               return pojoRequest;
-       }
-    
+        return pojoRequest;
+    }
+
     /**
      * If we want to use a POJO request as body or not
      */
-       public void setPojoRequest(boolean pojoRequest) {
-               this.pojoRequest = pojoRequest;
-       }
+    public void setPojoRequest(boolean pojoRequest) {
+        this.pojoRequest = pojoRequest;
+    }
 
     // *************************************************
     //
     // *************************************************
 
-       public Translate2Configuration copy() {
+    public Translate2Configuration copy() {
         try {
             return (Translate2Configuration)super.clone();
         } catch (CloneNotSupportedException e) {
diff --git 
a/components/camel-aws2-translate/src/main/java/org/apache/camel/component/aws2/translate/Translate2Producer.java
 
b/components/camel-aws2-translate/src/main/java/org/apache/camel/component/aws2/translate/Translate2Producer.java
index ddd593f..d1ee2af 100644
--- 
a/components/camel-aws2-translate/src/main/java/org/apache/camel/component/aws2/translate/Translate2Producer.java
+++ 
b/components/camel-aws2-translate/src/main/java/org/apache/camel/component/aws2/translate/Translate2Producer.java
@@ -82,63 +82,63 @@ public class Translate2Producer extends DefaultProducer {
     }
 
     private void translateText(TranslateClient translateClient, Exchange 
exchange) {
-       if (getConfiguration().isPojoRequest()) {
-       if (exchange.getIn().getBody() instanceof TranslateTextRequest) {
-               Object payload = exchange.getIn().getBody();
-               TranslateTextResponse result;
-               try {
-                   result = 
translateClient.translateText((TranslateTextRequest) payload);
-               } catch (AwsServiceException ase) {
-                   LOG.trace("Translate Text command returned the error code 
{}", ase.awsErrorDetails().errorCode());
-                   throw ase;
-               }
-               Message message = getMessageForResponse(exchange);
-               message.setBody(result.translatedText());
-       }
-       } else {
-        Builder request = TranslateTextRequest.builder();
-        if (!getConfiguration().isAutodetectSourceLanguage()) {
-            if (ObjectHelper.isEmpty(getConfiguration().getSourceLanguage()) 
&& ObjectHelper.isEmpty(getConfiguration().getTargetLanguage())) {
-                String source = 
exchange.getIn().getHeader(Translate2Constants.SOURCE_LANGUAGE, String.class);
-                String target = 
exchange.getIn().getHeader(Translate2Constants.TARGET_LANGUAGE, String.class);
-                if (ObjectHelper.isEmpty(source) || 
ObjectHelper.isEmpty(target)) {
-                    throw new IllegalArgumentException("Source and target 
language must be specified as headers or endpoint options");
+        if (getConfiguration().isPojoRequest()) {
+            if (exchange.getIn().getBody() instanceof TranslateTextRequest) {
+                Object payload = exchange.getIn().getBody();
+                TranslateTextResponse result;
+                try {
+                    result = 
translateClient.translateText((TranslateTextRequest)payload);
+                } catch (AwsServiceException ase) {
+                    LOG.trace("Translate Text command returned the error code 
{}", ase.awsErrorDetails().errorCode());
+                    throw ase;
                 }
-                request.sourceLanguageCode(source);
-                request.targetLanguageCode(target);
-            } else {
-                
request.sourceLanguageCode(getConfiguration().getSourceLanguage());
-                
request.targetLanguageCode(getConfiguration().getTargetLanguage());
+                Message message = getMessageForResponse(exchange);
+                message.setBody(result.translatedText());
             }
         } else {
-            String source = "auto";
-            if (ObjectHelper.isEmpty(getConfiguration().getTargetLanguage())) {
-                String target = 
exchange.getIn().getHeader(Translate2Constants.TARGET_LANGUAGE, String.class);
-                if (ObjectHelper.isEmpty(source) || 
ObjectHelper.isEmpty(target)) {
-                    throw new IllegalArgumentException("Target language must 
be specified when autodetection of source language is enabled");
+            Builder request = TranslateTextRequest.builder();
+            if (!getConfiguration().isAutodetectSourceLanguage()) {
+                if 
(ObjectHelper.isEmpty(getConfiguration().getSourceLanguage()) && 
ObjectHelper.isEmpty(getConfiguration().getTargetLanguage())) {
+                    String source = 
exchange.getIn().getHeader(Translate2Constants.SOURCE_LANGUAGE, String.class);
+                    String target = 
exchange.getIn().getHeader(Translate2Constants.TARGET_LANGUAGE, String.class);
+                    if (ObjectHelper.isEmpty(source) || 
ObjectHelper.isEmpty(target)) {
+                        throw new IllegalArgumentException("Source and target 
language must be specified as headers or endpoint options");
+                    }
+                    request.sourceLanguageCode(source);
+                    request.targetLanguageCode(target);
+                } else {
+                    
request.sourceLanguageCode(getConfiguration().getSourceLanguage());
+                    
request.targetLanguageCode(getConfiguration().getTargetLanguage());
                 }
-                request.sourceLanguageCode(source);
-                request.targetLanguageCode(target);
             } else {
-                request.sourceLanguageCode(source);
-                
request.targetLanguageCode(getConfiguration().getTargetLanguage());
+                String source = "auto";
+                if 
(ObjectHelper.isEmpty(getConfiguration().getTargetLanguage())) {
+                    String target = 
exchange.getIn().getHeader(Translate2Constants.TARGET_LANGUAGE, String.class);
+                    if (ObjectHelper.isEmpty(source) || 
ObjectHelper.isEmpty(target)) {
+                        throw new IllegalArgumentException("Target language 
must be specified when autodetection of source language is enabled");
+                    }
+                    request.sourceLanguageCode(source);
+                    request.targetLanguageCode(target);
+                } else {
+                    request.sourceLanguageCode(source);
+                    
request.targetLanguageCode(getConfiguration().getTargetLanguage());
+                }
             }
+            if 
(!ObjectHelper.isEmpty(exchange.getIn().getHeader(Translate2Constants.TERMINOLOGY_NAMES,
 Collection.class))) {
+                Collection<String> terminologies = 
exchange.getIn().getHeader(Translate2Constants.TERMINOLOGY_NAMES, 
Collection.class);
+                request.terminologyNames(terminologies);
+            }
+            request.text(exchange.getMessage().getBody(String.class));
+            TranslateTextResponse result;
+            try {
+                result = translateClient.translateText(request.build());
+            } catch (AwsServiceException ase) {
+                LOG.trace("Translate Text command returned the error code {}", 
ase.awsErrorDetails().errorCode());
+                throw ase;
+            }
+            Message message = getMessageForResponse(exchange);
+            message.setBody(result.translatedText());
         }
-        if 
(!ObjectHelper.isEmpty(exchange.getIn().getHeader(Translate2Constants.TERMINOLOGY_NAMES,
 Collection.class))) {
-            Collection<String> terminologies = 
exchange.getIn().getHeader(Translate2Constants.TERMINOLOGY_NAMES, 
Collection.class);
-            request.terminologyNames(terminologies);
-        }
-        request.text(exchange.getMessage().getBody(String.class));
-        TranslateTextResponse result;
-        try {
-            result = translateClient.translateText(request.build());
-        } catch (AwsServiceException ase) {
-            LOG.trace("Translate Text command returned the error code {}", 
ase.awsErrorDetails().errorCode());
-            throw ase;
-        }
-        Message message = getMessageForResponse(exchange);
-        message.setBody(result.translatedText());
-       }
     }
 
     public static Message getMessageForResponse(final Exchange exchange) {
diff --git 
a/components/camel-aws2-translate/src/test/java/org/apache/camel/component/aws2/translate/Translate2ProducerTest.java
 
b/components/camel-aws2-translate/src/test/java/org/apache/camel/component/aws2/translate/Translate2ProducerTest.java
index 9716f3c..10e461d 100644
--- 
a/components/camel-aws2-translate/src/test/java/org/apache/camel/component/aws2/translate/Translate2ProducerTest.java
+++ 
b/components/camel-aws2-translate/src/test/java/org/apache/camel/component/aws2/translate/Translate2ProducerTest.java
@@ -24,7 +24,6 @@ import org.apache.camel.builder.RouteBuilder;
 import org.apache.camel.component.mock.MockEndpoint;
 import org.apache.camel.test.junit5.CamelTestSupport;
 import org.junit.jupiter.api.Test;
-
 import software.amazon.awssdk.services.translate.model.TranslateTextRequest;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
@@ -56,7 +55,7 @@ public class Translate2ProducerTest extends CamelTestSupport {
         assertEquals("Hello", resultGet);
 
     }
-    
+
     @Test
     public void translateTextPojoTest() throws Exception {
 
@@ -64,7 +63,8 @@ public class Translate2ProducerTest extends CamelTestSupport {
         Exchange exchange = template.request("direct:translatePojoText", new 
Processor() {
             @Override
             public void process(Exchange exchange) throws Exception {
-                
exchange.getIn().setBody(TranslateTextRequest.builder().sourceLanguageCode(Translate2LanguageEnum.ITALIAN.toString()).targetLanguageCode(Translate2LanguageEnum.ENGLISH.toString()).text("ciao").build());
+                
exchange.getIn().setBody(TranslateTextRequest.builder().sourceLanguageCode(Translate2LanguageEnum.ITALIAN.toString())
+                    
.targetLanguageCode(Translate2LanguageEnum.ENGLISH.toString()).text("ciao").build());
             }
         });
 
diff --git 
a/components/camel-aws2-translate/src/test/java/org/apache/camel/component/aws2/translate/integration/Translate2ProducerIntegrationTest.java
 
b/components/camel-aws2-translate/src/test/java/org/apache/camel/component/aws2/translate/integration/Translate2ProducerIntegrationTest.java
index 6d7f0e3..81a4c77 100644
--- 
a/components/camel-aws2-translate/src/test/java/org/apache/camel/component/aws2/translate/integration/Translate2ProducerIntegrationTest.java
+++ 
b/components/camel-aws2-translate/src/test/java/org/apache/camel/component/aws2/translate/integration/Translate2ProducerIntegrationTest.java
@@ -27,7 +27,6 @@ import org.apache.camel.component.mock.MockEndpoint;
 import org.apache.camel.test.junit5.CamelTestSupport;
 import org.junit.jupiter.api.Disabled;
 import org.junit.jupiter.api.Test;
-
 import software.amazon.awssdk.services.translate.model.TranslateTextRequest;
 
 import static org.junit.jupiter.api.Assertions.assertEquals;
@@ -57,7 +56,7 @@ public class Translate2ProducerIntegrationTest extends 
CamelTestSupport {
         String resultGet = (String)exchange.getIn().getBody();
         assertEquals("Hallo, Miss.", resultGet);
     }
-    
+
     @Test
     public void translateTextPojoTest() throws Exception {
 
@@ -65,8 +64,9 @@ public class Translate2ProducerIntegrationTest extends 
CamelTestSupport {
         Exchange exchange = template.request("direct:translateTextPojo", new 
Processor() {
             @Override
             public void process(Exchange exchange) throws Exception {
-              
-                
exchange.getIn().setBody(TranslateTextRequest.builder().sourceLanguageCode(Translate2LanguageEnum.ITALIAN.toString()).targetLanguageCode(Translate2LanguageEnum.GERMAN.toString()).text("Ciao
 Signorina").build());
+
+                
exchange.getIn().setBody(TranslateTextRequest.builder().sourceLanguageCode(Translate2LanguageEnum.ITALIAN.toString())
+                    
.targetLanguageCode(Translate2LanguageEnum.GERMAN.toString()).text("Ciao 
Signorina").build());
             }
         });
 
@@ -103,7 +103,8 @@ public class Translate2ProducerIntegrationTest extends 
CamelTestSupport {
                 
from("direct:translateText").to("aws2-translate://test?accessKey=RAW(xxxx)&secretKey=RAW(yyyy)&region=eu-west-1&operation=translateText").to("mock:result");
                 from("direct:translateTextAuto")
                     
.to("aws2-translate://test?accessKey=RAW(xxxx)&secretKey=RAW(yyyy)&region=eu-west-1&operation=translateText&autodetectSourceLanguage=true").to("mock:result");
-                
from("direct:translateTextPojo").to("aws2-translate://test?accessKey=RAW(xxxx)&secretKey=RAW(yyyy)&region=eu-west-1&operation=translateText&pojoRequest=true").to("mock:result");
+                
from("direct:translateTextPojo").to("aws2-translate://test?accessKey=RAW(xxxx)&secretKey=RAW(yyyy)&region=eu-west-1&operation=translateText&pojoRequest=true")
+                    .to("mock:result");
             }
         };
     }

Reply via email to