AnyEvent-RabbitMQ-PubSub

 view release on metacpan or  search on metacpan

lib/AnyEvent/RabbitMQ/PubSub/Consumer.pm  view on Meta::CPAN

=head1 NAME

AnyEvent::RabbitMQ::PubSub::Consumer - rabbitmq consumer

=cut

has channel => (
    is => 'ro', isa => 'AnyEvent::RabbitMQ::Channel', required => 1
);
has exchange => (
    is => 'ro', isa => 'HashRef', required => 1
);
has queue => (
    is => 'ro', isa => 'HashRef', required => 1
);
has routing_key => (
    is => 'ro', isa => 'Str', default => '#'
);
has prefetch_count => (
    is => 'ro', isa => 'Int', default => 5,
);

=head1 METHODS

lib/AnyEvent/RabbitMQ/PubSub/Publisher.pm  view on Meta::CPAN

package AnyEvent::RabbitMQ::PubSub::Publisher;
use Moose;

use AnyEvent;

has channel => (
    is => 'ro', isa => 'AnyEvent::RabbitMQ::Channel', required => 1
);
has exchange => (
    is => 'ro', isa => 'HashRef', required => 1
);
has routing_key => (
    is => 'ro', isa => 'Str', default => '#'
);
has default_header => (
    is => 'ro', isa => 'Maybe[HashRef]'
);

sub init {
    my ($self) = @_;

    my $cv = AnyEvent->condvar;

    $self->channel->declare_exchange(
        %{ $self->exchange },
        on_success => sub { $cv->send() },

 view all matches for this distribution
 view release on metacpan -  search on metacpan

( run in 6.181 seconds using v1.00-cache-2.02-grep-82fe00e-cpan-72ae3ad1e6da )