Disclaimer: This is an alpha release until we get continuous integration and pipelines in place. Use at your own risk!
The s3-client-extension library enables Java and Scala developers to interact with the Amazon Web Services with ease. It can be used to build scalable solutions with Amazon S3.
To get started you can simply download a single zip file or use Maven.
s3-client-extension package is available for Scala 2.11.8 (on Java 8). To install the package using SBT,
add the below statement to your build.sbt
file:
libraryDependencies += "uk.co.autotrader" %% "s3-client-extension" % "1.0.0-alpha.1"
On maven, update your pom.xml
file by adding the following to your dependencies:
<dependency>
<groupId>uk.co.autotrader</groupId>
<artifactId>s3-client-extension</artifactId>
<version>1.0.0-alpha.1</version>
</dependency>
For gradle, update your build.gradle
file by adding the following to your dependencies:
compile group: 'uk.co.autotrader', name: 's3-client-extension', version: '1.0.0-alpha.1'
To get a fully paginated parallel list of object keys for objects in the specified bucket with the prefixes.
val bucket = "bucket-name"
val prefixes = List("prefix1/prefix2")
val keys = S3Client.withDefaultAmazonS3.getKeys(bucket, prefixes)
Note: the prefixes don't start with a slash.
To get a string representation of the S3Path object.
val bucket = "bucket-name"
val objectPath = "test1/test2/test3.txt"
val s3Path = S3Path(bucket, objectPath).toString
Note: the object path does not start with a slash.
If you're adding or changing something, submit your changes via a pull request and they will be reviewed.
This library follows semantic versioning and is managed by the gradle-semantic-build-versioning plugin. Please refer to https://semver.org/ for more information about semantic versioning.
Please use GitHub issues for getting help. We monitor these to track for feature requests or bugs.
Copyright (c) 2018 Auto Trader Limited
Published under Apache Software License 2.0, see LICENSE