NAME

Config::Model::Value::LayeredInclude - Include a sub layer configuration

VERSION

version 2.140

SYNOPSIS

    # in a model declaration:
    'element' => [
      'include' => {
        'class' => 'Config::Model::Value::LayeredInclude',

        # usual Config::Model::Value parameters
        'type' => 'leaf',
        'value_type' => 'uniline',
        'convert' => 'lc',
        'summary' => 'Include file for cascaded configuration',
        'description' => 'To support multiple variants of ...'
      },
    ]

DESCRIPTION

This class inherits from Config::Model::Value. It overrides _store to trigger a refresh of layered value when a value is changed. I.e. changing this value trigger a reload of the referred configuration file which values are used as default value. This class was designed to cope with multistrap configuration.

CAUTION

A configuration file can support 2 kinds of include:

  • Layered include which sets default values like multistrap or ssh. These includes are read-only.

  • Real includes like apache. In this cases modified configuration items can be written to included files.

This class works only with the first type

AUTHOR

Dominique Dumont

COPYRIGHT AND LICENSE

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

This is free software, licensed under:

  The GNU Lesser General Public License, Version 2.1, February 1999