Config::Model::Itself provides a configuration model for Config::Model. In other words, the structure of a model specification is described in Config::Model::Itself so you can use the same user interface to edit configuration data (for instance Xorg configuration data from xorg.conf) and Xorg model (if you need to add new parameters in Xorg model). You can also create your own configuration model to get a configuration tool for your own application. License: GNU Lesser General Public License (LGPL) Changes:
This release adds a graphical interface to config-model-edit, so you can update configuration models (like Xorg) with a graphical interface instead of editing the Perl data structure.
Config::Model::Report(3pm) User Contributed Perl Documentation Config::Model::Report(3pm)NAME
Config::Model::Report - Reports data from config tree
VERSION
version 2.021
SYNOPSIS
use Config::Model;
use Log::Log4perl qw(:easy);
Log::Log4perl->easy_init($WARN);
# define configuration tree object
my $model = Config::Model->new;
$model->create_config_class(
name => "Foo",
element => [
[qw/foo bar/] => {
type => 'leaf',
value_type => 'string'
},
],
description => [
foo => 'some foo explanation',
bar => 'some bar explanation',
]
);
$model->create_config_class(
name => "MyClass",
element => [
[qw/foo bar/] => {
type => 'leaf',
value_type => 'string'
},
my_enum => {
type => 'leaf',
value_type => 'enum',
choice => [qw/A B C/],
help => {
A => 'first letter',
B => 'second letter',
C => 'third letter',
},
description => 'some letters',
},
hash_of_nodes => {
type => 'hash', # hash id
index_type => 'string',
cargo => {
type => 'node',
config_class_name => 'Foo'
},
},
],
);
my $inst = $model->instance(root_class_name => 'MyClass' );
my $root = $inst->config_root ;
# put data
my $step = 'foo=FOO my_enum=B hash_of_nodes:fr foo=bonjour -
hash_of_nodes:en foo=hello ';
$root->load( step => $step );
print $root->report ;
# foo = FOO
#
# my_enum = B
# DESCRIPTION: some letters
# SELECTED: second letter
#
# hash_of_nodes:en foo = hello
# DESCRIPTION: some foo explanation
#
# hash_of_nodes:fr foo = bonjour
# DESCRIPTION: some foo explanation
DESCRIPTION
This module is used directly by Config::Model::Node to provide a human readable report of the configuration. This report includes the
configuration values and (if provided by the model) the description of the configuration item and their effect.
A "report" will show "all" configuration items. An "audit" will show only configuration items which are different from their default value.
CONSTRUCTOR
new ( )
No parameter. The constructor should be used only by Config::Model::Node.
Methods
report
Returns a string containing the configuration values and (if provided by the model) the description of the configuration item and their
effect.
Parameters are:
audit
Set to 1 to report only configuration data different from default values. Default is 0.
node
Reference to the Config::Model::Node object that is dumped. All nodes and leaves attached to this node are also dumped.
AUTHOR
Dominique Dumont, (ddumont at cpan dot org)
SEE ALSO
Config::Model,Config::Model::Node,Config::Model::Walker
perl v5.14.2 2012-11-09 Config::Model::Report(3pm)