view release on metacpan or search on metacpan
            "Moose::Meta::Class" : "0",
            "Moose::Object" : "0",
            "Moose::Role" : "0",
            "Moose::Util" : "0",
            "Moose::Util::TypeConstraints" : "0",
            "MooseX::Role::Parameterized" : "0",
            "MooseX::StrictConstructor" : "0.16",
            "MooseX::Types::DateTime::MoreCoercions" : "0.07",
            "Path::Class" : "0",
            "Pod::Usage" : "0",
            "Ref::Util" : "0",
            "Regexp::Common" : "0",
            "Safe::Isa" : "0",
            "Scalar::Util" : "0",
            "Sub::Override" : "0",
            "Term::Encoding" : "0",
            "Term::ProgressBar::Simple" : "0",
            "Test::Deep" : "v0.111.0",
            "Test::LWP::UserAgent" : "0",
            "Test::More" : "0",
            "Time::Piece" : "0",
  Moose::Meta::Class: '0'
  Moose::Object: '0'
  Moose::Role: '0'
  Moose::Util: '0'
  Moose::Util::TypeConstraints: '0'
  MooseX::Role::Parameterized: '0'
  MooseX::StrictConstructor: '0.16'
  MooseX::Types::DateTime::MoreCoercions: '0.07'
  Path::Class: '0'
  Pod::Usage: '0'
  Ref::Util: '0'
  Regexp::Common: '0'
  Safe::Isa: '0'
  Scalar::Util: '0'
  Sub::Override: '0'
  Term::Encoding: '0'
  Term::ProgressBar::Simple: '0'
  Test::Deep: v0.111.0
  Test::LWP::UserAgent: '0'
  Test::More: '0'
  Time::Piece: '0'
Makefile.PL view on Meta::CPAN
    "Moose::Meta::Class" => 0,
    "Moose::Object" => 0,
    "Moose::Role" => 0,
    "Moose::Util" => 0,
    "Moose::Util::TypeConstraints" => 0,
    "MooseX::Role::Parameterized" => 0,
    "MooseX::StrictConstructor" => "0.16",
    "MooseX::Types::DateTime::MoreCoercions" => "0.07",
    "Path::Class" => 0,
    "Pod::Usage" => 0,
    "Ref::Util" => 0,
    "Regexp::Common" => 0,
    "Safe::Isa" => 0,
    "Scalar::Util" => 0,
    "Sub::Override" => 0,
    "Term::Encoding" => 0,
    "Term::ProgressBar::Simple" => 0,
    "Test::Deep" => "0.111.0",
    "Test::LWP::UserAgent" => 0,
    "Test::More" => 0,
    "Time::Piece" => 0,
Makefile.PL view on Meta::CPAN
  "Moose::Meta::Class" => 0,
  "Moose::Object" => 0,
  "Moose::Role" => 0,
  "Moose::Util" => 0,
  "Moose::Util::TypeConstraints" => 0,
  "MooseX::Role::Parameterized" => 0,
  "MooseX::StrictConstructor" => "0.16",
  "MooseX::Types::DateTime::MoreCoercions" => "0.07",
  "Path::Class" => 0,
  "Pod::Usage" => 0,
  "Ref::Util" => 0,
  "Regexp::Common" => 0,
  "Safe::Isa" => 0,
  "Scalar::Util" => 0,
  "Sub::Override" => 0,
  "Term::Encoding" => 0,
  "Term::ProgressBar::Simple" => 0,
  "Test::Deep" => "0.111.0",
  "Test::Exception" => 0,
  "Test::LWP::UserAgent" => 0,
  "Test::MockTime" => 0,
