NAME
XAS::Lib::Session - The base class for all POE Sessions.
SYNOPSIS
my $session = XAS::Lib::Session->new(
Alias => 'name',
);
DESCRIPTION
This module provides an object based POE session. This object will perform the necessary actions for the lifetime of the session. This includes handling signals. The following signals INT, TERM, QUIT will trigger the 'shutdown' event which invokes the cleanup() method. The HUP signal will invoke the reload() method.
METHODS
initialize($kernel, $session)
This is where the session should do whatever initialization it needs. This initialization may include defining additional events.
cleanup($kernel, $session)
This method should perform cleanup actions for the session. This is triggered by a "shutdown" event.
reload($kernel, $session)
This method should perform reload actions for the session. By default it calls $kernel->sig_handled() which terminates further handling of the HUP signal.
stop($kernel, $session)
This method should perform stop actions for the session. This is triggered by a "_stop" event.
config($item)
This method will return a value from the configuration items for this object. It is passed one parameter, the name of the config item.
log($level, $message)
This method provides a simple logger. It should be overridden.
PUBLIC EVENTS
The following public events are defined for the session.
startup($kernel, $self)
This event should start whatever processing the session will do. It is passed two parameters:
shutdown
When you send this event to the session, it will invoke the cleanup() method.
PRIVATE EVENTS
The following events are used internally:
session_init
session_interrupt
session_reload
shutdown
They should only be used with caution.
SEE ALSO
XAS::Base
XAS::Class
XAS::Constants
XAS::Exception
XAS::System
XAS::Utils
XAS::Apps::Base::Alerts
XAS::Apps::Base::Collector
XAS::Apps::Base::ExtractData
XAS::Apps::Base::ExtractGlobals
XAS::Apps::Base::RemoveData
XAS::Apps::Database::Schema
XAS::Apps::Templates::Daemon
XAS::Apps::Templates::Generic
XAS::Apps::Test::Echo::Client
XAS::Apps::Test::Echo::Server
XAS::Apps::Test::RPC::Client
XAS::Apps::Test::RPC::Methods
XAS::Apps::Test::RPC::Server
XAS::Collector::Alert
XAS::Collector::Base
XAS::Collector::Connector
XAS::Collector::Factory
XAS::Lib::App
XAS::Lib::App::Daemon
XAS::Lib::App::Daemon::POE
XAS::Lib::Connector
XAS::Lib::Counter
XAS::Lib::Daemon::Logger
XAS::Lib::Daemon::Logging
XAS::Lib::Gearman::Admin
XAS::Lib::Gearman::Admin::Status
XAS::Lib::Gearman::Admin::Worker
XAS::Lib::Gearman::Client
XAS::Lib::Gearman::Client::Status
XAS::Lib::Gearman::Worker
XAS::Lib::Net::Client
XAS::LIb::Net::Server
XAS::Lib::RPC::JSON::Client
XAS::Lib::RPC::JSON::Server
XAS::Lib::Session
XAS::Lib::Spool
XAS::Model::Database
XAS::Model::Database::Alert
XAS::Model::Database::Counter
XAS::Model::DBM
XAS::Monitor::Base
XAS::Monitor::Database
XAS::Monitor::Database::Alert
XAS::Scheduler::Base
XAS::System::Alert
XAS::System::Email
XAS::System::Environment
XAS::System::Logger
AUTHOR
Kevin L. Esteb, <kevin@kesteb.us>
COPYRIGHT AND LICENSE
Copyright (C) 2012 by Kevin L. Esteb
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.