Chris Williams > POE-Component-IRC-Plugin-Role > POE::Component::IRC::Plugin::Role

Download:
POE-Component-IRC-Plugin-Role-0.06.tar.gz

Dependencies

Annotate this POD

Website

View/Report Bugs
Module Version: 0.06   Source  

NAME ^

POE::Component::IRC::Plugin::Role - A Moose role for POE::Component::IRC plugins

SYNOPSIS ^

  package My::Plugin;

  use Moose;
  use POE::Component::IRC::Plugin qw(:ALL);

  with 'POE::Component::IRC::Plugin::Role';

  # PCI_register and PCI_unregister are automatically dealt with

  sub S_001 {
    my $self = shift;
    $self->irc->yield( 'join', '#channel' );
    return PCI_EAT_NONE;
  }

  1;

DESCRIPTION ^

POE::Component::IRC::Plugin::Role is a Moose role that encapsulates some of the boilerplate required to write POE::Component::IRC plugins with Moose.

Simply consume the role in your Moose based plugins.

ATTRIBUTES ^

irc

Should be a POE::Component::IRC object. It can not be set in the constructor, but has set_irc and clear_irc writer and clearer methods, respectively. It is usually set for you by PCI_register and cleared by PCI_unregister methods.

S_events

An arrayref of SERVER events to register for when PCI_Register is called. The default is to register events for the S_* prefixed methods in your module.

U_events

An arrayref of USER events to register for when PCI_register is called. The default is to register events for the U_* prefixed methods in your module.

METHODS ^

PCI_register

This is called everytime a plugin object is added to POE::Component::IRC. It will set the irc attribute and register for the requested S_events and U_events.

PCI_unregister

This is called everytime a plugin object is removed from POE::Component::IRC. It will clear the irc attribute.

AUTHOR ^

Chris BinGOs Williams <chris@bingosnet.co.uk>

Chris Prather

Shawn M Moore

LICENSE ^

Copyright © Chris Williams

This module may be used, modified, and distributed under the same terms as Perl itself. Please see the license that came with your Perl distribution for details.

SEE ALSO ^

POE::Component::IRC

POE::Component::IRC::Plugin

Moose::Role

syntax highlighting: