This is an automated email from the ASF dual-hosted git repository.
davsclaus pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel.git
The following commit(s) were added to refs/heads/main by this push:
new 7312972b270 CAMEL-21347: camel-aws-s3 - Head bucket operation to store
header with true|false instead of throwing exception (#15957)
7312972b270 is described below
commit 7312972b2700b9a3a9cd657f6978cc6dbc1a3ff8
Author: Claus Ibsen <[email protected]>
AuthorDate: Tue Oct 15 13:19:06 2024 +0200
CAMEL-21347: camel-aws-s3 - Head bucket operation to store header with
true|false instead of throwing exception (#15957)
---
.../apache/camel/catalog/components/aws2-s3.json | 67 +++++++++++-----------
.../apache/camel/component/aws2/s3/aws2-s3.json | 67 +++++++++++-----------
.../camel/component/aws2/s3/AWS2S3Constants.java | 3 +
.../camel/component/aws2/s3/AWS2S3Producer.java | 13 ++++-
.../aws2/s3/integration/S3HeadBucketIT.java | 27 ++++-----
.../ROOT/pages/camel-4x-upgrade-guide-4_9.adoc | 10 ++++
.../endpoint/dsl/AWS2S3EndpointBuilderFactory.java | 12 ++++
7 files changed, 117 insertions(+), 82 deletions(-)
diff --git
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws2-s3.json
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws2-s3.json
index 8a3360ed82c..386dfdd7ac2 100644
---
a/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws2-s3.json
+++
b/catalog/camel-catalog/src/generated/resources/org/apache/camel/catalog/components/aws2-s3.json
@@ -89,39 +89,40 @@
"CamelAwsS3BucketName": { "index": 0, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The bucket Name (can be dynamic using the simple
language in the producer) which this object will be stored or which will be
used for the current operation or in which this object is contained.",
"constantName": "org.apache.camel.component.aws [...]
"CamelAwsS3ProducedBucketName": { "index": 1, "kind": "header",
"displayName": "", "group": "producer", "label": "producer", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "The computed bucket name that was used
by the producer such as to get or put an s3 object", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#PRODUCED_BUCKET_NAME" },
"CamelAwsS3BucketDestinationName": { "index": 2, "kind": "header",
"displayName": "", "group": "producer", "label": "producer", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "The bucket Destination Name which will
be used for the current operation", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#BUCKET_DESTINATION_NAME" },
- "CamelAwsS3ContentControl": { "index": 3, "kind": "header", "displayName":
"", "group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The optional Cache-Control HTTP header which allows the
user to specify caching behavior along the HTTP request\/reply chain.",
"constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#CACHE_CONTROL" },
- "CamelAwsS3ContentDisposition": { "index": 4, "kind": "header",
"displayName": "", "group": "common", "label": "", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "The optional Content-Disposition HTTP
header, which specifies presentational information such as the recommended
filename for the object to be saved as.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#CONTENT_DISP [...]
- "CamelAwsS3ContentEncoding": { "index": 5, "kind": "header",
"displayName": "", "group": "common", "label": "", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "The optional Content-Encoding HTTP
header specifying what content encodings have been applied to the object and
what decoding mechanisms must be applied in order to obtain the media-type
referenced by the Content-Type field.", "constantNa [...]
- "CamelAwsS3ContentLength": { "index": 6, "kind": "header", "displayName":
"", "group": "common", "label": "", "required": false, "javaType": "Long",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The Content-Length HTTP header indicating the size of
the associated object in bytes.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#CONTENT_LENGTH" },
- "CamelAwsS3ContentMD5": { "index": 7, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The base64 encoded 128-bit MD5 digest of the associated
object (content - not including headers) according to RFC 1864. This data is
used as a message integrity check to verify that the data received by Amazon S3
is the same data that the call [...]
- "CamelAwsS3ContentType": { "index": 8, "kind": "header", "displayName":
"", "group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The Content-Type HTTP header, which indicates the type
of content stored in the associated object. The value of this header is a
standard MIME type.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#CONTENT_TYPE" },
- "CamelAwsS3ETag": { "index": 9, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "(producer) The ETag value for the newly uploaded object.
(consumer) The hex encoded 128-bit MD5 digest of the associated object
according to RFC 1864. This data is used as an integrity check to verify that
the data received by the caller is the same [...]
- "CamelAwsS3Key": { "index": 10, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The key (can be dynamic using the simple language in the
producer) under which this object is stored or will be stored or which will be
used for the current operation", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#KEY" },
- "CamelAwsS3ProducedKey": { "index": 11, "kind": "header", "displayName":
"", "group": "producer", "label": "producer", "required": false, "javaType":
"String", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "description": "The computed key that was used for retrieving
this object", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#PRODUCED_KEY" },
- "CamelAwsS3DestinationKey": { "index": 12, "kind": "header",
"displayName": "", "group": "producer", "label": "producer", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "The Destination key which will be used
for the current operation", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#DESTINATION_KEY" },
- "CamelAwsS3LastModified": { "index": 13, "kind": "header", "displayName":
"", "group": "common", "label": "", "required": false, "javaType": "Date",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The value of the Last-Modified header, indicating the
date and time at which Amazon S3 last recorded a modification to the associated
object.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#LAST_MODIFIED" },
- "CamelAwsS3StorageClass": { "index": 14, "kind": "header", "displayName":
"", "group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The storage class of this object.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#STORAGE_CLASS" },
- "CamelAwsS3VersionId": { "index": 15, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "(producer) The optional version ID of the newly uploaded
object. (consumer) The version ID of the associated Amazon S3 object if
available. Version IDs are only assigned to objects when an object is uploaded
to an Amazon S3 bucket that has obj [...]
- "CamelAwsS3CannedAcl": { "index": 16, "kind": "header", "displayName": "",
"group": "producer", "label": "producer", "required": false, "javaType":
"String", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "description": "The canned acl that will be applied to the
object. see software.amazon.awssdk.services.s3.model.ObjectCannedACL for
allowed values.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#CANNED_ACL" },
- "CamelAwsS3Acl": { "index": 17, "kind": "header", "displayName": "",
"group": "producer", "label": "producer", "required": false, "javaType":
"software.amazon.awssdk.services.s3.model.BucketCannedACL", "enum": [
"private", "public-read", "public-read-write", "authenticated-read", "null" ],
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "A well constructed Amazon S3 Access Control List
object.", "constantName": "org.apache.camel.compone [...]
- "CamelAwsS3Operation": { "index": 18, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The operation to perform. Permitted values are
copyObject, deleteObject, listBuckets, deleteBucket, listObjects",
"constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#S3_OPERATION" },
- "CamelAwsS3ServerSideEncryption": { "index": 19, "kind": "header",
"displayName": "", "group": "common", "label": "", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "Sets the server-side encryption
algorithm when encrypting the object using AWS-managed keys. For example use
AES256.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#SERVER_SIDE_ENCRYPTION" },
- "CamelAwsS3ExpirationTime": { "index": 20, "kind": "header",
"displayName": "", "group": "consumer", "label": "consumer", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "If the object expiration is configured
(see PUT Bucket lifecycle), the response includes this header.",
"constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#EXPIRATION_TIME" },
- "CamelAwsS3ReplicationStatus": { "index": 21, "kind": "header",
"displayName": "", "group": "consumer", "label": "consumer", "required": false,
"javaType": "software.amazon.awssdk.services.s3.model.ReplicationStatus",
"enum": [ "COMPLETE", "PENDING", "FAILED", "REPLICA", "COMPLETED", "null" ],
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "Amazon S3 can return this if your request involves a
bucket that is either a source or destinati [...]
- "CamelAwsS3RangeStart": { "index": 22, "kind": "header", "displayName":
"", "group": "producer", "label": "producer", "required": false, "javaType":
"String", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "description": "The position of the first byte to get",
"constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#RANGE_START" },
- "CamelAwsS3RangeEnd": { "index": 23, "kind": "header", "displayName": "",
"group": "producer", "label": "producer", "required": false, "javaType":
"String", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "description": "The position of the last byte to get",
"constantName": "org.apache.camel.component.aws2.s3.AWS2S3Constants#RANGE_END"
},
- "CamelAwsS3DowloadLinkExpirationTime": { "index": 24, "kind": "header",
"displayName": "", "group": "producer", "label": "producer", "required": false,
"javaType": "Long", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "The expiration time of the download
link in milliseconds", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#DOWNLOAD_LINK_EXPIRATION_TIME"
},
- "CamelAwsS3DownloadLinkBrowserCompatible": { "index": 25, "kind":
"header", "displayName": "", "group": "producer", "label": "producer",
"required": false, "javaType": "boolean", "deprecated": false,
"deprecationNote": "", "autowired": false, "secret": false, "description":
"Whether the download link is browser compatible", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#DOWNLOAD_LINK_BROWSER_COMPATIBLE"
},
- "CamelAwsS3DownloadLinkHttpRequestHeaders": { "index": 26, "kind":
"header", "displayName": "", "group": "producer", "label": "producer",
"required": false, "javaType": "Map<String, List<String>>", "deprecated":
false, "deprecationNote": "", "autowired": false, "secret": false,
"description": "The headers that are needed by the service (not needed when
BrowserCompatible is true)", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#DOWNLOAD_LINK_HTTP_REQUEST_HEADERS"
},
- "CamelAwsS3DownloadLinkSignedPayload": { "index": 27, "kind": "header",
"displayName": "", "group": "producer", "label": "producer", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "The request payload that is needed by
the service (not needed when BrowserCompatible is true)", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#DOWNLOAD_LINK_SIGNED_PAYLOAD"
},
- "CamelAwsS3Metadata": { "index": 28, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "Map<String,
String>", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "description": "A map of metadata to be stored or stored with
the object in S3. More details about metadata
https:\/\/docs.aws.amazon.com\/AmazonS3\/latest\/userguide\/UsingMetadata.htmlhere.",
"constantName": "org.apache.camel.component.aws2.s3.A [...]
- "CamelMessageTimestamp": { "index": 29, "kind": "header", "displayName":
"", "group": "consumer", "label": "consumer", "required": false, "javaType":
"long", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "description": "The timestamp of the message", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#MESSAGE_TIMESTAMP" },
- "CamelAwsS3Prefix": { "index": 30, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The prefix which is used in the
com.amazonaws.services.s3.model.ListObjectsRequest to only list objects we are
interested in", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#PREFIX" },
- "CamelAwsS3Delimiter": { "index": 31, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The delimiter which is used in the
com.amazonaws.services.s3.model.ListObjectsRequest to only list objects we are
interested in", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#DELIMITER" },
- "CamelAwsS3IfMatchCondition": { "index": 32, "kind": "header",
"displayName": "", "group": "common", "label": "", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "Return\/copy the object only if its
entity tag (ETag) is the same as the one specified in this header.",
"constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#IF_MATCH_CONDITION" },
- "CamelAwsS3IfModifiedSinceCondition": { "index": 33, "kind": "header",
"displayName": "", "group": "common", "label": "", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "Return\/copy the object only if it has
been modified since the specified time; otherwise, return a 304 Not Modified
error.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#IF_MODIFIED_SINCE_CONDITION"
},
- "CamelAwsS3IfNoneMatchCondition": { "index": 34, "kind": "header",
"displayName": "", "group": "common", "label": "", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "Return\/copy the object only if its
entity tag (ETag) is different from the one specified in this header.",
"constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#IF_NONE_MATCH_CONDITION" },
- "CamelAwsS3IfUnmodifiedSinceCondition": { "index": 35, "kind": "header",
"displayName": "", "group": "common", "label": "", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "Return\/copy the object only if it has
not been modified since the specified time.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#IF_UNMODIFIED_SINCE_CONDITION"
}
+ "CamelAwsS3BucketExists": { "index": 3, "kind": "header", "displayName":
"", "group": "common", "label": "", "required": false, "javaType": "boolean",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "Whether the bucket exists when using the headBucket
operation", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#BUCKET_EXISTS" },
+ "CamelAwsS3ContentControl": { "index": 4, "kind": "header", "displayName":
"", "group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The optional Cache-Control HTTP header which allows the
user to specify caching behavior along the HTTP request\/reply chain.",
"constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#CACHE_CONTROL" },
+ "CamelAwsS3ContentDisposition": { "index": 5, "kind": "header",
"displayName": "", "group": "common", "label": "", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "The optional Content-Disposition HTTP
header, which specifies presentational information such as the recommended
filename for the object to be saved as.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#CONTENT_DISP [...]
+ "CamelAwsS3ContentEncoding": { "index": 6, "kind": "header",
"displayName": "", "group": "common", "label": "", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "The optional Content-Encoding HTTP
header specifying what content encodings have been applied to the object and
what decoding mechanisms must be applied in order to obtain the media-type
referenced by the Content-Type field.", "constantNa [...]
+ "CamelAwsS3ContentLength": { "index": 7, "kind": "header", "displayName":
"", "group": "common", "label": "", "required": false, "javaType": "Long",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The Content-Length HTTP header indicating the size of
the associated object in bytes.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#CONTENT_LENGTH" },
+ "CamelAwsS3ContentMD5": { "index": 8, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The base64 encoded 128-bit MD5 digest of the associated
object (content - not including headers) according to RFC 1864. This data is
used as a message integrity check to verify that the data received by Amazon S3
is the same data that the call [...]
+ "CamelAwsS3ContentType": { "index": 9, "kind": "header", "displayName":
"", "group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The Content-Type HTTP header, which indicates the type
of content stored in the associated object. The value of this header is a
standard MIME type.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#CONTENT_TYPE" },
+ "CamelAwsS3ETag": { "index": 10, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "(producer) The ETag value for the newly uploaded object.
(consumer) The hex encoded 128-bit MD5 digest of the associated object
according to RFC 1864. This data is used as an integrity check to verify that
the data received by the caller is the sam [...]
+ "CamelAwsS3Key": { "index": 11, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The key (can be dynamic using the simple language in the
producer) under which this object is stored or will be stored or which will be
used for the current operation", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#KEY" },
+ "CamelAwsS3ProducedKey": { "index": 12, "kind": "header", "displayName":
"", "group": "producer", "label": "producer", "required": false, "javaType":
"String", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "description": "The computed key that was used for retrieving
this object", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#PRODUCED_KEY" },
+ "CamelAwsS3DestinationKey": { "index": 13, "kind": "header",
"displayName": "", "group": "producer", "label": "producer", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "The Destination key which will be used
for the current operation", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#DESTINATION_KEY" },
+ "CamelAwsS3LastModified": { "index": 14, "kind": "header", "displayName":
"", "group": "common", "label": "", "required": false, "javaType": "Date",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The value of the Last-Modified header, indicating the
date and time at which Amazon S3 last recorded a modification to the associated
object.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#LAST_MODIFIED" },
+ "CamelAwsS3StorageClass": { "index": 15, "kind": "header", "displayName":
"", "group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The storage class of this object.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#STORAGE_CLASS" },
+ "CamelAwsS3VersionId": { "index": 16, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "(producer) The optional version ID of the newly uploaded
object. (consumer) The version ID of the associated Amazon S3 object if
available. Version IDs are only assigned to objects when an object is uploaded
to an Amazon S3 bucket that has obj [...]
+ "CamelAwsS3CannedAcl": { "index": 17, "kind": "header", "displayName": "",
"group": "producer", "label": "producer", "required": false, "javaType":
"String", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "description": "The canned acl that will be applied to the
object. see software.amazon.awssdk.services.s3.model.ObjectCannedACL for
allowed values.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#CANNED_ACL" },
+ "CamelAwsS3Acl": { "index": 18, "kind": "header", "displayName": "",
"group": "producer", "label": "producer", "required": false, "javaType":
"software.amazon.awssdk.services.s3.model.BucketCannedACL", "enum": [
"private", "public-read", "public-read-write", "authenticated-read", "null" ],
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "A well constructed Amazon S3 Access Control List
object.", "constantName": "org.apache.camel.compone [...]
+ "CamelAwsS3Operation": { "index": 19, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The operation to perform. Permitted values are
copyObject, deleteObject, listBuckets, deleteBucket, listObjects",
"constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#S3_OPERATION" },
+ "CamelAwsS3ServerSideEncryption": { "index": 20, "kind": "header",
"displayName": "", "group": "common", "label": "", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "Sets the server-side encryption
algorithm when encrypting the object using AWS-managed keys. For example use
AES256.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#SERVER_SIDE_ENCRYPTION" },
+ "CamelAwsS3ExpirationTime": { "index": 21, "kind": "header",
"displayName": "", "group": "consumer", "label": "consumer", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "If the object expiration is configured
(see PUT Bucket lifecycle), the response includes this header.",
"constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#EXPIRATION_TIME" },
+ "CamelAwsS3ReplicationStatus": { "index": 22, "kind": "header",
"displayName": "", "group": "consumer", "label": "consumer", "required": false,
"javaType": "software.amazon.awssdk.services.s3.model.ReplicationStatus",
"enum": [ "COMPLETE", "PENDING", "FAILED", "REPLICA", "COMPLETED", "null" ],
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "Amazon S3 can return this if your request involves a
bucket that is either a source or destinati [...]
+ "CamelAwsS3RangeStart": { "index": 23, "kind": "header", "displayName":
"", "group": "producer", "label": "producer", "required": false, "javaType":
"String", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "description": "The position of the first byte to get",
"constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#RANGE_START" },
+ "CamelAwsS3RangeEnd": { "index": 24, "kind": "header", "displayName": "",
"group": "producer", "label": "producer", "required": false, "javaType":
"String", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "description": "The position of the last byte to get",
"constantName": "org.apache.camel.component.aws2.s3.AWS2S3Constants#RANGE_END"
},
+ "CamelAwsS3DowloadLinkExpirationTime": { "index": 25, "kind": "header",
"displayName": "", "group": "producer", "label": "producer", "required": false,
"javaType": "Long", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "The expiration time of the download
link in milliseconds", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#DOWNLOAD_LINK_EXPIRATION_TIME"
},
+ "CamelAwsS3DownloadLinkBrowserCompatible": { "index": 26, "kind":
"header", "displayName": "", "group": "producer", "label": "producer",
"required": false, "javaType": "boolean", "deprecated": false,
"deprecationNote": "", "autowired": false, "secret": false, "description":
"Whether the download link is browser compatible", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#DOWNLOAD_LINK_BROWSER_COMPATIBLE"
},
+ "CamelAwsS3DownloadLinkHttpRequestHeaders": { "index": 27, "kind":
"header", "displayName": "", "group": "producer", "label": "producer",
"required": false, "javaType": "Map<String, List<String>>", "deprecated":
false, "deprecationNote": "", "autowired": false, "secret": false,
"description": "The headers that are needed by the service (not needed when
BrowserCompatible is true)", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#DOWNLOAD_LINK_HTTP_REQUEST_HEADERS"
},
+ "CamelAwsS3DownloadLinkSignedPayload": { "index": 28, "kind": "header",
"displayName": "", "group": "producer", "label": "producer", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "The request payload that is needed by
the service (not needed when BrowserCompatible is true)", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#DOWNLOAD_LINK_SIGNED_PAYLOAD"
},
+ "CamelAwsS3Metadata": { "index": 29, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "Map<String,
String>", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "description": "A map of metadata to be stored or stored with
the object in S3. More details about metadata
https:\/\/docs.aws.amazon.com\/AmazonS3\/latest\/userguide\/UsingMetadata.htmlhere.",
"constantName": "org.apache.camel.component.aws2.s3.A [...]
+ "CamelMessageTimestamp": { "index": 30, "kind": "header", "displayName":
"", "group": "consumer", "label": "consumer", "required": false, "javaType":
"long", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "description": "The timestamp of the message", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#MESSAGE_TIMESTAMP" },
+ "CamelAwsS3Prefix": { "index": 31, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The prefix which is used in the
com.amazonaws.services.s3.model.ListObjectsRequest to only list objects we are
interested in", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#PREFIX" },
+ "CamelAwsS3Delimiter": { "index": 32, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The delimiter which is used in the
com.amazonaws.services.s3.model.ListObjectsRequest to only list objects we are
interested in", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#DELIMITER" },
+ "CamelAwsS3IfMatchCondition": { "index": 33, "kind": "header",
"displayName": "", "group": "common", "label": "", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "Return\/copy the object only if its
entity tag (ETag) is the same as the one specified in this header.",
"constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#IF_MATCH_CONDITION" },
+ "CamelAwsS3IfModifiedSinceCondition": { "index": 34, "kind": "header",
"displayName": "", "group": "common", "label": "", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "Return\/copy the object only if it has
been modified since the specified time; otherwise, return a 304 Not Modified
error.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#IF_MODIFIED_SINCE_CONDITION"
},
+ "CamelAwsS3IfNoneMatchCondition": { "index": 35, "kind": "header",
"displayName": "", "group": "common", "label": "", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "Return\/copy the object only if its
entity tag (ETag) is different from the one specified in this header.",
"constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#IF_NONE_MATCH_CONDITION" },
+ "CamelAwsS3IfUnmodifiedSinceCondition": { "index": 36, "kind": "header",
"displayName": "", "group": "common", "label": "", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "Return\/copy the object only if it has
not been modified since the specified time.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#IF_UNMODIFIED_SINCE_CONDITION"
}
},
"properties": {
"bucketNameOrArn": { "index": 0, "kind": "path", "displayName": "Bucket
Name Or Arn", "group": "common", "label": "", "required": true, "type":
"string", "javaType": "java.lang.String", "deprecated": false,
"deprecationNote": "", "autowired": false, "secret": false, "description":
"Bucket name or ARN" },
diff --git
a/components/camel-aws/camel-aws2-s3/src/generated/resources/META-INF/org/apache/camel/component/aws2/s3/aws2-s3.json
b/components/camel-aws/camel-aws2-s3/src/generated/resources/META-INF/org/apache/camel/component/aws2/s3/aws2-s3.json
index 8a3360ed82c..386dfdd7ac2 100644
---
a/components/camel-aws/camel-aws2-s3/src/generated/resources/META-INF/org/apache/camel/component/aws2/s3/aws2-s3.json
+++
b/components/camel-aws/camel-aws2-s3/src/generated/resources/META-INF/org/apache/camel/component/aws2/s3/aws2-s3.json
@@ -89,39 +89,40 @@
"CamelAwsS3BucketName": { "index": 0, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The bucket Name (can be dynamic using the simple
language in the producer) which this object will be stored or which will be
used for the current operation or in which this object is contained.",
"constantName": "org.apache.camel.component.aws [...]
"CamelAwsS3ProducedBucketName": { "index": 1, "kind": "header",
"displayName": "", "group": "producer", "label": "producer", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "The computed bucket name that was used
by the producer such as to get or put an s3 object", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#PRODUCED_BUCKET_NAME" },
"CamelAwsS3BucketDestinationName": { "index": 2, "kind": "header",
"displayName": "", "group": "producer", "label": "producer", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "The bucket Destination Name which will
be used for the current operation", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#BUCKET_DESTINATION_NAME" },
- "CamelAwsS3ContentControl": { "index": 3, "kind": "header", "displayName":
"", "group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The optional Cache-Control HTTP header which allows the
user to specify caching behavior along the HTTP request\/reply chain.",
"constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#CACHE_CONTROL" },
- "CamelAwsS3ContentDisposition": { "index": 4, "kind": "header",
"displayName": "", "group": "common", "label": "", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "The optional Content-Disposition HTTP
header, which specifies presentational information such as the recommended
filename for the object to be saved as.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#CONTENT_DISP [...]
- "CamelAwsS3ContentEncoding": { "index": 5, "kind": "header",
"displayName": "", "group": "common", "label": "", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "The optional Content-Encoding HTTP
header specifying what content encodings have been applied to the object and
what decoding mechanisms must be applied in order to obtain the media-type
referenced by the Content-Type field.", "constantNa [...]
- "CamelAwsS3ContentLength": { "index": 6, "kind": "header", "displayName":
"", "group": "common", "label": "", "required": false, "javaType": "Long",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The Content-Length HTTP header indicating the size of
the associated object in bytes.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#CONTENT_LENGTH" },
- "CamelAwsS3ContentMD5": { "index": 7, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The base64 encoded 128-bit MD5 digest of the associated
object (content - not including headers) according to RFC 1864. This data is
used as a message integrity check to verify that the data received by Amazon S3
is the same data that the call [...]
- "CamelAwsS3ContentType": { "index": 8, "kind": "header", "displayName":
"", "group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The Content-Type HTTP header, which indicates the type
of content stored in the associated object. The value of this header is a
standard MIME type.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#CONTENT_TYPE" },
- "CamelAwsS3ETag": { "index": 9, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "(producer) The ETag value for the newly uploaded object.
(consumer) The hex encoded 128-bit MD5 digest of the associated object
according to RFC 1864. This data is used as an integrity check to verify that
the data received by the caller is the same [...]
- "CamelAwsS3Key": { "index": 10, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The key (can be dynamic using the simple language in the
producer) under which this object is stored or will be stored or which will be
used for the current operation", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#KEY" },
- "CamelAwsS3ProducedKey": { "index": 11, "kind": "header", "displayName":
"", "group": "producer", "label": "producer", "required": false, "javaType":
"String", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "description": "The computed key that was used for retrieving
this object", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#PRODUCED_KEY" },
- "CamelAwsS3DestinationKey": { "index": 12, "kind": "header",
"displayName": "", "group": "producer", "label": "producer", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "The Destination key which will be used
for the current operation", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#DESTINATION_KEY" },
- "CamelAwsS3LastModified": { "index": 13, "kind": "header", "displayName":
"", "group": "common", "label": "", "required": false, "javaType": "Date",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The value of the Last-Modified header, indicating the
date and time at which Amazon S3 last recorded a modification to the associated
object.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#LAST_MODIFIED" },
- "CamelAwsS3StorageClass": { "index": 14, "kind": "header", "displayName":
"", "group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The storage class of this object.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#STORAGE_CLASS" },
- "CamelAwsS3VersionId": { "index": 15, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "(producer) The optional version ID of the newly uploaded
object. (consumer) The version ID of the associated Amazon S3 object if
available. Version IDs are only assigned to objects when an object is uploaded
to an Amazon S3 bucket that has obj [...]
- "CamelAwsS3CannedAcl": { "index": 16, "kind": "header", "displayName": "",
"group": "producer", "label": "producer", "required": false, "javaType":
"String", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "description": "The canned acl that will be applied to the
object. see software.amazon.awssdk.services.s3.model.ObjectCannedACL for
allowed values.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#CANNED_ACL" },
- "CamelAwsS3Acl": { "index": 17, "kind": "header", "displayName": "",
"group": "producer", "label": "producer", "required": false, "javaType":
"software.amazon.awssdk.services.s3.model.BucketCannedACL", "enum": [
"private", "public-read", "public-read-write", "authenticated-read", "null" ],
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "A well constructed Amazon S3 Access Control List
object.", "constantName": "org.apache.camel.compone [...]
- "CamelAwsS3Operation": { "index": 18, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The operation to perform. Permitted values are
copyObject, deleteObject, listBuckets, deleteBucket, listObjects",
"constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#S3_OPERATION" },
- "CamelAwsS3ServerSideEncryption": { "index": 19, "kind": "header",
"displayName": "", "group": "common", "label": "", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "Sets the server-side encryption
algorithm when encrypting the object using AWS-managed keys. For example use
AES256.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#SERVER_SIDE_ENCRYPTION" },
- "CamelAwsS3ExpirationTime": { "index": 20, "kind": "header",
"displayName": "", "group": "consumer", "label": "consumer", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "If the object expiration is configured
(see PUT Bucket lifecycle), the response includes this header.",
"constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#EXPIRATION_TIME" },
- "CamelAwsS3ReplicationStatus": { "index": 21, "kind": "header",
"displayName": "", "group": "consumer", "label": "consumer", "required": false,
"javaType": "software.amazon.awssdk.services.s3.model.ReplicationStatus",
"enum": [ "COMPLETE", "PENDING", "FAILED", "REPLICA", "COMPLETED", "null" ],
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "Amazon S3 can return this if your request involves a
bucket that is either a source or destinati [...]
- "CamelAwsS3RangeStart": { "index": 22, "kind": "header", "displayName":
"", "group": "producer", "label": "producer", "required": false, "javaType":
"String", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "description": "The position of the first byte to get",
"constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#RANGE_START" },
- "CamelAwsS3RangeEnd": { "index": 23, "kind": "header", "displayName": "",
"group": "producer", "label": "producer", "required": false, "javaType":
"String", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "description": "The position of the last byte to get",
"constantName": "org.apache.camel.component.aws2.s3.AWS2S3Constants#RANGE_END"
},
- "CamelAwsS3DowloadLinkExpirationTime": { "index": 24, "kind": "header",
"displayName": "", "group": "producer", "label": "producer", "required": false,
"javaType": "Long", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "The expiration time of the download
link in milliseconds", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#DOWNLOAD_LINK_EXPIRATION_TIME"
},
- "CamelAwsS3DownloadLinkBrowserCompatible": { "index": 25, "kind":
"header", "displayName": "", "group": "producer", "label": "producer",
"required": false, "javaType": "boolean", "deprecated": false,
"deprecationNote": "", "autowired": false, "secret": false, "description":
"Whether the download link is browser compatible", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#DOWNLOAD_LINK_BROWSER_COMPATIBLE"
},
- "CamelAwsS3DownloadLinkHttpRequestHeaders": { "index": 26, "kind":
"header", "displayName": "", "group": "producer", "label": "producer",
"required": false, "javaType": "Map<String, List<String>>", "deprecated":
false, "deprecationNote": "", "autowired": false, "secret": false,
"description": "The headers that are needed by the service (not needed when
BrowserCompatible is true)", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#DOWNLOAD_LINK_HTTP_REQUEST_HEADERS"
},
- "CamelAwsS3DownloadLinkSignedPayload": { "index": 27, "kind": "header",
"displayName": "", "group": "producer", "label": "producer", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "The request payload that is needed by
the service (not needed when BrowserCompatible is true)", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#DOWNLOAD_LINK_SIGNED_PAYLOAD"
},
- "CamelAwsS3Metadata": { "index": 28, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "Map<String,
String>", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "description": "A map of metadata to be stored or stored with
the object in S3. More details about metadata
https:\/\/docs.aws.amazon.com\/AmazonS3\/latest\/userguide\/UsingMetadata.htmlhere.",
"constantName": "org.apache.camel.component.aws2.s3.A [...]
- "CamelMessageTimestamp": { "index": 29, "kind": "header", "displayName":
"", "group": "consumer", "label": "consumer", "required": false, "javaType":
"long", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "description": "The timestamp of the message", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#MESSAGE_TIMESTAMP" },
- "CamelAwsS3Prefix": { "index": 30, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The prefix which is used in the
com.amazonaws.services.s3.model.ListObjectsRequest to only list objects we are
interested in", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#PREFIX" },
- "CamelAwsS3Delimiter": { "index": 31, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The delimiter which is used in the
com.amazonaws.services.s3.model.ListObjectsRequest to only list objects we are
interested in", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#DELIMITER" },
- "CamelAwsS3IfMatchCondition": { "index": 32, "kind": "header",
"displayName": "", "group": "common", "label": "", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "Return\/copy the object only if its
entity tag (ETag) is the same as the one specified in this header.",
"constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#IF_MATCH_CONDITION" },
- "CamelAwsS3IfModifiedSinceCondition": { "index": 33, "kind": "header",
"displayName": "", "group": "common", "label": "", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "Return\/copy the object only if it has
been modified since the specified time; otherwise, return a 304 Not Modified
error.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#IF_MODIFIED_SINCE_CONDITION"
},
- "CamelAwsS3IfNoneMatchCondition": { "index": 34, "kind": "header",
"displayName": "", "group": "common", "label": "", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "Return\/copy the object only if its
entity tag (ETag) is different from the one specified in this header.",
"constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#IF_NONE_MATCH_CONDITION" },
- "CamelAwsS3IfUnmodifiedSinceCondition": { "index": 35, "kind": "header",
"displayName": "", "group": "common", "label": "", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "Return\/copy the object only if it has
not been modified since the specified time.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#IF_UNMODIFIED_SINCE_CONDITION"
}
+ "CamelAwsS3BucketExists": { "index": 3, "kind": "header", "displayName":
"", "group": "common", "label": "", "required": false, "javaType": "boolean",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "Whether the bucket exists when using the headBucket
operation", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#BUCKET_EXISTS" },
+ "CamelAwsS3ContentControl": { "index": 4, "kind": "header", "displayName":
"", "group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The optional Cache-Control HTTP header which allows the
user to specify caching behavior along the HTTP request\/reply chain.",
"constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#CACHE_CONTROL" },
+ "CamelAwsS3ContentDisposition": { "index": 5, "kind": "header",
"displayName": "", "group": "common", "label": "", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "The optional Content-Disposition HTTP
header, which specifies presentational information such as the recommended
filename for the object to be saved as.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#CONTENT_DISP [...]
+ "CamelAwsS3ContentEncoding": { "index": 6, "kind": "header",
"displayName": "", "group": "common", "label": "", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "The optional Content-Encoding HTTP
header specifying what content encodings have been applied to the object and
what decoding mechanisms must be applied in order to obtain the media-type
referenced by the Content-Type field.", "constantNa [...]
+ "CamelAwsS3ContentLength": { "index": 7, "kind": "header", "displayName":
"", "group": "common", "label": "", "required": false, "javaType": "Long",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The Content-Length HTTP header indicating the size of
the associated object in bytes.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#CONTENT_LENGTH" },
+ "CamelAwsS3ContentMD5": { "index": 8, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The base64 encoded 128-bit MD5 digest of the associated
object (content - not including headers) according to RFC 1864. This data is
used as a message integrity check to verify that the data received by Amazon S3
is the same data that the call [...]
+ "CamelAwsS3ContentType": { "index": 9, "kind": "header", "displayName":
"", "group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The Content-Type HTTP header, which indicates the type
of content stored in the associated object. The value of this header is a
standard MIME type.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#CONTENT_TYPE" },
+ "CamelAwsS3ETag": { "index": 10, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "(producer) The ETag value for the newly uploaded object.
(consumer) The hex encoded 128-bit MD5 digest of the associated object
according to RFC 1864. This data is used as an integrity check to verify that
the data received by the caller is the sam [...]
+ "CamelAwsS3Key": { "index": 11, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The key (can be dynamic using the simple language in the
producer) under which this object is stored or will be stored or which will be
used for the current operation", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#KEY" },
+ "CamelAwsS3ProducedKey": { "index": 12, "kind": "header", "displayName":
"", "group": "producer", "label": "producer", "required": false, "javaType":
"String", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "description": "The computed key that was used for retrieving
this object", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#PRODUCED_KEY" },
+ "CamelAwsS3DestinationKey": { "index": 13, "kind": "header",
"displayName": "", "group": "producer", "label": "producer", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "The Destination key which will be used
for the current operation", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#DESTINATION_KEY" },
+ "CamelAwsS3LastModified": { "index": 14, "kind": "header", "displayName":
"", "group": "common", "label": "", "required": false, "javaType": "Date",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The value of the Last-Modified header, indicating the
date and time at which Amazon S3 last recorded a modification to the associated
object.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#LAST_MODIFIED" },
+ "CamelAwsS3StorageClass": { "index": 15, "kind": "header", "displayName":
"", "group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The storage class of this object.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#STORAGE_CLASS" },
+ "CamelAwsS3VersionId": { "index": 16, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "(producer) The optional version ID of the newly uploaded
object. (consumer) The version ID of the associated Amazon S3 object if
available. Version IDs are only assigned to objects when an object is uploaded
to an Amazon S3 bucket that has obj [...]
+ "CamelAwsS3CannedAcl": { "index": 17, "kind": "header", "displayName": "",
"group": "producer", "label": "producer", "required": false, "javaType":
"String", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "description": "The canned acl that will be applied to the
object. see software.amazon.awssdk.services.s3.model.ObjectCannedACL for
allowed values.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#CANNED_ACL" },
+ "CamelAwsS3Acl": { "index": 18, "kind": "header", "displayName": "",
"group": "producer", "label": "producer", "required": false, "javaType":
"software.amazon.awssdk.services.s3.model.BucketCannedACL", "enum": [
"private", "public-read", "public-read-write", "authenticated-read", "null" ],
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "A well constructed Amazon S3 Access Control List
object.", "constantName": "org.apache.camel.compone [...]
+ "CamelAwsS3Operation": { "index": 19, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The operation to perform. Permitted values are
copyObject, deleteObject, listBuckets, deleteBucket, listObjects",
"constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#S3_OPERATION" },
+ "CamelAwsS3ServerSideEncryption": { "index": 20, "kind": "header",
"displayName": "", "group": "common", "label": "", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "Sets the server-side encryption
algorithm when encrypting the object using AWS-managed keys. For example use
AES256.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#SERVER_SIDE_ENCRYPTION" },
+ "CamelAwsS3ExpirationTime": { "index": 21, "kind": "header",
"displayName": "", "group": "consumer", "label": "consumer", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "If the object expiration is configured
(see PUT Bucket lifecycle), the response includes this header.",
"constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#EXPIRATION_TIME" },
+ "CamelAwsS3ReplicationStatus": { "index": 22, "kind": "header",
"displayName": "", "group": "consumer", "label": "consumer", "required": false,
"javaType": "software.amazon.awssdk.services.s3.model.ReplicationStatus",
"enum": [ "COMPLETE", "PENDING", "FAILED", "REPLICA", "COMPLETED", "null" ],
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "Amazon S3 can return this if your request involves a
bucket that is either a source or destinati [...]
+ "CamelAwsS3RangeStart": { "index": 23, "kind": "header", "displayName":
"", "group": "producer", "label": "producer", "required": false, "javaType":
"String", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "description": "The position of the first byte to get",
"constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#RANGE_START" },
+ "CamelAwsS3RangeEnd": { "index": 24, "kind": "header", "displayName": "",
"group": "producer", "label": "producer", "required": false, "javaType":
"String", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "description": "The position of the last byte to get",
"constantName": "org.apache.camel.component.aws2.s3.AWS2S3Constants#RANGE_END"
},
+ "CamelAwsS3DowloadLinkExpirationTime": { "index": 25, "kind": "header",
"displayName": "", "group": "producer", "label": "producer", "required": false,
"javaType": "Long", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "The expiration time of the download
link in milliseconds", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#DOWNLOAD_LINK_EXPIRATION_TIME"
},
+ "CamelAwsS3DownloadLinkBrowserCompatible": { "index": 26, "kind":
"header", "displayName": "", "group": "producer", "label": "producer",
"required": false, "javaType": "boolean", "deprecated": false,
"deprecationNote": "", "autowired": false, "secret": false, "description":
"Whether the download link is browser compatible", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#DOWNLOAD_LINK_BROWSER_COMPATIBLE"
},
+ "CamelAwsS3DownloadLinkHttpRequestHeaders": { "index": 27, "kind":
"header", "displayName": "", "group": "producer", "label": "producer",
"required": false, "javaType": "Map<String, List<String>>", "deprecated":
false, "deprecationNote": "", "autowired": false, "secret": false,
"description": "The headers that are needed by the service (not needed when
BrowserCompatible is true)", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#DOWNLOAD_LINK_HTTP_REQUEST_HEADERS"
},
+ "CamelAwsS3DownloadLinkSignedPayload": { "index": 28, "kind": "header",
"displayName": "", "group": "producer", "label": "producer", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "The request payload that is needed by
the service (not needed when BrowserCompatible is true)", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#DOWNLOAD_LINK_SIGNED_PAYLOAD"
},
+ "CamelAwsS3Metadata": { "index": 29, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "Map<String,
String>", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "description": "A map of metadata to be stored or stored with
the object in S3. More details about metadata
https:\/\/docs.aws.amazon.com\/AmazonS3\/latest\/userguide\/UsingMetadata.htmlhere.",
"constantName": "org.apache.camel.component.aws2.s3.A [...]
+ "CamelMessageTimestamp": { "index": 30, "kind": "header", "displayName":
"", "group": "consumer", "label": "consumer", "required": false, "javaType":
"long", "deprecated": false, "deprecationNote": "", "autowired": false,
"secret": false, "description": "The timestamp of the message", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#MESSAGE_TIMESTAMP" },
+ "CamelAwsS3Prefix": { "index": 31, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The prefix which is used in the
com.amazonaws.services.s3.model.ListObjectsRequest to only list objects we are
interested in", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#PREFIX" },
+ "CamelAwsS3Delimiter": { "index": 32, "kind": "header", "displayName": "",
"group": "common", "label": "", "required": false, "javaType": "String",
"deprecated": false, "deprecationNote": "", "autowired": false, "secret":
false, "description": "The delimiter which is used in the
com.amazonaws.services.s3.model.ListObjectsRequest to only list objects we are
interested in", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#DELIMITER" },
+ "CamelAwsS3IfMatchCondition": { "index": 33, "kind": "header",
"displayName": "", "group": "common", "label": "", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "Return\/copy the object only if its
entity tag (ETag) is the same as the one specified in this header.",
"constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#IF_MATCH_CONDITION" },
+ "CamelAwsS3IfModifiedSinceCondition": { "index": 34, "kind": "header",
"displayName": "", "group": "common", "label": "", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "Return\/copy the object only if it has
been modified since the specified time; otherwise, return a 304 Not Modified
error.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#IF_MODIFIED_SINCE_CONDITION"
},
+ "CamelAwsS3IfNoneMatchCondition": { "index": 35, "kind": "header",
"displayName": "", "group": "common", "label": "", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "Return\/copy the object only if its
entity tag (ETag) is different from the one specified in this header.",
"constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#IF_NONE_MATCH_CONDITION" },
+ "CamelAwsS3IfUnmodifiedSinceCondition": { "index": 36, "kind": "header",
"displayName": "", "group": "common", "label": "", "required": false,
"javaType": "String", "deprecated": false, "deprecationNote": "", "autowired":
false, "secret": false, "description": "Return\/copy the object only if it has
not been modified since the specified time.", "constantName":
"org.apache.camel.component.aws2.s3.AWS2S3Constants#IF_UNMODIFIED_SINCE_CONDITION"
}
},
"properties": {
"bucketNameOrArn": { "index": 0, "kind": "path", "displayName": "Bucket
Name Or Arn", "group": "common", "label": "", "required": true, "type":
"string", "javaType": "java.lang.String", "deprecated": false,
"deprecationNote": "", "autowired": false, "secret": false, "description":
"Bucket name or ARN" },
diff --git
a/components/camel-aws/camel-aws2-s3/src/main/java/org/apache/camel/component/aws2/s3/AWS2S3Constants.java
b/components/camel-aws/camel-aws2-s3/src/main/java/org/apache/camel/component/aws2/s3/AWS2S3Constants.java
index c7a916e5bee..43409579bd5 100644
---
a/components/camel-aws/camel-aws2-s3/src/main/java/org/apache/camel/component/aws2/s3/AWS2S3Constants.java
+++
b/components/camel-aws/camel-aws2-s3/src/main/java/org/apache/camel/component/aws2/s3/AWS2S3Constants.java
@@ -34,6 +34,9 @@ public interface AWS2S3Constants {
@Metadata(label = "producer", description = "The bucket Destination Name
which will be used for the current operation",
javaType = "String")
String BUCKET_DESTINATION_NAME = "CamelAwsS3BucketDestinationName";
+ @Metadata(description = "Whether the bucket exists when using the
headBucket operation",
+ javaType = "boolean")
+ String BUCKET_EXISTS = "CamelAwsS3BucketExists";
@Metadata(description = "The *optional* Cache-Control HTTP header which
allows the user to\n" +
"specify caching behavior along the HTTP
request/reply chain.",
javaType = "String")
diff --git
a/components/camel-aws/camel-aws2-s3/src/main/java/org/apache/camel/component/aws2/s3/AWS2S3Producer.java
b/components/camel-aws/camel-aws2-s3/src/main/java/org/apache/camel/component/aws2/s3/AWS2S3Producer.java
index b7edba14061..b46a68ac5e8 100644
---
a/components/camel-aws/camel-aws2-s3/src/main/java/org/apache/camel/component/aws2/s3/AWS2S3Producer.java
+++
b/components/camel-aws/camel-aws2-s3/src/main/java/org/apache/camel/component/aws2/s3/AWS2S3Producer.java
@@ -709,10 +709,17 @@ public class AWS2S3Producer extends DefaultProducer {
throw new IllegalArgumentException(
"Head Bucket operation requires to specify a bucket name
via Header");
}
- HeadBucketResponse headBucketResponse =
s3Client.headBucket(HeadBucketRequest.builder().bucket(bucketName).build());
-
Message message = getMessageForResponse(exchange);
- message.setBody(headBucketResponse);
+ boolean exists = true;
+ try {
+ HeadBucketResponse headBucketResponse =
s3Client.headBucket(HeadBucketRequest.builder().bucket(bucketName).build());
+ if (!getConfiguration().isIgnoreBody()) {
+ message.setBody(headBucketResponse);
+ }
+ } catch (NoSuchBucketException e) {
+ exists = false;
+ }
+ message.setHeader(AWS2S3Constants.BUCKET_EXISTS, exists);
}
private void headObject(S3Client s3Client, Exchange exchange) {
diff --git
a/components/camel-aws/camel-aws2-s3/src/test/java/org/apache/camel/component/aws2/s3/integration/S3HeadBucketIT.java
b/components/camel-aws/camel-aws2-s3/src/test/java/org/apache/camel/component/aws2/s3/integration/S3HeadBucketIT.java
index 61b469296df..58a15b2dafc 100644
---
a/components/camel-aws/camel-aws2-s3/src/test/java/org/apache/camel/component/aws2/s3/integration/S3HeadBucketIT.java
+++
b/components/camel-aws/camel-aws2-s3/src/test/java/org/apache/camel/component/aws2/s3/integration/S3HeadBucketIT.java
@@ -26,25 +26,26 @@ import org.apache.camel.component.aws2.s3.AWS2S3Constants;
import org.apache.camel.component.aws2.s3.AWS2S3Operations;
import org.apache.camel.component.mock.MockEndpoint;
import org.junit.jupiter.api.Test;
-import software.amazon.awssdk.services.s3.model.NoSuchBucketException;
public class S3HeadBucketIT extends Aws2S3Base {
@EndpointInject
private ProducerTemplate template;
- @EndpointInject("mock:bucket")
- private MockEndpoint bucket;
+ @EndpointInject("mock:exists")
+ private MockEndpoint exists;
- @EndpointInject("mock:noBucket")
- private MockEndpoint noBucket;
+ @EndpointInject("mock:result")
+ private MockEndpoint result;
@Test
public void sendInHeadBucket() throws Exception {
- bucket.expectedMessageCount(0);
- noBucket.expectedMessageCount(1);
+ exists.expectedMessageCount(0);
+ result.expectedBodiesReceived("Hello World");
+ result.expectedHeaderReceived(AWS2S3Constants.BUCKET_EXISTS, false);
Exchange res = template.send("direct:headBucket", exchange -> {
+ exchange.getIn().setBody("Hello World");
exchange.getIn().setHeader(AWS2S3Constants.S3_OPERATION,
AWS2S3Operations.headBucket);
exchange.getIn().setHeader(AWS2S3Constants.BUCKET_NAME,
"doesnotexist" + UUID.randomUUID().toString());
});
@@ -60,14 +61,14 @@ public class S3HeadBucketIT extends Aws2S3Base {
return new RouteBuilder() {
@Override
public void configure() {
- String awsEndpoint = "aws2-s3://test-ss3-s3";
+ String awsEndpoint = "aws2-s3://test-ss3-s3?ignoreBody=true";
from("direct:headBucket")
- .doTry()
- .to(awsEndpoint).log("${body}").to("mock:bucket")
- .doCatch(NoSuchBucketException.class)
- .to("mock:noBucket")
- .end();
+ .to(awsEndpoint)
+ .filter(header(AWS2S3Constants.BUCKET_EXISTS))
+ .to("mock:exists")
+ .end()
+ .to("mock:result");
}
};
}
diff --git
a/docs/user-manual/modules/ROOT/pages/camel-4x-upgrade-guide-4_9.adoc
b/docs/user-manual/modules/ROOT/pages/camel-4x-upgrade-guide-4_9.adoc
index e22aa69fb68..2ff3aa765b4 100644
--- a/docs/user-manual/modules/ROOT/pages/camel-4x-upgrade-guide-4_9.adoc
+++ b/docs/user-manual/modules/ROOT/pages/camel-4x-upgrade-guide-4_9.adoc
@@ -85,6 +85,16 @@ to this
You could find more details on CAMEL-21179 issue
+=== camel-aws
+
+The `camel-aws2-s3` when using `headBucket` operation will now store the result
+in a header named `CamelAwsS3BucketExists` whether the bucket exists or not.
+
+Previously an `software.amazon.awssdk.services.s3.model.NoSuchBucketException`
was thrown,
+however this would require to use error handling to just check whether the
bucket existed.
+Returning a boolean makes it easier in Camel routes to decide what to do.
+You may also set the option `ignoreBody=true` to not change the message body.
+
=== camel-test
The `CamelTestSupport` class was modified so that the JUnit 5 extension code
that was part of the class itself,
diff --git
a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/AWS2S3EndpointBuilderFactory.java
b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/AWS2S3EndpointBuilderFactory.java
index 4d21a4f9e58..f3bc2695a1f 100644
---
a/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/AWS2S3EndpointBuilderFactory.java
+++
b/dsl/camel-endpointdsl/src/generated/java/org/apache/camel/builder/endpoint/dsl/AWS2S3EndpointBuilderFactory.java
@@ -3626,6 +3626,18 @@ public interface AWS2S3EndpointBuilderFactory {
public String awsS3BucketDestinationName() {
return "CamelAwsS3BucketDestinationName";
}
+ /**
+ * Whether the bucket exists when using the headBucket operation.
+ *
+ * The option is a: {@code boolean} type.
+ *
+ * Group: common
+ *
+ * @return the name of the header {@code AwsS3BucketExists}.
+ */
+ public String awsS3BucketExists() {
+ return "CamelAwsS3BucketExists";
+ }
/**
* The optional Cache-Control HTTP header which allows the user to
* specify caching behavior along the HTTP request/reply chain.