Class S3Objects
java.lang.Object
com.amazonaws.services.s3.iterable.S3Objects
- All Implemented Interfaces:
Iterable<S3ObjectSummary>
Provides an easy way to iterate Amazon S3 objects in a "foreach" statement.
For example:
for ( S3ObjectSummary summary : S3Objects.withPrefix(s3, "my-bucket", "photos/") ) { System.out.printf("Object with key '%s'\n", summary.getKey()); }
The list of S3ObjectSummary
s will be fetched lazily, a page at a
time, as they are needed. The size of the page can be controlled with the
withBatchSize(int)
method.
-
Method Summary
Modifier and TypeMethodDescriptiongetS3()
static S3Objects
Constructs an iterable that covers all the objects in an Amazon S3 bucket.iterator()
withBatchSize
(int batchSize) Sets the batch size, i.e., how manyS3ObjectSummary
s will be fetched at once.static S3Objects
withPrefix
(AmazonS3 s3, String bucketName, String prefix) Constructs an iterable that covers the objects in an Amazon S3 bucket where the key begins with the given prefix.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Method Details
-
inBucket
Constructs an iterable that covers all the objects in an Amazon S3 bucket.- Parameters:
s3
- The Amazon S3 client.bucketName
- The bucket name.- Returns:
- An iterator for object summaries.
-
withPrefix
Constructs an iterable that covers the objects in an Amazon S3 bucket where the key begins with the given prefix.- Parameters:
s3
- The Amazon S3 client.bucketName
- The bucket name.prefix
- The prefix.- Returns:
- An iterator for object summaries.
-
withBatchSize
Sets the batch size, i.e., how manyS3ObjectSummary
s will be fetched at once.- Parameters:
batchSize
- How many object summaries to fetch at once.
-
getBatchSize
-
getPrefix
-
getBucketName
-
getS3
-
iterator
- Specified by:
iterator
in interfaceIterable<S3ObjectSummary>
-