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 {