requires "Moose::Meta::Class" => "0";
requires "Moose::Object" => "0";
requires "Moose::Role" => "0";
requires "Moose::Util" => "0";
requires "Moose::Util::TypeConstraints" => "0";
requires "MooseX::Role::Parameterized" => "0";
requires "MooseX::StrictConstructor" => "0.16";
requires "MooseX::Types::DateTime::MoreCoercions" => "0.07";
requires "Path::Class" => "0";
requires "Pod::Usage" => "0";
requires "Ref::Util" => "0";
requires "Regexp::Common" => "0";
requires "Safe::Isa" => "0";
requires "Scalar::Util" => "0";
requires "Sub::Override" => "0";
requires "Term::Encoding" => "0";
requires "Term::ProgressBar::Simple" => "0";
requires "Test::Deep" => "v0.111.0";
requires "Test::LWP::UserAgent" => "0";
requires "Test::More" => "0";
requires "Time::Piece" => "0";
lib/Net/Amazon/S3/ACL/Set.pm view on Meta::CPAN
package Net::Amazon::S3::ACL::Set;
# ABSTRACT: Representation of explicit ACL
$Net::Amazon::S3::ACL::Set::VERSION = '0.991';
use Moose 0.85;
use MooseX::StrictConstructor 0.16;
use Moose::Util::TypeConstraints;
use Ref::Util ();
use Safe::Isa ();
use Net::Amazon::S3::Constants;
use Net::Amazon::S3::ACL::Grantee::User;
use Net::Amazon::S3::ACL::Grantee::Group;
use Net::Amazon::S3::ACL::Grantee::Email;
class_type 'Net::Amazon::S3::ACL::Set';
my %permission_map = (
lib/Net/Amazon/S3/ACL/Set.pm view on Meta::CPAN
		}
		die "Unknown grantee type $type"
			unless exists $grantees_map{$type};
		die "Grantee type $type requires one argument"
			unless @grantees;
		my @grantee = (shift @grantees);
		@grantees = @{ $grantee[0] }
			if Ref::Util::is_plain_arrayref ($grantee[0]);
		push @{ $list }, map $grantees_map{$type}->new ($_), @grantee;
	}
	return $self;
}
1;
__END__
lib/Net/Amazon/S3/Client/Object.pm view on Meta::CPAN
use Moose 0.85;
use MooseX::StrictConstructor 0.16;
use DateTime::Format::HTTP;
use Digest::MD5 qw(md5 md5_hex);
use Digest::MD5::File qw(file_md5 file_md5_hex);
use File::stat;
use MIME::Base64;
use Moose::Util::TypeConstraints;
use MooseX::Types::DateTime::MoreCoercions 0.07 qw( DateTime );
use IO::File 1.14;
use Ref::Util ();
# ABSTRACT: An easy-to-use Amazon S3 client object
use Net::Amazon::S3::Constraint::ACL::Canned;
use Net::Amazon::S3::Constraint::Etag;
use Net::Amazon::S3::Client::Object::Range;
with 'Net::Amazon::S3::Role::ACL';
enum 'StorageClass' =>
lib/Net/Amazon/S3/Signature/V4.pm view on Meta::CPAN
package Net::Amazon::S3::Signature::V4;
# ABSTRACT: V4 signatures
$Net::Amazon::S3::Signature::V4::VERSION = '0.991';
use Moose;
use Net::Amazon::S3::Signature::V4Implementation;
use Digest::SHA;
use Ref::Util;
use Net::Amazon::S3::Constants;
use Net::Amazon::S3::Signature::V2;
use namespace::clean;
extends 'Net::Amazon::S3::Signature';
sub enforce_use_virtual_host {
    1;
lib/Net/Amazon/S3/Signature/V4.pm view on Meta::CPAN
    return if $sign->{endpoint} eq 'us-east-1';
    return unless $host =~ s/(?<=\bs3)(?=\.amazonaws\.com$)/"-" . $sign->{endpoint}/e;
    $request->uri->host( $host );
}
sub sign_request {
    my ($self, $request, $region) = @_;
    my $sha = Digest::SHA->new( '256' );
    if (Ref::Util::is_coderef( my $coderef = $request->content )) {
        while (length (my $snippet = $coderef->())) {
            $sha->add ($snippet);
        }
        $request->header( $Net::Amazon::S3::Signature::V4Implementation::X_AMZ_CONTENT_SHA256 => $sha->hexdigest );
    }
	$self->_append_authorization_headers ($request);
    my $sign = $self->_sign( $region );
lib/Net/Amazon/S3/Utils.pm view on Meta::CPAN
package Net::Amazon::S3::Utils;
# ABSTRACT: misc utils
$Net::Amazon::S3::Utils::VERSION = '0.991';
sub parse_arguments {
	my ($self, $arguments, $positional, $aliases) = @_;
	my %args;
	$aliases = {} unless $aliases;
	push @$arguments, %{ pop @$arguments }
		if @$arguments && Ref::Util::is_plain_hashref ($arguments->[-1]);
	my %positional = map +($_ => 1), grep ! exists $args{$_}, @$positional;
	my $positional_count = scalar keys %positional;
	while (@$arguments > 1 && @$arguments > $positional_count) {
		my ($name, $value) = splice @$arguments, -2, 2;
		next if exists $args{$name};
		$args{$name} = $value;
lib/Shared/Examples/Net/Amazon/S3.pm view on Meta::CPAN
package Shared::Examples::Net::Amazon::S3;
# ABSTRACT: used for testing and as example
$Shared::Examples::Net::Amazon::S3::VERSION = '0.991';
use strict;
use warnings;
use parent qw[ Exporter::Tiny ];
use Hash::Util;
use Ref::Util (
	qw[ is_regexpref ],
);
use Test::Deep;
use Test::More;
use Test::LWP::UserAgent;
use Net::Amazon::S3;
use Shared::Examples::Net::Amazon::S3::API;
lib/Shared/Examples/Net/Amazon/S3.pm view on Meta::CPAN
			));
		} else {
			fail "Net::Amazon::S3::Client feature expectation $expectation not found";
		}
	};
}
sub _operation_parameters {
	my ($params, @names) = @_;
	my $map = {};
	$map = shift @names if Ref::Util::is_plain_hashref ($names[0]);
	return
		map +( ($map->{$_} || $_) => $params->{"with_$_"} ),
		grep exists $params->{"with_$_"},
		@names
		;
}
sub _with_keys {
	map "with_$_", @_;
t/test-helper-common.pl view on Meta::CPAN
use strict;
use warnings;
use utf8;
use Test::Deep      v0.111 qw[ !cmp_deeply !bool !code ];
use Test::More      import => [qw[ !ok !is !is_deeply ]];
use Test::Warnings  qw[ :no_end_test had_no_warnings ];
use Safe::Isa qw[];
use Ref::Util qw[];
sub __expand_lazy_param {
	my ($param) = @_;
	return $param->()
		if Ref::Util::is_plain_coderef ($param);
	return $param;
}
sub ok {
	my ($title, %params) = @_;
	local $Test::Builder::Level = $Test::Builder::Level + 1;
	return if exists $params{if} && ! __expand_lazy_param ($params{if});
t/test-helper-common.pl view on Meta::CPAN
	return Test::Deep::bool ($param);
}
sub code (&) {
	goto \& Test::Deep::code;
}
sub expect_coderef {
	return code {
		return Ref::Util::is_plain_coderef ($_[0])
			? (1)
			: (0, "Expect CODEREF")
	};
}
1;