Mojo::IOLoop::EventEmitter - IOLoop Event Emitter
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!');
Mojo::IOLoop::EventEmitter is the event emitter used by Mojo::IOLoop. Note that this module is EXPERIMENTAL and might change without warning!
Mojo::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.
You can set the MOJO_EVENTEMITTER_DEBUG environment variable to get some advanced diagnostics information printed to STDERR.
MOJO_EVENTEMITTER_DEBUG
STDERR
MOJO_EVENTEMITTER_DEBUG=1
Mojolicious, Mojolicious::Guides, http://mojolicio.us.
To install Mojolicious, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Mojolicious
CPAN shell
perl -MCPAN -e shell install Mojolicious
For more information on module installation, please visit the detailed CPAN module installation guide.