NAME
Net::Amazon::S3::Client::Bucket - An easy-to-use Amazon S3 client bucket
VERSION
version 0.991
SYNOPSIS
# return the bucket nameprint $bucket->name . "\n";# return the bucket location constraintprint "Bucket is in the " . $bucket->location_constraint . "\n";# return the ACL XMLmy $acl = $bucket->acl;# list objects in the bucket# this returns a L<Data::Stream::Bulk> object which returns a# stream of L<Net::Amazon::S3::Client::Object> objects, as it may# have to issue multiple API requestsmy $stream = $bucket->list;until ( $stream->is_done ) {foreach my $object ( $stream->items ) {...}}# or list by a prefixmy $prefix_stream = $bucket->list( { prefix => 'logs/' } );# returns a L<Net::Amazon::S3::Client::Object>, which can then# be used to get or putmy $object = $bucket->object( key => 'this is the key' );# delete the bucket (it must be empty)$bucket->delete;
DESCRIPTION
This module represents buckets.
METHODS
acl
# return the ACL XMLmy $acl = $bucket->acl;
add_tags
$bucket->add_tags (tags => { tag1 => 'val1', ... },)
delete_tags
$bucket->delete_tags;
delete
# delete the bucket (it must be empty)$bucket->delete;
list
# list objects in the bucket# this returns a L<Data::Stream::Bulk> object which returns a# stream of L<Net::Amazon::S3::Client::Object> objects, as it may# have to issue multiple API requestsmy $stream = $bucket->list;until ( $stream->is_done ) {foreach my $object ( $stream->items ) {...}}# or list by a prefixmy $prefix_stream = $bucket->list( { prefix => 'logs/' } );# you can emulate folders by using prefix with delimiter# which shows only entries starting with the prefix but# not containing any more delimiter (thus no subfolders).my $folder_stream = $bucket->list( { prefix => 'logs/', delimiter => '/' } );
location_constraint
# return the bucket location constraintprint "Bucket is in the " . $bucket->location_constraint . "\n";
name
# return the bucket nameprint $bucket->name . "\n";
object
# returns a L<Net::Amazon::S3::Client::Object>, which can then# be used to get or putmy $object = $bucket->object( key => 'this is the key' );
delete_multi_object
# delete multiple objects using a multi object delete operation# Accepts a list of L<Net::Amazon::S3::Client::Object or String> objects.$bucket->delete_multi_object($object1, $object2)
object_class
# returns string "Net::Amazon::S3::Client::Object"# allowing subclasses to add behavior.my $object_class = $bucket->object_class;
AUTHOR
Branislav Zahradník <[email protected]>
COPYRIGHT AND LICENSE
This software is copyright (c) 2022 by Amazon Digital Services, Leon Brocard, Brad Fitzpatrick, Pedro Figueiredo, Rusty Conover, Branislav Zahradník.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.