Amazon-SQS-Client
view release on metacpan or search on metacpan
share/AddPermission.pm view on Meta::CPAN
package AddPermission;
use strict;
use warnings;
use English qw(-no_match_vars);
use Amazon::SQS::Model::AddPermissionRequest;
use Data::Dumper;
use parent qw(Amazon::SQS::Sample);
########################################################################
sub sample {
########################################################################
my ( $self, $label, $actions, $account_ids, $queue_url ) = @_;
if ( !$actions ) {
warn "actions is a required argument\n";
$self->help();
}
if ( !$account_ids ) {
warn "acccount-ids is a required argument\n";
$self->help();
}
if ( !$label ) {
warn "label is a required argument\n";
$self->help();
}
$actions = [ split /\s*,\s*/xsm, $actions ];
$account_ids = [ split /\s*,\s*/xsm, $account_ids ];
my $service = $self->get_service;
my $config = $self->get_config;
$queue_url //= $config && $config->get_queue_url;
if ( !$queue_url ) {
$self->help();
}
my $request = Amazon::SQS::Model::AddPermissionRequest->new(
{ QueueUrl => $queue_url,
Label => $label,
ActionName => $actions,
AWSAccountId => $account_ids,
}
);
my $response = eval { $service->addPermission($request); };
if ( $response->isSetResponseMetadata() ) {
my $responseMetadata = $response->getResponseMetadata();
if ( $responseMetadata->isSetRequestId() ) {
my $requestId = $responseMetadata->getRequestId();
}
}
return;
}
1;
## no critic
( run in 1.323 second using v1.01-cache-2.11-cpan-39bf76dae61 )