The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Acrux::Config - Config::General Configuration of Acrux

SYNOPSIS

    use Acrux::Config;

    my $config = Acrux::Config->new(
        file => '/etc/myapp.conf',
    );
    say $config->get('foo');

DESCRIPTION

The module works with the configuration using Config::General

All getters of this class are allows get access to configuration parameters by path-pointers. See Acrux::Pointer and RFC 6901

new

    my $config = Acrux::Config->new(
        file => '/etc/myapp.conf',
        default => {foo => 'bar'},
    );

ATTRIBUTES

This plugin supports the following attributes

default

    default => {foo => 'bar'}

Default configuration data

dirs

    dirs => ['/etc/foo', '/etc/bar']

Paths to additional directories of config files

file

    file => '/etc/foo.stuff'

Path to configuration file, absolute or relative, defaults to the value of the $0.conf in the current directory

noload

    noload => 1

This attribute disables loading config file

options

    options => {'-AutoTrue' => 0}

Sets the Config::General options directly

root

    root => '/etc/myapp'

Sets the root directory to configuration files and directories location

METHODS

This plugin implements the following methods

array, list

    dumper $config->array('/foo'); # ['first', 'second', 'third']
        # ['first', 'second', 'third']
    dumper $config->array('/foo'); # 'value'
        # ['value']

Returns an array of found values from configuration

config, conf

    my $config_hash = $config->config; # { ... }

This method returns config structure directly as hash ref

error

    my $error = $config->error;

Returns error string if occurred any errors while creating the object or reading the configuration file

first

    say $config->first('/foo'); # ['first', 'second', 'third']
        # first

Returns an first value of found values from configuration

get

    say $config->get('/datadir');

Returns configuration value by path

hash, object

    dumper $config->hash('/foo'); # { foo => 'first', bar => 'second' }
        # { foo => 'first', bar => 'second' }

Returns an hash of found values from configuration

latest

    say $config->latest('/foo'); # ['first', 'second', 'third']
        # third

Returns an latest value of found values from configuration

load

    my $config = $config->load;

Loading config files

pointer

    my $pointer = $config->pointer;

Returns current Acrux::Pointer object

HISTORY

See Changes file

TO DO

See TODO file

SEE ALSO

Config::General, Acrux::Pointer

AUTHOR

Serż Minus (Sergey Lepenkov) https://www.serzik.com <abalama@cpan.org>

COPYRIGHT

Copyright (C) 1998-2024 D&D Corporation. All Rights Reserved

LICENSE

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

See LICENSE file and https://dev.perl.org/licenses/