Config.pod.dist 2.06 KB
# --
# Copyright (C) 2001-2017 OTRS AG, http://otrs.com/
# --
# This software comes with ABSOLUTELY NO WARRANTY. For details, see
# the enclosed file COPYING for license information (AGPL). If you
# did not receive this file, see http://www.gnu.org/licenses/agpl.txt.
# --

=head1 NAME

Kernel::Config - Provide access to the system configuration at runtime.

=head1 SYNOPSIS

    my $ConfigObject = $Kernel::OM->Get('Kernel::Config');

    my $Value = $ConfigObject->Get('My::Setting::Name');

    $ConfigObject->Set(
        Key   => 'My::Setting::Name',
        Value => 42,    # new value; set to undef to remove the setting
    );

=head1 DESCRIPTION

This object provides access to the system's configuration at runtime via
the L</Get()> and L</Set()> methods.

=head1 BASE CLASSES

Inherits from L<Kernel::Config::Defaults>.

=head1 PUBLIC INTERFACE

=head2 new()

Don't use the constructor directly, use the ObjectManager instead:

    my $ConfigObject = $Kernel::OM->Get('Kernel::Config');

=head2 Get()

Retrieves the value of a config setting.

    my $Value = $ConfigObject->Get('My::Setting::Name');

Returns the value of the setting.

=head2 Set()

Changes or deletes the value of a config setting.

    $ConfigObject->Set(
        Key   => 'My::Setting::Name',
        Value => 42,    # new value; set to undef to remove the setting
    );

=head2 ConfigChecksum()

This function returns an MD5 sum that is generated from all available
config files (F<Kernel/Config.pm>, F<Kernel/Config/Defaults.pm>, F<Kernel/Config/Files/*.(pm|xml)>
except F<ZZZAAuto.pm>) and their modification timestamps.

Whenever a file is changed, added or removed, this checksum will change.

This is used for example in the Loader to generate cache file names that change whenever
the system configuration changes.

=head1 TERMS AND CONDITIONS

This software is part of the OTRS project (L<http://otrs.org/>).

This software comes with ABSOLUTELY NO WARRANTY. For details, see
the enclosed file COPYING for license information (AGPL). If you
did not receive this file, see L<http://www.gnu.org/licenses/agpl.txt>.

=cut