Mojo::IOLoop::EventEmiUser(Contributed Perl DocumMojo::IOLoop::EventEmitter(3)NAMEMojo::IOLoop::EventEmitter - IOLoop Event Emitter
SYNOPSIS
use Mojo::IOLoop::EventEmitter;
# Create new event emitter
my $e = Mojo::IOLoop::EventEmitter->new;
# Subscribe to events
$e->on(error => sub {
my ($self, $error) = @_;
warn "Catched: $error";
});
$e->on(test => sub {
my ($self, $message) = @_;
die "test: $message";
});
# Emit events
$e->emit(test => 'Hello!');
DESCRIPTIONMojo::IOLoop::EventEmitter is the event emitter used by Mojo::IOLoop.
Note that this module is EXPERIMENTAL and might change without warning!
METHODSMojo::IOLoop::EventEmitter inherits all methods from Mojo::Base and
implements the following new ones.
"emit"
$e->emit('foo');
$e->emit('foo', 123);
Emit event.
"on"
my $cb = $e->on(foo => sub {...});
Subscribe to event.
"once"
my $cb = $e->once(foo => sub {...});
Subscribe to event and unsubscribe again after it has been emitted
once.
"subscribers"
my $subscribers = $e->subscribers('foo');
All subscribers for event.
"unsubscribe"
$e->unsubscribe(foo => $cb);
Unsubscribe from event.
DEBUGGING
You can set the "MOJO_EVENTEMITTER_DEBUG" environment variable to get
some advanced diagnostics information printed to "STDERR".
MOJO_EVENTEMITTER_DEBUG=1
SEE ALSO
Mojolicious, Mojolicious::Guides, <http://mojolicio.us>.
perl v5.14.1 2011-09-01 Mojo::IOLoop::EventEmitter(3)