GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  NET::AMAZON::S3::CLIENT::OBJECT (3)

.ds Aq ’

NAME

Net::Amazon::S3::Client::Object - An easy-to-use Amazon S3 client object

CONTENTS

VERSION

version 0.80

SYNOPSIS



  # show the key
  print $object->key . "\n";

  # show the etag of an existing object (if fetched by listing
  # a bucket)
  print $object->etag . "\n";

  # show the size of an existing object (if fetched by listing
  # a bucket)
  print $object->size . "\n";

  # to create a new object
  my $object = $bucket->object( key => this is the key );
  $object->put(this is the value);

  # to get the vaue of an object
  my $value = $object->get;

  # to see if an object exists
  if ($object->exists) { ... }

  # to delete an object
  $object->delete;

  # to create a new object which is publically-accessible with a
  # content-type of text/plain which expires on 2010-01-02
  my $object = $bucket->object(
    key          => this is the public key,
    acl_short    => public-read,
    content_type => text/plain,
    expires      => 2010-01-02,
  );
  $object->put(this is the public value);

  # return the URI of a publically-accessible object
  my $uri = $object->uri;

  # to store a new object with server-side encryption enabled
  my $object = $bucket->object(
    key        => my secret,
    encryption => AES256,
  );
  $object->put(this data will be stored using encryption.);

  # upload a file
  my $object = $bucket->object(
    key          => images/my_hat.jpg,
    content_type => image/jpeg,
  );
  $object->put_filename(hat.jpg);

  # upload a file if you already know its md5_hex and size
  my $object = $bucket->object(
    key          => images/my_hat.jpg,
    content_type => image/jpeg,
    etag         => $md5_hex,
    size         => $size,
  );
  $object->put_filename(hat.jpg);

  # download the value of the object into a file
  my $object = $bucket->object( key => images/my_hat.jpg );
  $object->get_filename(hat_backup.jpg);

  # use query string authentication
  my $object = $bucket->object(
    key          => images/my_hat.jpg,
    expires      => 2009-03-01,
  );
  my $uri = $object->query_string_authentication_uri();



DESCRIPTION

This module represents objects in buckets.

METHODS

    etag



  # show the etag of an existing object (if fetched by listing
  # a bucket)
  print $object->etag . "\n";



    delete



  # to delete an object
  $object->delete;



    exists



  # to see if an object exists
  if ($object->exists) { ... }



    get



  # to get the vaue of an object
  my $value = $object->get;



    get_decoded



  # get the value of an object, and decode any Content-Encoding and/or
  # charset; see decoded_content in HTTP::Response
  my $value = $object->get_decoded;



    get_filename



  # download the value of the object into a file
  my $object = $bucket->object( key => images/my_hat.jpg );
  $object->get_filename(hat_backup.jpg);



    key



  # show the key
  print $object->key . "\n";



    put



  # to create a new object
  my $object = $bucket->object( key => this is the key );
  $object->put(this is the value);

  # to create a new object which is publically-accessible with a
  # content-type of text/plain
  my $object = $bucket->object(
    key          => this is the public key,
    acl_short    => public-read,
    content_type => text/plain,
  );
  $object->put(this is the public value);



You may also set Content-Encoding using content_encoding, and Content-Disposition using content_disposition.

You may specify the S3 storage class by setting storage_class to either standard or reduced_redundancy; the default is standard.

    put_filename



  # upload a file
  my $object = $bucket->object(
    key          => images/my_hat.jpg,
    content_type => image/jpeg,
  );
  $object->put_filename(hat.jpg);

  # upload a file if you already know its md5_hex and size
  my $object = $bucket->object(
    key          => images/my_hat.jpg,
    content_type => image/jpeg,
    etag         => $md5_hex,
    size         => $size,
  );
  $object->put_filename(hat.jpg);



You may also set Content-Encoding using content_encoding, and Content-Disposition using content_disposition.

You may specify the S3 storage class by setting storage_class to either standard or reduced_redundancy; the default is standard.

User metadata may be set by providing a non-empty hashref as user_metadata.

    query_string_authentication_uri



  # use query string authentication
  my $object = $bucket->object(
    key          => images/my_hat.jpg,
    expires      => 2009-03-01,
  );
  my $uri = $object->query_string_authentication_uri();



    size



  # show the size of an existing object (if fetched by listing
  # a bucket)
  print $object->size . "\n";



    uri



  # return the URI of a publically-accessible object
  my $uri = $object->uri;



    initiate_multipart_upload



  #initiate a new multipart upload for this object
  my $object = $bucket->object(
    key         => massive_video.avi
  );
  my $upload_id = $object->initiate_multipart_upload;



    put_part



  #add a part to a multipart upload
  my $put_part_response = $object->put_part(
     upload_id      => $upload_id,
     part_number    => 1,
     value          => $chunk_content,
  );
  my $part_etag = $put_part_response->header(ETag)

  Returns an L<HTTP::Response> object. It is necessary to keep the ETags for
  each part, as these are required to complete the upload.



    complete_multipart_upload



  #complete a multipart upload
  $object->complete_multipart_upload(
    upload_id       => $upload_id,
    etags           => [$etag_1, $etag_2],
    part_numbers    => [$part_number_1, $part_number2],
  );

  The etag and part_numbers parameters are ordered lists specifying the part
  numbers and ETags for each individual part of the multipart upload.



    user_metadata



  my $object = $bucket->object(key => $key);
  my $content = $object->get; # or use $object->get_filename($filename)

  # return the user metadata downloaded, as a hashref
  my $user_metadata = $object->user_metadata;



To upload an object with user metadata, set user_metadata at construction time to a hashref, with no x-amz-meta- prefixes on the key names. When downloading an object, the get, get_decoded and get_filename ethods set the contents of user_metadata to the same format.

AUTHOR

Rusty Conover <rusty@luckydinosaur.com>

COPYRIGHT AND LICENSE

This software is copyright (c) 2015 by Amazon Digital Services, Leon Brocard, Brad Fitzpatrick, Pedro Figueiredo, Rusty Conover.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.

Search for    or go to Top of page |  Section 3 |  Main Index


perl v5.20.3 NET::AMAZON::S3::CLIENT::OBJECT (3) 2015-04-12

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.