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 ffc3fbfb1f17bd2de793a17d716426129cb9b7f4
Author: Andrea Cosentino <anco...@gmail.com>
AuthorDate: Wed Mar 31 11:21:21 2021 +0200

    Camel-AWS2-Lambda: Producer operations refactoring - createAlias
---
 .../component/aws2/lambda/Lambda2Producer.java     | 32 ++++++++--------------
 1 file changed, 12 insertions(+), 20 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 3005689..3cda5e8 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
@@ -615,43 +615,35 @@ public class Lambda2Producer extends DefaultProducer {
     }
 
     private void createAlias(LambdaClient lambdaClient, Exchange exchange) 
throws InvalidPayloadException {
+       CreateAliasRequest request = null;
+       CreateAliasResponse result;
         if (getConfiguration().isPojoRequest()) {
-            Object payload = exchange.getIn().getMandatoryBody();
-            if (payload instanceof CreateAliasRequest) {
-                CreateAliasResponse result;
-                try {
-                    result = lambdaClient.createAlias((CreateAliasRequest) 
payload);
-                } catch (AwsServiceException ase) {
-                    LOG.trace("createAlias command returned the error code 
{}", ase.awsErrorDetails().errorCode());
-                    throw ase;
-                }
-                Message message = getMessageForResponse(exchange);
-                message.setBody(result);
-            }
+            request = 
exchange.getIn().getMandatoryBody(CreateAliasRequest.class);
         } else {
-            CreateAliasResponse result;
-            try {
-                CreateAliasRequest.Builder request = 
CreateAliasRequest.builder().functionName(getEndpoint().getFunction());
+                CreateAliasRequest.Builder builder = 
CreateAliasRequest.builder();
+                builder.functionName(getEndpoint().getFunction());
                 String version = 
exchange.getIn().getHeader(Lambda2Constants.FUNCTION_VERSION, String.class);
                 String aliasName = 
exchange.getIn().getHeader(Lambda2Constants.FUNCTION_ALIAS_NAME, String.class);
                 if (ObjectHelper.isEmpty(version) || 
ObjectHelper.isEmpty(aliasName)) {
                     throw new IllegalArgumentException("Function Version and 
alias must be specified to create an alias");
                 }
-                request.functionVersion(version);
-                request.name(aliasName);
+                builder.functionVersion(version);
+                builder.name(aliasName);
                 if 
(ObjectHelper.isNotEmpty(exchange.getIn().getHeader(Lambda2Constants.FUNCTION_ALIAS_DESCRIPTION)))
 {
                     String aliasDescription
                             = 
exchange.getIn().getHeader(Lambda2Constants.FUNCTION_ALIAS_DESCRIPTION, 
String.class);
-                    request.description(aliasDescription);
+                    builder.description(aliasDescription);
                 }
-                result = lambdaClient.createAlias(request.build());
+                request = builder.build();
+        }
+        try {
+                result = lambdaClient.createAlias(request);
             } catch (AwsServiceException ase) {
                 LOG.trace("createAlias command returned the error code {}", 
ase.awsErrorDetails().errorCode());
                 throw ase;
             }
             Message message = getMessageForResponse(exchange);
             message.setBody(result);
-        }
     }
 
     private void deleteAlias(LambdaClient lambdaClient, Exchange exchange) 
throws InvalidPayloadException {

Reply via email to