The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

App::CELL::Config -- load, store, and dispense meta parameters, core parameters, and site parameters

SYNOPSIS

    use App::CELL::Config qw( $meta $core $site );

    # get a parameter value (returns value or undef)
    my $value;
    $value = $meta->MY_PARAM;
    $value = $core->MY_PARAM;
    $value = $site->MY_PARAM;

    # set a meta parameter
    $meta->set( 'MY_PARAM', 42 );

    # set an as-yet undefined core/site parameter
    $core->set( 'MY_PARAM', 42 );
    $site->set( 'MY_PARAM', 42 );

DESCRIPTION

The purpose of the App::CELL::Config module is to maintain and provide access to three package variables, $meta, $core, and $site, which are actually singleton objects, containing configuration parameters loaded by App::CELL::Load from files in the distro sharedir and the site configuration directory, if any.

For details, read App::CELL::Guilde.

EXPORTS

This module exports three scalars: the 'singleton' objects $meta, $core, and $site.

SUBROUTINES

AUTOLOAD

The AUTOLOAD routine handles calls that look like this: $meta->MY_PARAM $core->MY_PARAM $site->MY_PARAM

DESTROY

For some reason, Perl 5.012 seems to want a DESTROY method

exists

Determine parameter existence.

get

Wrapper for get_param

get_param

Get value of config param provided in the argument.

get_param_metadata

Routine to provide access not only to the value, but also to the metadata (file and line number where parameter was defined) associated with a given parameter.

Takes: parameter name. Returns: reference to the hash associated with the given parameter, or undef if no parameter found.

set

Use this function to set new params (meta/core/site) or change existing ones (meta only). Takes two arguments: parameter name and new value. Returns a status object.