NAME
WWW::RabbitMQ::Cluster::Shovel
SYNOPSIS
# You need to have a broker object first
my $broker = WWW::RabbitMQ::Cluster::Broker->new(
username => 'guest',
password => 'guest,
host => 'localhost',
);
# Pass the broker object to the shovel with your shovel's config
my $shovel = WWW::RabbitMQ::Cluster::Shovel->new(
$broker,
config => {
component => 'shovel',
name => 'example_shovel',
vhost => 'example_vhost',
value => {
'ack-mode' => 'on-confirm',
'delete-after' => 'never',
'src-uri' => 'amqp://',
'src-exchange' => 'amq.direct',
'src-exchange-key' => 'example_queue',
'dest-uri' => 'amqp://guest:guest@remotehost.com/example_vhost',
'dest-exchange' => 'amq.direct',
'dest-exchange-key' => 'example_queue',
},
},
);
# Get or Create the shovel. This is probably the best method to use in general for setting shovels
# up, unless you are specifically looking for failures.
$shovel->getOrPut;
# Get all the configuration details for the shovel
my $shovel_details = $shovel->getConfig;
DESCRIPTION
A simple wrapper around the RabbitMQ Shovel plugin
METHODS
new
Create a new WWW::RabbitMQ::Cluster::Broker Object
Takes a $broker as its first argument, needs to be a valid WWW::RabbitMQ::Cluster::Broker object.
Additional arguments will be used as part of the shovel configuration.
delete
Removes the shovel from the given broker.
get
Retrieves the shovel based on the configuration given
getConfig
Retrieves the current configuration for the shovel object, which can be updated with ->get or getOrPut
getOrPut
Safely lets you create or retrieve a shovel to minimize failing
put
Creates the shovel based on given configuration