yMQ::Trait::AMQP;
use Moose::Role;
use File::ShareDir;
use AnyEvent;
use AnyEvent::RabbitMQ;
use JSON;
use Try::Tiny;
use Carp qw(croak carp);
has host => (is => "ro", isa => "Str");
has port => (is
er}->method_frame->routing_key;
try { $self->topics->{$topic}->AnyMQ::Topic::publish(JSON::from_json($payload)) }
catch { croak "failed to republsih on $topic: $_" };
};
}
sub new
=> $self->name,
header => { reply_to => $self->bus->_rf_queue },
body => JSON::to_json($_)
) for @events;
};
sub DEMOLISH {}; after 'DEMOLISH' => sub {
my $self = shift;