Net::Amazon::S3::Vendor(3pm)

Net::Amazon::S3::Vendor3pm

Base class for vendor specific behaviour

Usage

        # use it with Amazon AWS
        my $s3 = Net::Amazon::S3->new (
                vendor => Net::Amazon::S3::Vendor::Amazon->new,
                ...,
        );
        # or build your own vendor description
        my $vendor = Net::Amazon::S3::Vendor::Generic->new (
                host                 => 'my.s3.service',
                use_https            => 1,
                use_virtual_host     => 1,
                authorization_method => 'Net::Amazon::S3::Signature::V2',
        );
        # or
        my $vendor = Net::Amazon::S3::Vendor::Generic->new (
                host                 => 'my.s3.service',
                use_https            => 1,
                use_virtual_host     => 1,
                authorization_method => 'Net::Amazon::S3::Signature::V4',
                default_region       => '...',
        );
        # and construct your s3 connection
        my $s3 = Net::Amazon::S3->new (
                vendor => $vendor,
                ...
        );

Version

version 0.991

Overview

S3 protocol is used not only by Amazon AWS but by many other object-storage services. They provide same API, but it's just there's a little difference.

Examples?

Allright, you can upload file but other provider does not support multipart uploads.

Or although some providers support Signature V4 they may not support HEAD bucket request to fetch it automatically.

Properties

host

Required, where service is located.

Available here so one can move its parameters into its own vendor class.

authorization_method

Default: Net::Amazon::S3::Signature::V2

Signature class used to authorize requests.

use_https

Default: true.

Whether to use HTTPS or not.

use_virtual_host

Default: whatever "authorization_method" enforces

Whether to use path or virtual host access style. Path style uses single host with bucket contained in uri path whereas virtual host style use bucket specific virtual hosts.

default_region

Default: undef

Value that "guess_bucket_region" will return.

Use when your provider doesn't support HEAD region request but uses Signature V4 authorization method.

Methods

guess_bucket_region ($bucket)

Returns bucket's region

Releases

3 releases since Debian 11 (Bullseye); the text changed 1 time.

  1. 11
  2. 12–13

Author

Branislav Zahradník <[email protected]>

From libnet-amazon-s3-perl 0.991-1 in Debian 13 (Trixie). Parsed by carta from the page's man source.