NAME
Pangloss::Config - config singleton for Pangloss.
SYNOPSIS
use Pangloss::Config;
# get config vars from %ENV (if not already set):
my $C = Pangloss::Config->new( \%ENV );
print "pangloss home is: $C->{PG_HOME}\n" if $C->{PG_DEBUG};
# force parsing:
$C->parse_hash( $some_hash );
DESCRIPTION
Configuration hash for Pangloss, implemented as a singleton.
CONFIG VARS
Config Variable [ default value ]
----------------------------------------------------
PG_DEBUG [ 0 ]
PG_HOME [ /path/to/current/dir ]
PG_CONFIG_FILE [ $PG_HOME/conf/controller.yml ]
PG_TEMPLATE_DIR [ $PG_HOME/web ]
PG_TEMPLATE_TYPE [ petal ]
PG_SESSION_TYPE [ file_cache ]
PG_SESSION_EXPIRY [ 15 minutes ]
PG_PIXIE_DSN [ dbi:mysql:dbname=pangloss ]
PG_PIXIE_USER [ ]
PG_PIXIE_PASS [ ]
CONSTRUCTOR
- $class->new( [ $hash ] )
-
create a new Config singleton (unless one exists already) and return it. If the singleton is being created it is initialized with values from $hash, otherwise the defaults are used.
METHODS
- $obj = $obj->parse_hash( $hash )
-
set the config object's params from the hash given, or use the default value.
- @vars = $obj->config_vars
-
get the list of config variables available.
- $val = $obj->get_default_for( $config_var )
-
get the default value of the $config_var named.
- $class = $class->set_default_for( $config_var => $code_ref )
-
set the default value of the $config_var to the $code_ref given. The $code_ref should expect the current object as its first param.
AUTHOR
Steve Purkis <spurkis@quiup.com>