=head1 NAME

Config::Model::models::Itself::ConfigWrite - Configuration class Itself::ConfigWrite

=head1 DESCRIPTION

Configuration classes used by L<Config::Model>

=head1 Elements

=head2 syntax

Deprecated parameter that specified the file syntax to store permanently configuration data. Replaced by "backend"I<< Optional. Type enum. choice: 'cds', 'perl', 'ini', 'custom'.  >>

=head2 backend

specifies the backend to store permanently configuration data.I<< Optional. Type enum. choice: 'cds_file', 'perl_file', 'ini_file', 'augeas', 'custom'.  >>

Here are some explanations on the possible values:

=over

=item augeas

Experimental backend with RedHat's Augeas library. See http://augeas.net for details

=item cds_file

file with config data string. This is Config::Model own serialisation format, designed to be compact and readable. Configuration filename is made with instance name

=item custom

Custom format. You must specify your own class and method to perform the read or write function. See Config::Model::AutoRead doc for more details

=item ini_file

Ini file format. Beware that the structure of your model must match the limitations of the INI file format, i.e only a 2 levels hierarchy. Configuration filename is made with instance name

=item perl_file

file with a perl data structure. Configuration filename is made with instance name

=back



=head2 file - target configuration file name

specify the configuration file name. This parameter may not be applicable depending on your application. It may also be hardcoded in a custom backend. If not specified, the instance name will be used as base name for your configuration file.I<< Optional. Type uniline.  >>

=head2 class

I<< Optional. Type uniline.  >>

=head2 save

Specify how to save the configuration file. Either create a newfile (with extension .augnew, and do not overwrite the original file) or move the original file into a backup file (.augsave extension). Configuration files are overwritten by default. I<< Optional. Type enum. choice: 'backup', 'newfile'.  >>

=head2 config_file

Specify the configuration file (without path) that will store configuration information. I<< Optional. Type uniline.  >>

=head2 full_dump

Also dump default values in the data structure. Useful if the dumped configuration data will be used by the application. (default is yes)I<< Optional. Type boolean. upstream_default: '1'.  >>

=head2 comment_delimiter

comment starts with this character. I<< Optional. Type uniline. upstream_default: '#'.  >>

=head2 set_in

Sometimes, the structure of a file loaded by Augeas starts directly with a list of items. For instance, /etc/hosts structure starts with a list of lines that specify hosts and IP addresses. This parameter specifies an element name in Config::Model root class that will hold the configuration data retrieved by Augeas. I<< Optional. Type reference.  >>

=head2 sequential_lens

List of hash or list Augeas lenses where value are stored in sequential Augeas nodes. See Config::Model::Backend::Augeas for details.I<< Optional. Type list of uniline.  >>

=head2 function

I<< Optional. Type uniline.  >>

=head2 config_dir

I<< Mandatory. Type uniline.  >>

=head2 auto_create - Creates configuration files as needed

I<< Optional. Type boolean. upstream_default: '0'.  >>

=head1 SEE ALSO

=over

=item *

L<config-edit>

=back

=cut

