The base class role for moosex::poe
version 0.215
package Counter;
use MooseX::Poe;
has name => (
isa => 'Str',
is => 'rw',
default => sub { 'Foo ' },
);
has count => (
isa => 'Int',
is => 'rw',
lazy => 1,
default => sub { 0 },
);
sub START {
my ($self) = @_;
$self->yield('increment');
}
sub increment {
my ($self) = @_;
$self->count( $self->count + 1 );
$self->yield('increment') unless $self->count > 3;
}
no MooseX::Poe;
MooseX::POE::Meta::TraitObject is a role that is applied to the object base classe (usually Moose::Object) that implements a POE::Session.
Get the internal \s-1POE\s0 Session \s-1ID\s0, this is useful to hand to other \s-1POE\s0 aware functions.
A cheap alias for the same POE::Kernel function which will gurantee posting to the object's session.
Along similar lines to Moose's \*(C`BUILDALL\*(C' method which calls all the \*(C`BUILD\*(C' methods, this function will call all the \*(C`START\*(C' methods in your inheritance hierarchy automatically when \s-1POE\s0 first runs your session. (This corresponds to the \*(C`_start\*(C' event from \s-1POE\s0.)
Along similar lines to \*(C`STARTALL\*(C', but for \*(C`STOP\*(C' instead.
Chris Prather <[email protected]>
Ash Berlin <[email protected]>
Chris Williams <[email protected]>
Yuval (nothingmuch) Kogman
Torsten Raudssus <[email protected]> <http://www.raudssus.de/>
This software is copyright (c) 2010 by Chris Prather, Ash Berlin, Chris Williams, Yuval Kogman, Torsten Raudssus.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.