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 0b3476a2893a242760e2f1944cfe635c0a77f661 Author: Andrea Cosentino <[email protected]> AuthorDate: Thu Apr 16 15:19:11 2020 +0200 CAMEL-14868 - Camel-AWS2-*: Where possible, give the possiblity to the end user to pass an AWS Request pojo as body, aws2-s3 regen --- .../aws2/s3/AWS2S3ComponentConfigurer.java | 5 ++ .../aws2/s3/AWS2S3EndpointConfigurer.java | 5 ++ .../apache/camel/component/aws2/s3/aws2-s3.json | 2 + .../src/main/docs/aws2-s3-component.adoc | 6 +- .../camel/component/aws2/s3/AWS2S3Producer.java | 2 - .../dsl/Aws2S3ComponentBuilderFactory.java | 13 ++++ .../endpoint/dsl/AWS2S3EndpointBuilderFactory.java | 72 ++++++++++++++++++++++ 7 files changed, 101 insertions(+), 4 deletions(-) diff --git a/components/camel-aws2-s3/src/generated/java/org/apache/camel/component/aws2/s3/AWS2S3ComponentConfigurer.java b/components/camel-aws2-s3/src/generated/java/org/apache/camel/component/aws2/s3/AWS2S3ComponentConfigurer.java index a444b9b..a52e6f2 100644 --- a/components/camel-aws2-s3/src/generated/java/org/apache/camel/component/aws2/s3/AWS2S3ComponentConfigurer.java +++ b/components/camel-aws2-s3/src/generated/java/org/apache/camel/component/aws2/s3/AWS2S3ComponentConfigurer.java @@ -63,6 +63,8 @@ public class AWS2S3ComponentConfigurer extends PropertyConfigurerSupport impleme case "overrideEndpoint": getOrCreateConfiguration(target).setOverrideEndpoint(property(camelContext, boolean.class, value)); return true; case "partsize": case "partSize": getOrCreateConfiguration(target).setPartSize(property(camelContext, long.class, value)); return true; + case "pojorequest": + case "pojoRequest": getOrCreateConfiguration(target).setPojoRequest(property(camelContext, boolean.class, value)); return true; case "policy": getOrCreateConfiguration(target).setPolicy(property(camelContext, java.lang.String.class, value)); return true; case "prefix": getOrCreateConfiguration(target).setPrefix(property(camelContext, java.lang.String.class, value)); return true; case "proxyhost": @@ -109,6 +111,7 @@ public class AWS2S3ComponentConfigurer extends PropertyConfigurerSupport impleme answer.put("operation", org.apache.camel.component.aws2.s3.AWS2S3Operations.class); answer.put("overrideEndpoint", boolean.class); answer.put("partSize", long.class); + answer.put("pojoRequest", boolean.class); answer.put("policy", java.lang.String.class); answer.put("prefix", java.lang.String.class); answer.put("proxyHost", java.lang.String.class); @@ -164,6 +167,8 @@ public class AWS2S3ComponentConfigurer extends PropertyConfigurerSupport impleme case "overrideEndpoint": return getOrCreateConfiguration(target).isOverrideEndpoint(); case "partsize": case "partSize": return getOrCreateConfiguration(target).getPartSize(); + case "pojorequest": + case "pojoRequest": return getOrCreateConfiguration(target).isPojoRequest(); case "policy": return getOrCreateConfiguration(target).getPolicy(); case "prefix": return getOrCreateConfiguration(target).getPrefix(); case "proxyhost": diff --git a/components/camel-aws2-s3/src/generated/java/org/apache/camel/component/aws2/s3/AWS2S3EndpointConfigurer.java b/components/camel-aws2-s3/src/generated/java/org/apache/camel/component/aws2/s3/AWS2S3EndpointConfigurer.java index 50acf25..255e552 100644 --- a/components/camel-aws2-s3/src/generated/java/org/apache/camel/component/aws2/s3/AWS2S3EndpointConfigurer.java +++ b/components/camel-aws2-s3/src/generated/java/org/apache/camel/component/aws2/s3/AWS2S3EndpointConfigurer.java @@ -73,6 +73,8 @@ public class AWS2S3EndpointConfigurer extends PropertyConfigurerSupport implemen case "overrideEndpoint": target.getConfiguration().setOverrideEndpoint(property(camelContext, boolean.class, value)); return true; case "partsize": case "partSize": target.getConfiguration().setPartSize(property(camelContext, long.class, value)); return true; + case "pojorequest": + case "pojoRequest": target.getConfiguration().setPojoRequest(property(camelContext, boolean.class, value)); return true; case "policy": target.getConfiguration().setPolicy(property(camelContext, java.lang.String.class, value)); return true; case "pollstrategy": case "pollStrategy": target.setPollStrategy(property(camelContext, org.apache.camel.spi.PollingConsumerPollStrategy.class, value)); return true; @@ -148,6 +150,7 @@ public class AWS2S3EndpointConfigurer extends PropertyConfigurerSupport implemen answer.put("operation", org.apache.camel.component.aws2.s3.AWS2S3Operations.class); answer.put("overrideEndpoint", boolean.class); answer.put("partSize", long.class); + answer.put("pojoRequest", boolean.class); answer.put("policy", java.lang.String.class); answer.put("pollStrategy", org.apache.camel.spi.PollingConsumerPollStrategy.class); answer.put("prefix", java.lang.String.class); @@ -231,6 +234,8 @@ public class AWS2S3EndpointConfigurer extends PropertyConfigurerSupport implemen case "overrideEndpoint": return target.getConfiguration().isOverrideEndpoint(); case "partsize": case "partSize": return target.getConfiguration().getPartSize(); + case "pojorequest": + case "pojoRequest": return target.getConfiguration().isPojoRequest(); case "policy": return target.getConfiguration().getPolicy(); case "pollstrategy": case "pollStrategy": return target.getPollStrategy(); diff --git a/components/camel-aws2-s3/src/generated/resources/org/apache/camel/component/aws2/s3/aws2-s3.json b/components/camel-aws2-s3/src/generated/resources/org/apache/camel/component/aws2/s3/aws2-s3.json index de48b06..2e5330d 100644 --- a/components/camel-aws2-s3/src/generated/resources/org/apache/camel/component/aws2/s3/aws2-s3.json +++ b/components/camel-aws2-s3/src/generated/resources/org/apache/camel/component/aws2/s3/aws2-s3.json @@ -25,6 +25,7 @@ "autoCreateBucket": { "kind": "property", "displayName": "Auto Create Bucket", "group": "common", "label": "common", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "configurationClass": "org.apache.camel.component.aws2.s3.AWS2S3Configuration", "configurationField": "configuration", "description": "Setting the autocreation of the bucket" }, "configuration": { "kind": "property", "displayName": "Configuration", "group": "common", "label": "", "required": false, "type": "object", "javaType": "org.apache.camel.component.aws2.s3.AWS2S3Configuration", "deprecated": false, "secret": false, "description": "The component configuration" }, "overrideEndpoint": { "kind": "property", "displayName": "Override Endpoint", "group": "common", "label": "", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "false", "configurationClass": "org.apache.camel.component.aws2.s3.AWS2S3Configuration", "configurationField": "configuration", "description": "Set the need for overidding the endpoint. This option needs to be used in combination with uriEndpointOverride option" }, + "pojoRequest": { "kind": "property", "displayName": "Pojo Request", "group": "common", "label": "", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "false", "configurationClass": "org.apache.camel.component.aws2.s3.AWS2S3Configuration", "configurationField": "configuration", "description": "If we want to use a POJO request as body or not" }, "policy": { "kind": "property", "displayName": "Policy", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "configurationClass": "org.apache.camel.component.aws2.s3.AWS2S3Configuration", "configurationField": "configuration", "description": "The policy for this queue to set in the com.amazonaws.services.s3.AmazonS3#setBucketPolicy() method." }, "proxyHost": { "kind": "property", "displayName": "Proxy Host", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "configurationClass": "org.apache.camel.component.aws2.s3.AWS2S3Configuration", "configurationField": "configuration", "description": "To define a proxy host when instantiating the SQS client" }, "proxyPort": { "kind": "property", "displayName": "Proxy Port", "group": "common", "label": "", "required": false, "type": "integer", "javaType": "java.lang.Integer", "deprecated": false, "secret": false, "configurationClass": "org.apache.camel.component.aws2.s3.AWS2S3Configuration", "configurationField": "configuration", "description": "Specify a proxy port to be used inside the client definition." }, @@ -58,6 +59,7 @@ "amazonS3Client": { "kind": "parameter", "displayName": "Amazon S3 Client", "group": "common", "label": "", "required": false, "type": "object", "javaType": "software.amazon.awssdk.services.s3.S3Client", "deprecated": false, "secret": false, "configurationClass": "org.apache.camel.component.aws2.s3.AWS2S3Configuration", "configurationField": "configuration", "description": "Reference to a com.amazonaws.services.s3.AmazonS3 in the registry." }, "autoCreateBucket": { "kind": "parameter", "displayName": "Auto Create Bucket", "group": "common", "label": "common", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "true", "configurationClass": "org.apache.camel.component.aws2.s3.AWS2S3Configuration", "configurationField": "configuration", "description": "Setting the autocreation of the bucket" }, "overrideEndpoint": { "kind": "parameter", "displayName": "Override Endpoint", "group": "common", "label": "", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "false", "configurationClass": "org.apache.camel.component.aws2.s3.AWS2S3Configuration", "configurationField": "configuration", "description": "Set the need for overidding the endpoint. This option needs to be used in combination with uriEndpointOverride option" }, + "pojoRequest": { "kind": "parameter", "displayName": "Pojo Request", "group": "common", "label": "", "required": false, "type": "boolean", "javaType": "boolean", "deprecated": false, "secret": false, "defaultValue": "false", "configurationClass": "org.apache.camel.component.aws2.s3.AWS2S3Configuration", "configurationField": "configuration", "description": "If we want to use a POJO request as body or not" }, "policy": { "kind": "parameter", "displayName": "Policy", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "configurationClass": "org.apache.camel.component.aws2.s3.AWS2S3Configuration", "configurationField": "configuration", "description": "The policy for this queue to set in the com.amazonaws.services.s3.AmazonS3#setBucketPolicy() method." }, "proxyHost": { "kind": "parameter", "displayName": "Proxy Host", "group": "common", "label": "", "required": false, "type": "string", "javaType": "java.lang.String", "deprecated": false, "secret": false, "configurationClass": "org.apache.camel.component.aws2.s3.AWS2S3Configuration", "configurationField": "configuration", "description": "To define a proxy host when instantiating the SQS client" }, "proxyPort": { "kind": "parameter", "displayName": "Proxy Port", "group": "common", "label": "", "required": false, "type": "integer", "javaType": "java.lang.Integer", "deprecated": false, "secret": false, "configurationClass": "org.apache.camel.component.aws2.s3.AWS2S3Configuration", "configurationField": "configuration", "description": "Specify a proxy port to be used inside the client definition." }, diff --git a/components/camel-aws2-s3/src/main/docs/aws2-s3-component.adoc b/components/camel-aws2-s3/src/main/docs/aws2-s3-component.adoc index 6993877..677e49f 100644 --- a/components/camel-aws2-s3/src/main/docs/aws2-s3-component.adoc +++ b/components/camel-aws2-s3/src/main/docs/aws2-s3-component.adoc @@ -47,7 +47,7 @@ from("aws2-s3://helloBucket?accessKey=yourAccessKey&secretKey=yourSecretKey&pref // component options: START -The AWS2 S3 Storage Service component supports 31 options, which are listed below. +The AWS2 S3 Storage Service component supports 32 options, which are listed below. @@ -58,6 +58,7 @@ The AWS2 S3 Storage Service component supports 31 options, which are listed belo | *autoCreateBucket* (common) | Setting the autocreation of the bucket | true | boolean | *configuration* (common) | The component configuration | | AWS2S3Configuration | *overrideEndpoint* (common) | Set the need for overidding the endpoint. This option needs to be used in combination with uriEndpointOverride option | false | boolean +| *pojoRequest* (common) | If we want to use a POJO request as body or not | false | boolean | *policy* (common) | The policy for this queue to set in the com.amazonaws.services.s3.AmazonS3#setBucketPolicy() method. | | String | *proxyHost* (common) | To define a proxy host when instantiating the SQS client | | String | *proxyPort* (common) | Specify a proxy port to be used inside the client definition. | | Integer @@ -117,7 +118,7 @@ with the following path and query parameters: |=== -=== Query Parameters (51 parameters): +=== Query Parameters (52 parameters): [width="100%",cols="2,5,^1,2",options="header"] @@ -126,6 +127,7 @@ with the following path and query parameters: | *amazonS3Client* (common) | Reference to a com.amazonaws.services.s3.AmazonS3 in the registry. | | S3Client | *autoCreateBucket* (common) | Setting the autocreation of the bucket | true | boolean | *overrideEndpoint* (common) | Set the need for overidding the endpoint. This option needs to be used in combination with uriEndpointOverride option | false | boolean +| *pojoRequest* (common) | If we want to use a POJO request as body or not | false | boolean | *policy* (common) | The policy for this queue to set in the com.amazonaws.services.s3.AmazonS3#setBucketPolicy() method. | | String | *proxyHost* (common) | To define a proxy host when instantiating the SQS client | | String | *proxyPort* (common) | Specify a proxy port to be used inside the client definition. | | Integer diff --git a/components/camel-aws2-s3/src/main/java/org/apache/camel/component/aws2/s3/AWS2S3Producer.java b/components/camel-aws2-s3/src/main/java/org/apache/camel/component/aws2/s3/AWS2S3Producer.java index da51499..e5f35a1 100644 --- a/components/camel-aws2-s3/src/main/java/org/apache/camel/component/aws2/s3/AWS2S3Producer.java +++ b/components/camel-aws2-s3/src/main/java/org/apache/camel/component/aws2/s3/AWS2S3Producer.java @@ -39,8 +39,6 @@ import org.apache.camel.util.ObjectHelper; import org.apache.camel.util.URISupport; import org.slf4j.Logger; import org.slf4j.LoggerFactory; - -import software.amazon.awssdk.awscore.exception.AwsServiceException; import software.amazon.awssdk.core.ResponseInputStream; import software.amazon.awssdk.core.SdkBytes; import software.amazon.awssdk.core.sync.RequestBody; diff --git a/core/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/Aws2S3ComponentBuilderFactory.java b/core/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/Aws2S3ComponentBuilderFactory.java index 4255b4e..d95ecd2 100644 --- a/core/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/Aws2S3ComponentBuilderFactory.java +++ b/core/camel-componentdsl/src/generated/java/org/apache/camel/builder/component/dsl/Aws2S3ComponentBuilderFactory.java @@ -103,6 +103,18 @@ public interface Aws2S3ComponentBuilderFactory { return this; } /** + * If we want to use a POJO request as body or not. + * + * The option is a: <code>boolean</code> type. + * + * Default: false + * Group: common + */ + default Aws2S3ComponentBuilder pojoRequest(boolean pojoRequest) { + doSetProperty("pojoRequest", pojoRequest); + return this; + } + /** * The policy for this queue to set in the * com.amazonaws.services.s3.AmazonS3#setBucketPolicy() method. * @@ -500,6 +512,7 @@ public interface Aws2S3ComponentBuilderFactory { case "autoCreateBucket": getOrCreateConfiguration((AWS2S3Component) component).setAutoCreateBucket((boolean) value); return true; case "configuration": ((AWS2S3Component) component).setConfiguration((org.apache.camel.component.aws2.s3.AWS2S3Configuration) value); return true; case "overrideEndpoint": getOrCreateConfiguration((AWS2S3Component) component).setOverrideEndpoint((boolean) value); return true; + case "pojoRequest": getOrCreateConfiguration((AWS2S3Component) component).setPojoRequest((boolean) value); return true; case "policy": getOrCreateConfiguration((AWS2S3Component) component).setPolicy((java.lang.String) value); return true; case "proxyHost": getOrCreateConfiguration((AWS2S3Component) component).setProxyHost((java.lang.String) value); return true; case "proxyPort": getOrCreateConfiguration((AWS2S3Component) component).setProxyPort((java.lang.Integer) value); return true; diff --git a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/AWS2S3EndpointBuilderFactory.java b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/AWS2S3EndpointBuilderFactory.java index 176585b..865040a 100644 --- a/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/AWS2S3EndpointBuilderFactory.java +++ b/core/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/AWS2S3EndpointBuilderFactory.java @@ -128,6 +128,30 @@ public interface AWS2S3EndpointBuilderFactory { return this; } /** + * If we want to use a POJO request as body or not. + * + * The option is a: <code>boolean</code> type. + * + * Default: false + * Group: common + */ + default AWS2S3EndpointConsumerBuilder pojoRequest(boolean pojoRequest) { + doSetProperty("pojoRequest", pojoRequest); + return this; + } + /** + * If we want to use a POJO request as body or not. + * + * The option will be converted to a <code>boolean</code> type. + * + * Default: false + * Group: common + */ + default AWS2S3EndpointConsumerBuilder pojoRequest(String pojoRequest) { + doSetProperty("pojoRequest", pojoRequest); + return this; + } + /** * The policy for this queue to set in the * com.amazonaws.services.s3.AmazonS3#setBucketPolicy() method. * @@ -1195,6 +1219,30 @@ public interface AWS2S3EndpointBuilderFactory { return this; } /** + * If we want to use a POJO request as body or not. + * + * The option is a: <code>boolean</code> type. + * + * Default: false + * Group: common + */ + default AWS2S3EndpointProducerBuilder pojoRequest(boolean pojoRequest) { + doSetProperty("pojoRequest", pojoRequest); + return this; + } + /** + * If we want to use a POJO request as body or not. + * + * The option will be converted to a <code>boolean</code> type. + * + * Default: false + * Group: common + */ + default AWS2S3EndpointProducerBuilder pojoRequest(String pojoRequest) { + doSetProperty("pojoRequest", pojoRequest); + return this; + } + /** * The policy for this queue to set in the * com.amazonaws.services.s3.AmazonS3#setBucketPolicy() method. * @@ -1709,6 +1757,30 @@ public interface AWS2S3EndpointBuilderFactory { return this; } /** + * If we want to use a POJO request as body or not. + * + * The option is a: <code>boolean</code> type. + * + * Default: false + * Group: common + */ + default AWS2S3EndpointBuilder pojoRequest(boolean pojoRequest) { + doSetProperty("pojoRequest", pojoRequest); + return this; + } + /** + * If we want to use a POJO request as body or not. + * + * The option will be converted to a <code>boolean</code> type. + * + * Default: false + * Group: common + */ + default AWS2S3EndpointBuilder pojoRequest(String pojoRequest) { + doSetProperty("pojoRequest", pojoRequest); + return this; + } + /** * The policy for this queue to set in the * com.amazonaws.services.s3.AmazonS3#setBucketPolicy() method. *
