Michael Peters > Smolder > Smolder::Conf

Download:
Smolder-1.51.tar.gz

Dependencies

Annotate this POD

CPAN RT

New  7
Open  15
View/Report Bugs
Source   Latest Release: Smolder-1.52

NAME ^

Smolder::Conf - Smolder configuration module

SYNOPSIS ^

    # all configuration directives are available as exported subs
    use Smolder::Conf qw(Secret Port);
    $secret = Secret;

    # you can also call get() in Smolder::Conf directly
    $port = Smolder::Conf->get("Port");

    # or you can access them as methods in the Smolder::Conf module
    $port = Smolder::Conf->Port;

    # give Smolder::Conf some values to override the defaults
    Smolder::Conf->init(
        Secret   => '1Adxd23023s',
        Port     => 80,
        HostName => 'smolder.myorg.com',
        LogFile  => '/path/to/logs',
    );

    # pull the conf values from a file
    Smolder::Conf->init_from_file('/path/to/conf/file');

DESCRIPTION ^

This module provides access to the configuration settings in smolder.conf. Smolder tries to have reasonable defaults but they can be overridden when needed.

OPTIONS ^

The following configuration options are available:

Port

Port on which Smolder should listen.

Default: 8080

HostName

Host name to listen to.

Default: localhost.localdomain.

FromAddress

Email address from which reports should be sent.

Default: smolder@localhost.localdomain

SMTPHost

Hostname through which SMTP mail should be sent.

Default: localhost.localdomain

LogFile

Log file to write to.

Default: none

LogLevel

The level at which things will start to be logged. Only used if LogFile is set.

Default: warning

PidFile

File in which to write the PID of the Smolder process. A PidFile is required for smolderctl to work.

Default: none

TemplateDir

Source of Smolder's templates.

Default: templates in the share directory

DataDir

Directory for all Smolder's stored data.

Default: .smolder in the user's home directory

HtdocsDir

Smolder's HTML documents directory.

Default: htdocs in the share directory

SQLDir

Smolder's SQL directory.

Default: sql in the share directory

Secret

XXX

Default: XXX

AutoRefreshReports

XXX

Default: 0

TruncateTestFilenames

XXX

Default: 0

ErrorsToScreen

XXX

Default: 0

ReportsPerPage

Number of reports to show per Smolder web screen.

Default: 5

AutoRedirectToProject

XXX

Default: 0

METHODS ^

init

Override the configuration defaults by providing named-value pairs:

    Smolder::Conf->init(
        Secret   => '1Adxd23023s',
        Port     => 80,
        HostName => 'smolder.myorg.com',
        LogFile  => '/path/to/logs',
    );

init_from_file

Override the configuration defaults by providing a file. Config files are simple lists of name-values pairs. One pair per-line and each name/value is separated by whitespace:

    HostName    smolder.test
    DataDir     /var/lib/smolder/
    Port        80
    FromAddress smolder@smolder.test
    TemplateDir /var/share/smolder/templates
    HtdocsDir   /var/share/smolder/htdocs
    SQLDir      /var/share/smolder/sql

get

Given a directive name, returns the value (which may be a list) of a configuration directive. Directive names are case-insensitive.

    $value = Smolder::Conf->get('DirectiveName');

test_data_dir

The directory path for test data directory for this copy of Smolder

ACCESSOR METHODS ^

All configuration directives can be accessed as methods themselves.

    my $port = Smolder::Conf->port();

Gets the value of a directive using an autoloaded method. Directive names are case-insensitive.

EXPORTING DIRECTIVES ^

Each configuration directive can also be accessed as an exported subroutine.

    use Smolder::Conf qw(port FromAddress);
    ...
    my $port = port();
    my $from = FromAddress();

Directive names are case-insensitive. Gets the value of a variable using an exported, autoloaded method. Case-insensitive.

syntax highlighting: