Config::Model::Annotation (3)
Leading comments
Automatically generated by Pod::Man 4.09 (Pod::Simple 3.35) Standard preamble: ========================================================================
NAME
Config::Model::Annotation - Read and write configuration annotationsVERSION
version 2.106SYNOPSIS
use Config::Model ; # define configuration tree object my $model = Config::Model->new ; $model ->create_config_class ( name => "MyClass", element => [ [qw/foo bar/] => { type => 'leaf', value_type => 'string' }, baz => { type => 'hash', index_type => 'string' , cargo => { type => 'leaf', value_type => 'string', }, }, ], ) ; my $inst = $model->instance(root_class_name => 'MyClass' ); my $root = $inst->config_root ; # put some data in config tree the hard way $root->fetch_element('foo')->store('yada') ; $root->fetch_element('baz')->fetch_with_id('en')->store('hello') ; # put annotation the hard way $root->fetch_element('foo')->annotation('english') ; $root->fetch_element('baz')->fetch_with_id('en')->annotation('also english') ; # put more data the easy way my $steps = 'baz:fr=bonjour#french baz:hr="dobar dan"#croatian'; $root->load( steps => $steps ) ; # dump resulting tree with annotations print $root->dump_tree; # save annotations my $annotate_saver = Config::Model::Annotation -> new ( config_class_name => 'MyClass', instance => $inst , root_dir => '/tmp/', # for test ) ; $annotate_saver->save ; # now check content of /tmp/config-model/MyClass-note.pl
DESCRIPTION
This module provides an object that read and write annotations (a bit like comments) to and from a configuration tree and save them in a file (not configuration file). This module can be used to save annotation for configuration files that do not support comments.THis module should not be used for configuration files that support comments.
Depending on the effective id of the process, the annotation is saved in:
- *
-
"/var/lib/config-model/<model_name>-note.yml" for root (EUID== 0)
- *
-
"~/.config-model/<model_name>-note.yml" for normal user (EUID> 0)
CONSTRUCTOR
Quite standard. The constructor is passed a Config::Model::Instance object.METHODS
save()
Save annotations in a file (SeeDESCRIPTION
)
load()
Loads annotations from a file (SeeDESCRIPTION
)
CAVEATS
This module is currently not used.AUTHOR
Dominique Dumont, (ddumont at cpan dot org)SEE ALSO
Config::Model, Config::Model::Node, Config::Model::Loader, Config::Model::Searcher, Config::Model::Value,AUTHOR
Dominique DumontCOPYRIGHT AND LICENSE
This software is Copyright (c) 2005-2017 by Dominique Dumont.This is free software, licensed under:
The GNU Lesser General Public License, Version 2.1, February 1999