GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
Config::Model::Backend::PerlFile(3) User Contributed Perl Documentation Config::Model::Backend::PerlFile(3)

Config::Model::Backend::PerlFile - Read and write config as a Perl data structure

version 2.149

 use Config::Model ;
 use Data::Dumper ;

 # 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',
            },
        },
    ],
  rw_config  => {
     backend => 'perl_file' ,
     config_dir => '/tmp',
     file  => 'foo.pl',
     auto_create => 1,
  },
 ) ;

 my $inst = $model->instance(root_class_name => 'MyClass' );

 my $root = $inst->config_root ;

 my $steps = 'foo=yada bar="bla bla" baz:en=hello
             baz:fr=bonjour baz:hr="dobar dan"';
 $root->load( steps => $steps ) ;
 $inst->write_back ;

Now, "/tmp/foo.pl" contains:

 {
   bar => 'bla bla',
   baz => {
     en => 'hello',
     fr => 'bonjour',
     hr => 'dobar dan'
   },
   foo => 'yada'
 }

This module is used directly by Config::Model to read or write the content of a configuration tree written with Perl syntax in "Config::Model" configuration tree.

Note:

  • Undefined values are skipped for list element. I.e. if a list element contains "('a',undef,'b')", the data structure contains 'a','b'.
  • Perl file is not created (and may be deleted) when no data is to be written.

Mandoatory parameter to specify where is the Perl configuration file.

Inherited from Config::Model::Backend::Any. The constructor is called by Config::Model::BackendMgr.

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

It can also be undef. In which case "read" returns 0.

When a file is read, "read" returns 1.

Of all parameters passed to this write call-back, only "file_path" is used. This parameter must be a Path::Tiny object.

"write" returns 1.

Dominique Dumont, (ddumont at cpan dot org)

Config::Model, Config::Model::BackendMgr, Config::Model::Backend::Any,

Dominique Dumont

This software is Copyright (c) 2005-2022 by Dominique Dumont.

This is free software, licensed under:

  The GNU Lesser General Public License, Version 2.1, February 1999
2022-04-07 perl v5.32.1

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.