ublish;
use AnyEvent::ZeroMQ::Subscribe;
use AnyMQ::Topic::Trait::ZeroMQ;
use Carp qw/croak/;
use JSON;
has 'publish_address' => ( is => 'rw', isa => 'Str' );
has 'subscribe_address' => ( is => 'rw
( is => 'rw', lazy_build => 1, isa => 'ZeroMQ::Raw::Context' );
has '_zmq_json' => ( is => 'rw', lazy_build => 1, isa => 'JSON' );
# topic => [ callbacks ]
has 'subscriptions' => (
traits =>
=> {
subscription_topics => 'keys',
},
);
sub _build__zmq_json {
my ($self) = @_;
return JSON->new->utf8;
}
sub _build__zmq_context {
my ($self) = @_;
my $c = Ze