Config::Model 0.620 (Default branch)


 
Thread Tools Search this Thread
Special Forums News, Links, Events and Announcements Software Releases - RSS News Config::Model 0.620 (Default branch)
# 1  
Old 03-19-2008
Config::Model 0.620 (Default branch)

Config-Model provides a framework for validating the semantic content of any configuration data. With a configuration model (data structure), config-model provides a validation engine. A curses interface is provided to enter configuration data. Config-Model includes a model example for fstab and a small fstab demo. License: GNU Lesser General Public License (LGPL) Changes:
This release fixes handling of the Term::ReadLine::Gnu dependency, which is now optional. A simple UI (based on STDIN and STDOUT) has been added so that configuration editing can be embedded in another program.Image

More...
Login or Register to Ask a Question

Previous Thread | Next Thread
Login or Register to Ask a Question
Config::Model::Itself(3pm)				User Contributed Perl Documentation				Config::Model::Itself(3pm)

NAME
Config::Model::Itself - Model editor for Config::Model SYNOPSIS
my $meta_model = Config::Model -> new ( ) ; # load Config::Model model my $meta_inst = $model->instance ( root_class_name => 'Itself::Model' , instance_name => 'meta_model' , ); my $meta_root = $meta_inst -> config_root ; # Itself constructor returns an object to read or write the data # structure containing the model to be edited my $rw_obj = Config::Model::Itself -> new( model_object => $meta_root, model_dir => '/path/to/model_files' , ) ; # now load the model to be edited $rw_obj -> read_all( ) ; # For Curses UI prepare a call-back to write model my $wr_back = sub { $rw_obj->write_all(); # create Curses user interface my $dialog = Config::Model::CursesUI-> new ( experience => 'advanced', store => $wr_back, ) ; # start Curses dialog to edit the mode $dialog->start( $meta_model ) ; # that's it. When user quits curses interface, Curses will call # $wr_back sub ref to write the modified model. DESCRIPTION
Config::Itself module and its model files provide a model of Config:Model (hence the Itself name). Let's step back a little to explain. Any configuration data is, in essence, structured data. This data could be stored in an XML file. A configuration model is a way to describe the structure and relation of all items of a configuration data set. This configuration model is also expressed as structured data. This structure data is structured and follow a set of rules which are described for humans in Config::Model. The structure and rules documented in Config::Model are also expressed in a model in the files provided with "Config::Model::Itself". Hence the possibity to verify, modify configuration data provided by Config::Model can also be applied on configuration models. Using the same user interface. From a Perl point of view, Config::Model::Itself provides a class dedicated to read and write a set of model files. Constructor new ( model_object => ... , model_dir => ... ) Creates a new read/write handler. This handler is dedicated to the "model_object" passed with the constructor. This parameter must be a Config::Model::Node class. Methods read_all ( root_model => ... , [ force_load => 1 ] ) Load all the model files contained in "model_dir" and all its subdirectories. "root_model" is used to filter the classes read. Use "force_load" if you are trying to load a model containing errors. "read_all" returns a hash ref containing ( class_name => file_name , ...) write_all Will write back configuration model in the specified directory. The structure of the read directory is respected. write_model_snippet( snippet_dir => foo, model_file => bar.pl ) Write snippet models in separate ".d" directory. E.g. a snippet for class "Foo::Bar" will be written in "Foo/Bar.d/bar.pl" file. This file is to be used by augment_config_class '...', class_data )"> read_model_snippet( snippet_dir => foo, model_file => bar.pl ) To read model snippets, this methid will search recursively $snippet_dir and load all "bar.pl" files found in there. list_class_element Returns a string listing all the class and elements. Useful for debugging your configuration model. get_dot_diagram Returns a graphviz dot file that represents the strcuture of the configuration model: o "include" are represented by solid lines o Class usage (i.e. "config_class_name" parameter) is represented by dashed lines. The name of the element is attached to the dashed line. AUTHOR
Dominique Dumont, (ddumont at cpan dot org) COPYRIGHT
Copyright (C) 2007-2012 by Dominique Dumont LICENSE
This library is free software; you can redistribute it and/or modify it under the LGPL terms. SEE ALSO
Config::Model, Config::Model::Node, perl v5.14.2 2012-06-22 Config::Model::Itself(3pm)