The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Quiq::Database::Config - Datenbank-Konfiguration

BASE CLASS

Quiq::Config

DESCRIPTION

Die Klasse kapselt den Zugriff auf eine Konfigurationsdatei, in der Eingenschaften von einer oder mehrerer Datenbanken hinterlegt sind. Es können prinzipiell beliebige Eigenschaften spezifiziert werden. Speziell wird die Abfrage des Universal Database Locators (UDL) unterstützt. Die Datei darf wegen etwaig enthaltener Passwörter nur für den Owner lesbar/schreibbar sein.

Aufbau der Konfigurationsdatei

    '<database>' => {
        udl => '<udl>',
        ...
    },
    ...
  • <database> ist ein beliebger Bezeichner.

  • <udl> ist der UDL der Datenbank.

  • Der Konfigurationshash {...} wird im Konstruktor zu einem ungelockten %<Quiq::Hash> gemacht. Entsprechend können die Methoden dieser Klasse zum Lesen der Konfigurationseinträge genutzt werden.

EXAMPLE

    use Quiq::Database::Config;
    
    $cfg = Quiq::Database::Config->new('~/project/ocean/db.conf');
    $udl = $cfg->udl('test_db');

METHODS

Klassenmethoden

new() - Konstruktor

Synopsis

    $cfg = $class->new;
    $cfg = $class->new($file);

Arguments

$file (Default: '~/.db.conf')

Konfigurationsdatei

Options

-sloppy => $bool (Default: 0)

Liefere undef, wenn Datei $file nicht existiert.

Returns

Objekt

Description

Instantiiere ein Objekt der Klasse und liefere eine Referenz auf dieses Objekt zurück.

Objektmethoden

udl() - Universal Database Locator zu Datenbankname

Synopsis

    $udl = $class->udl($database);

Arguments

$database

Name der Datenbank (String).

Returns

Universal Database Locator (String).

Description

Ermittele den Universal Database Locator (UDL) für Datenbank $database und liefere diesen zurück.

VERSION

1.157

AUTHOR

Frank Seitz, http://fseitz.de/

COPYRIGHT

Copyright (C) 2019 Frank Seitz

LICENSE

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