AWS 2 S3 Storage Service
JVM since1.0.0 Native since1.0.0
Store and retrieve objects from AWS S3 Storage Service using AWS SDK version 2.x.
What’s inside
-
AWS S3 Storage Service component, URI syntax:
aws2-s3://bucketNameOrArn
Please refer to the above link for usage and configuration details.
Maven coordinates
Or add the coordinates to your existing project:
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
<artifactId>camel-quarkus-aws2-s3</artifactId>
</dependency>
Check the User guide for more information about writing Camel Quarkus applications.
SSL in native mode
This extension auto-enables SSL support in native mode. Hence you do not need to add
quarkus.ssl.native=true
to your application.properties
yourself. See also
Quarkus SSL guide.
Additional Camel Quarkus configuration
Optional integration with Quarkus Amazon S3
If desired, it is possible to use the Quarkus Amazon S3 extension in conjunction with Camel Quarkus AWS 2 S3 Storage Service. Note that this is fully optional and not mandatory at all. Please follow the Quarkus documentation but beware of the following caveats:
-
The client type
apache
has to be selected by configuring the following property:quarkus.s3.sync-client.type=apache
-
The
S3Client
has to be made "unremovable" in the sense of Quarkus CDI reference so that Camel Quarkus is able to look it up at runtime. You can reach that e.g. by adding a dummy bean injectingS3Client
:import javax.enterprise.context.ApplicationScoped; import io.quarkus.arc.Unremovable; import software.amazon.awssdk.services.s3.S3Client; @ApplicationScoped @Unremovable class UnremovableS3Client { @Inject S3Client s3Client; }