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 c4323ff3330c1e2a58af342deb816a2ab91c770e
Author: Andrea Cosentino <anco...@gmail.com>
AuthorDate: Tue Mar 30 16:57:50 2021 +0200

    Camel-AWS2-Lambda: Producer operations refactoring - 
createEventSourceMapping
---
 .../component/aws2/lambda/Lambda2Producer.java     | 33 ++++++++--------------
 1 file changed, 12 insertions(+), 21 deletions(-)

diff --git 
a/components/camel-aws/camel-aws2-lambda/src/main/java/org/apache/camel/component/aws2/lambda/Lambda2Producer.java
 
b/components/camel-aws/camel-aws2-lambda/src/main/java/org/apache/camel/component/aws2/lambda/Lambda2Producer.java
index 04c87ab..ff83523 100644
--- 
a/components/camel-aws/camel-aws2-lambda/src/main/java/org/apache/camel/component/aws2/lambda/Lambda2Producer.java
+++ 
b/components/camel-aws/camel-aws2-lambda/src/main/java/org/apache/camel/component/aws2/lambda/Lambda2Producer.java
@@ -404,41 +404,32 @@ public class Lambda2Producer extends DefaultProducer {
     }
 
     private void createEventSourceMapping(LambdaClient lambdaClient, Exchange 
exchange) throws InvalidPayloadException {
-        if (getConfiguration().isPojoRequest()) {
-            Object payload = exchange.getIn().getMandatoryBody();
-            if (payload instanceof CreateEventSourceMappingRequest) {
-                CreateEventSourceMappingResponse result;
-                try {
-                    result = 
lambdaClient.createEventSourceMapping((CreateEventSourceMappingRequest) 
payload);
-                } catch (AwsServiceException ase) {
-                    LOG.trace("createEventSourceMapping command returned the 
error code {}", ase.awsErrorDetails().errorCode());
-                    throw ase;
-                }
-                Message message = getMessageForResponse(exchange);
-                message.setBody(result);
-            }
+        CreateEventSourceMappingRequest request = null;
+        CreateEventSourceMappingResponse result;
+       if (getConfiguration().isPojoRequest()) {
+            request = 
exchange.getIn().getMandatoryBody(CreateEventSourceMappingRequest.class);
         } else {
-            CreateEventSourceMappingResponse result;
-            try {
-                CreateEventSourceMappingRequest.Builder request
-                        = 
CreateEventSourceMappingRequest.builder().functionName(getEndpoint().getFunction());
+                CreateEventSourceMappingRequest.Builder builder = 
CreateEventSourceMappingRequest.builder();
+                builder.functionName(getEndpoint().getFunction());
                 if 
(ObjectHelper.isNotEmpty(exchange.getIn().getHeader(Lambda2Constants.EVENT_SOURCE_ARN)))
 {
-                    
request.eventSourceArn(exchange.getIn().getHeader(Lambda2Constants.EVENT_SOURCE_ARN,
 String.class));
+                       
builder.eventSourceArn(exchange.getIn().getHeader(Lambda2Constants.EVENT_SOURCE_ARN,
 String.class));
                 } else {
                     throw new IllegalArgumentException("Event Source Arn must 
be specified");
                 }
                 if 
(ObjectHelper.isNotEmpty(exchange.getIn().getHeader(Lambda2Constants.EVENT_SOURCE_BATCH_SIZE)))
 {
                     Integer batchSize = 
exchange.getIn().getHeader(Lambda2Constants.EVENT_SOURCE_BATCH_SIZE, 
Integer.class);
-                    request.batchSize(batchSize);
+                    builder.batchSize(batchSize);
                 }
-                result = 
lambdaClient.createEventSourceMapping(request.build());
+                request = builder.build();
+        }
+            try {
+                result = lambdaClient.createEventSourceMapping(request);
             } catch (AwsServiceException ase) {
                 LOG.trace("createEventSourceMapping command returned the error 
code {}", ase.awsErrorDetails().errorCode());
                 throw ase;
             }
             Message message = getMessageForResponse(exchange);
             message.setBody(result);
-        }
     }
 
     private void deleteEventSourceMapping(LambdaClient lambdaClient, Exchange 
exchange) throws InvalidPayloadException {

Reply via email to