Name

Class::Usul::Config - Inflate config values

Synopsis

use Class::Usul::Config;

Description

Defines the following list of attributes

appclass

Required string. The classname of the application for which this is the configuration class

appldir

Directory. Defaults to the application's install directory

binsdir

Directory. Defaults to the application's bin directory

ctlfile

File in the ctrldir directory that contains this programs control data

ctrldir

Directory containing the per program configuration files

dbasedir

Directory containing the data file used to create the applications database

encoding

String default to the constant DEFAULT_ENCODING

extension

String defaults to the constant CONFIG_EXTN

home

Directory containing the config file. Required

l10n_attributes

Hash ref of attributes used to construct a Class::Usul::L10N object

locale

The locale for language translation of text. Defaults to the constant LANG

localedir

Directory containing the GNU Gettext portable object files used to translate messages into different languages

locales

Array reference containing the list of supported locales. The default list contains only the constant LANG

lock_attributes

Hash ref of attributes used to construct an IPC::SRLock object

log_attributes

Hash ref of attributes used to construct a Class::Usul::Log object

logfile

File in the logsdir to which this program will log

logsdir

Directory containing the application log files

name

String. Name of the program

no_thrash

Integer default to 3. Number of seconds to sleep in a polling loop to avoid processor thrash

pathname

File defaults to the absolute path to the PROGRAM_NAME system constant

phase

Integer. Phase number indicates the type of install, e.g. 1 live, 2 test, 3 development

prefix

String. Program prefix

root

Directory. Path to the web applications document root

rundir

Directory. Contains a running programs PID file

salt

String. This applications salt for passwords as set by the administrators . It is used to perturb the encryption methods. Defaults to the prefix attribute value

sessdir

Directory. The session directory

shell

File. The default shell used to create new OS users

suid

File. Name of the setuid root program in the bin directory. Defaults to the prefix_admin

tempdir

Directory. It is the location of any temporary files created by the application. Defaults to the File::Spec tempdir

vardir

Directory. Contains all of the non program code directories

Subroutines/Methods

BUILDARGS

Loads the configuration files if specified. Calls "inflate_symbol" and "inflate_path"

canonicalise

$untainted_canonpath = $self->canonicalise( $base, $relpath );

Appends $relpath to $base using File::Spec::Functions. The $base argument can be an array ref or a scalar. The $relpath argument must be separated by slashes. The return path is untainted and canonicalised

inflate_paths

Calls "_inflate_path" for each of the matching values in the hash that was passed as argument

_inflate_path

Inflates the __symbol( relative_path )__ values to their actual runtime values

_inflate_symbol

Inflates the __SYMBOL__ values to their actual runtime values

Configuration and Environment

None

Diagnostics

None

Dependencies

Class::Usul::File
Moo

Incompatibilities

There are no known incompatibilities in this module

Bugs and Limitations

There are no known bugs in this module. Please report problems to the address below. Patches are welcome

Author

Peter Flanigan, <Support at RoxSoft.co.uk>

License and Copyright

Copyright (c) 2014 Peter Flanigan. All rights reserved

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See perlartistic

This program is distributed in the hope that it will be useful, but WITHOUT WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE