Net::Analysis::Dispatcher - handle the event stuff for the proto analysers |
Net::Analysis::Dispatcher - handle the event stuff for the proto analysers
use Net::Analysis::Dispatcher;
my $d = Net::Analysis::Dispatcher->new(); my $listener = Net::Analysis::Listener::TCP->new(); $d->add_listener (listener => $listener);
This class is used to register listener objects. Whenever any of the objects emit an event, the dispatcher is used to make sure other interested listeners receive the event.
Takes no arguments, tells no lies.
This method adds a new listener to the list of things to be notified of each event.
If the listener object has a field pos
, then we attempt to put the listener
in that position in the event queue. Valid values are first
and last
, to
receive events first and last. Listener::TCP likes to be first, since it adds
extra info to the tcp_packet
that other modules might like to see.
If a listener has already claimed the first or last spot, then we croak with an error.
The name must be a valid Perl function name. By convention, it should start
with the name of the module that is emitting the event (e.g.
http_transaction
).
Where your code is emitting events, it must must document the args in detail, so that listeners will know what to do with them.
This method runs through the listener list, and if appropriate, invokes the listening method for each listener.
A listener gets the event if it has a method which has the same name as the
event_name
.
None by default.
Net::Analysis::Listener::Base
Adam B. Worrall, <adam@cpan.org>
Copyright (C) 2004 by Adam B. Worrall
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.8.5 or, at your option, any later version of Perl 5 you may have available.
The name must be a valid Perl function name. By convention, it should start
with the name of the module that is emitting the event (e.g.
http_transaction
).
Where your code is emitting events, it must must document the args in detail, so that listeners will know what to do with them.
This method runs through the listener list, and if appropriate, invokes the listening method for each listener.
A listener gets the event if it has a method which has the same name as the
event_name
.
Net::Analysis::Dispatcher - handle the event stuff for the proto analysers |