NAME

Config::Model::Backend::PlainFile - Read and write config as plain file

VERSION

version 1.249

SYNOPSIS

use Config::Model;
use Log::Log4perl qw(:easy);
Log::Log4perl->easy_init($WARN);

my $model = Config::Model->new;

my $inst = $model->create_config_class(
   name => "WithPlainFile",
   element => [ 
       [qw/source new/] => { qw/type leaf value_type uniline/ },
   ],
   read_config  => [ 
       { 
           backend => 'plain_file', 
           config_dir => '/tmp',
       },
   ],
);

my $inst = $model->instance(root_class_name => 'WithPlainFile' );
my $root = $inst->config_root ;

$root->load('source=foo new=yes' );

$inst->write_back ;

Now /tmp directory will contain 2 files: source and new with foo and yes inside.

DESCRIPTION

This module is used directly by Config::Model to read or write the content of a configuration tree written in several files. Each element of the node is written in a plain file.

This module supports currently only leaf and list elements. In the case of list element, each line of the file is a value of the list.

CONSTRUCTOR

new ( node => $node_obj, name => 'plain_file' ) ;

Inherited from Config::Model::Backend::Any. The constructor will be called by Config::Model::AutoRead.

read ( io_handle => ... )

Of all parameters passed to this read call-back, only io_handle is used. This parameter must be IO::File object already opened for read.

It can also be undef. In this case, read() will return 0.

When a file is read, read() will return 1.

write ( io_handle => ... )

Of all parameters passed to this write call-back, only io_handle is used. This parameter must be IO::File object already opened for write.

write() will return 1.

AUTHOR

Dominique Dumont, (ddumont at cpan dot org)

SEE ALSO

Config::Model, Config::Model::AutoRead, Config::Model::Backend::Any,