NAME
Siebel::Srvrmgr::ListParser::Output - base class of srvrmgr output
SYNOPSIS
use Siebel::Srvrmgr::ListParser::Output;
my $output = Siebel::Srvrmgr::ListParser::Output->new({ data_type => 'sometype',
raw_data => \@data,
cmd_line => 'list something from somewhere'});
print 'Fields pattern: ', $output->get_fields_pattern(), "\n";
$output->store($complete_pathname);
DESCRIPTION
Siebel::Srvrmgr::ListParser::Output is a superclass of output types classes.
It contains only basic attributes and methods that enable specific parsing and serializable methods.
The parse
method must be overrided by subclasses or a exception will be raised during object creation.
ATTRIBUTES
data_type
Identifies which kind of data is being given to the class. This is usually used by abstract factory classes to identify which subclass of Siebel::Srvrmgr::ListParser::Output must be created.
This attribute is required during object creation.
raw_data
An array reference with the lines to be processed.
This attribute is required during object creation.
data_parsed
An hash reference with the data parsed from raw_data
attribute.
cmd_line
A string of the command that originates the output (the data of raw_data
attribute).
This attribute is required during object creation.
fields_pattern
When starting processing the output of list comp
command, the header is read and the size of each column is taken from the header of each column. With this information a pattern is build to match each value foreach line read. This attribute will hold the string that describes this pattern (that latter will be used with the unpack()
builtin function).
Therefore is really important that the header of srvrmgr
program is not removed or the parser will not work properly and probably an exception will be raised by it.
METHODS
get_fields_pattern
Returns an string of the attribute fields_pattern
.
get_cmd_line
Returns an string of the attribute get_cmd_line
.
get_data_parsed
Retuns an hash reference of data_parsed
attribute.
set_data_parsed
Sets the data_parsed
attribute. It is expected an hash reference as parameter of the method.
get_raw_data
Returns an array reference of the attribute raw_data
.
set_raw_data
Sets the raw_data
attribute. An array reference is expected as parameter of the method.
load
Method inherited from MooseX::Storage::IO::StorableFile role. It loads a previously serialized Siebel::Srvrmgr::ListParser:Output object into memory.
store
Method inherited from MooseX::Storage::IO::StorableFile role. It stores (serializes) a Siebel::Srvrmgr::ListParser:Output object into a file. A a string of the filename (with complete or not full path) is expected as a parameter.
BUILD
All subclasses of Siebel::Srvrmgr::ListParser::Object will call the method parse
right after object instatiation.
parse
The method that actually does the parse of raw_data
attribute. It should be overrided by subclasses or an exception will be raised during object creation.
CAVEATS
All subclasses of Siebel::Srvrmgr::ListParser::Output expect to have both the header and trailer of executed commands in srvrmgr
program. Removing one or both of them will result in parsing errors and probably exceptions.
SEE ALSO
AUTHOR
Alceu Rodrigues de Freitas Junior, <arfreitas@cpan.org<>
COPYRIGHT AND LICENSE
This software is copyright (c) 2012 of Alceu Rodrigues de Freitas Junior, <arfreitas@cpan.org<>
This file is part of Siebel Monitoring Tools.
Siebel Monitoring Tools is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
Siebel Monitoring Tools is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with Siebel Monitoring Tools. If not, see <http://www.gnu.org/licenses/>.