Agent-TCLI

 view release on metacpan or  search on metacpan

lib/Agent/TCLI/Package/Base.pm  view on Meta::CPAN

package Agent::TCLI::Package::Base;
#
# $Id: Base.pm 62 2007-05-03 15:55:17Z hacker $
#
=head1 NAME

Agent::TCLI::Package::Base - Base object for other Agent::TCLI::Package objects

=head1 SYNOPSIS

Base object for Commands. May be used directly in a command collection
or may be extended for special functionality. Note that the Control and
Library will not recognize any class extension without also being modified.

=head1 DESCRIPTION

This needs much more elaboration. For now, please use the source
of existing command packages. I apologize for the inconvenience.

=head1 INTERFACE

=cut

use warnings;
use strict;
use Carp;
use Object::InsideOut qw(Agent::TCLI::Base);

use POE;
use Scalar::Util  qw(blessed looks_like_number);
use Getopt::Lucid;
use YAML::Syck;
use XML::Simple;
use File::ShareDir;
#use FormValidator::Simple;

$YAML::Syck::Headless = 1;
$YAML::Syck::SortKeys = 1;

our $VERSION = '0.030.'.sprintf "%04d", (qw($Id: Base.pm 62 2007-05-03 15:55:17Z hacker $))[2];

=head2 ATTRIBUTES

The following attributes are accessible through standard accessor/mutator
methods unless otherwise noted

=over

=item name

The name of the package. This is the word that is used to refer to the package POE::Session.
B<name> should only contain SCALAR type values.

=cut
my @name		:Field
				:Arg('name'=>'name','default'=>'base')
				:Acc('name');

=item commands

An array of the command objects in this package.

=cut
my @commands	:Field
				:Arg('commands')
				:Get('commands')
				:Type('HASH');

=item parameters

A hash of the parameters used in this package. Often parameters are shared
accross individual commands, so they are defined within the Package.
They are refered to by each command in the package.
B<parameters> should only contain hash values.

=cut
my @parameters	:Field
				:Type('HASH')



( run in 0.848 second using v1.01-cache-2.11-cpan-39bf76dae61 )