App-TailRabbit
view release on metacpan or search on metacpan
lib/App/TailRabbit.pm view on Meta::CPAN
package App::TailRabbit;
use Moose;
use MooseX::Getopt;
use Net::RabbitFoot;
use Data::Dumper;
use MooseX::Types::Moose qw/ ArrayRef Object Bool /;
use MooseX::Types::Common::String qw/ NonEmptySimpleStr /;
use AnyEvent;
use YAML qw/LoadFile/;
use File::HomeDir;
use Path::Class qw/ file /;
use MooseX::Types::LoadableClass qw/ LoadableClass /;
use namespace::autoclean;
our $VERSION = '0.003';
with qw/
MooseX::Getopt
MooseX::ConfigFromFile
/;
has exchange_name => (
is => 'ro',
isa => NonEmptySimpleStr,
required => 1,
);
has routing_key => (
is => 'ro',
isa => ArrayRef[NonEmptySimpleStr],
default => sub { [] },
);
has rabbitmq_host => (
isa => NonEmptySimpleStr,
is => 'ro',
default => 'localhost',
);
has [qw/ rabbitmq_user rabbitmq_pass /] => (
isa => NonEmptySimpleStr,
is => 'ro',
default => 'guest',
);
has convertor => (
isa => LoadableClass,
is => 'ro',
coerce => 1,
default => 'App::TailRabbit::Convertor::Null',
);
has _convertor => (
is => 'ro',
isa => Object,
lazy => 1,
default => sub {
shift->convertor->new
},
handles => [qw/ convert /],
);
has exchange_type => (
is => 'ro',
isa => NonEmptySimpleStr,
default => 'topic',
);
has durable => (
is => 'ro',
isa => Bool,
default => 0,
);
( run in 2.050 seconds using v1.01-cache-2.11-cpan-39bf76dae61 )