NAME

POE::Component::Supervisor::Supervised::Proc - A supervision descriptor for UNIX processes.

SYNOPSIS

use POE;

use POE::Component::Supervisor;
use POE::Component::Supervisor::Supervised::Proc;

POE::Component::Supervisor->new(
    children => [
        POE::Component::Supervisor::Supervised::Proc->new(
            program => [qw(memcached -m 64)],
            restart_policy => "permanent",
        ),
    ],
);

$poe_kernel->run;

DESCRIPTION

This is a factory object that creates POE::Component::Supervisor::Handle::Proc objects.

ATTRIBUTES

See also "ATTRIBUTES" in POE::Component::Supervisor::Handle::Proc, all of the documented attributes that apply to handle creation are borrowed by this class.

handle_class

The class to instantiate.

Defaults to POE::Component::Supervisor::Handle::Proc.

Note that attributes are inherited only from POE::Component::Supervisor::Handle::Proc. If your handle class requires additional attributes, you must subclass your own Supervised variant.

The _inherit_attributes_from_handle_class method can then be invoked on your subclass to reinherit all the attributes. Read the source of POE::Component::Supervisor::Supervised for more details.

METHODS

See also "METHODS" in POE::Component::Supervisor::Supervised.

spawn

Called by POE::Component::Supervisor when a new instance of the child process should be spawned.

is_abnormal_exit

Used by should_restart. See POE::Component::Supervisor::Supervised for details.

Returns true if the exit_code argument is not equal to 0.