Amazon-SQS-ProducerConsumer
view release on metacpan or search on metacpan
lib/Amazon/SQS/Consumer.pm view on Meta::CPAN
$me->{no_loop} = 't';
}
my $seconds_to_wait = $me->{wait_seconds};
do {
# If there no messages in the cache, get some from the queue
$me->{messages} = $me->receive_messages(
Queue => $me->{queue},
MaxNumberOfMessages => $me->{n_messages},
defined $me->{timeout} ? ( VisibilityTimeout => $me->{timeout} ) : ()
) unless defined $me->{messages} && @{$me->{messages}} or $me->{no_loop};
# If there's a message in the cache, return it
if ( my $message = shift @{$me->{messages}} ) {
$me->{DeleteMessageHandle} = $message->{ReceiptHandle};
my $object;
eval {
my $body = $message->{Body};
$body = encode_utf8( $body ) if is_utf8( $body );
$object = decode_json $body;
( run in 0.251 second using v1.01-cache-2.11-cpan-4d50c553e7e )