Configuration

Die Klasse Config stellt einen globalen Zugriff auf das Config-File zur Verfügung. Die Konfiguration wird in einer JSON-Datei gespeichert und der Aufbau gliedert sich wie folgt:

{
    "PROPERTY_NAME1":{
        "PROPERTY_KEY1":"KEY_VALUE",
        "PROPERTY_KEY2":"KEY_VALUE",
    },
    "PROPERTY_NAME2":{
        "PROPERTY_KEY1":"KEY_VALUE",
        "PROPERTY_KEY2":"KEY_VALUE",
    },
    ...
}

Der Zugriff auf die Entsprechende KEY_VALUE kann über die get_property(PROPERTY_NAME,PROPERTY_KEY) ausgelesen werden.

Hinweis

Wird die get_property()-Methode mit Namen oder Schlüsseln gerufen, die es noch nicht gibt, werden diese als leere Hülle in dem Config-File angelegt.

Klassendiagramm

../../../_images/Config-Klassendiagramm.png

Nutzen der globalen Konfiguration in eigenem Modul

Um die globale Konfiguration im eigenen Modul nutzen zu können muss die Klasse Config im eigenen Modul inkludiert werden und anschließend von dieser Basisklasse abgeleitet werden.

from configuration.config import Config

class ExampleConfig(Config):
    @property
    def key1(self):
        return self.get_property("Example", "KEY1")

    @property
    def key2(self):
        return self.get_property("Example", "KEY2")

Die von der Basisklasse Config abgeleitete Klasse ExampleConfig() stellt über die beiden Methoden key1() und key2() den Zugriff auf die beiden Schlüssel des Config-FIles zur Verfügung.

Der Eintrag in der config.json sieht dann wie folgt aus:

{
    "Example":{
        "KEY1":"42",            // liefert bei Aufruf der Methode key1() Wert 42
        "KEY2":"Beispiel 1",    // liefert bei Aufruf der Methode key2() "Beispiel 1"
    },
    ...
}

Schnittstellen

Modul Config stellt alle Funktionen fuer globale Konfiguration bereit

class einsatzserver.configuration.config.Config

Die Klasse Config ermoeglicht den Zugriff auf die globale Konfiguration

Die Klasse Config stellt eine Methode get_property() bereit, mit der aus der jeweiligen Gruppe der Konfiguration der Wert des Schluessels ausgelesen werden kann.

get_property(property_name, property_key)

Liefert den Wert fuer den Schluessel aus dem Konfig-File

Note:

Wird kein passenede Gruppe/Schluessel gefunden, so wird dieser im globalen Konfig-File angelegt.

Arguments:
property_name: Konfigurations-Gruppe, z.B. Printer
property_key: Konfigurations-Schluessel
Returns:

Liefert den Wert des Konfigurations-Schluessels

class einsatzserver.configuration.config.Funkrufname

Die Klasse Config ermoeglicht den Zugriff auf die globale Konfiguration

Die Klasse Config stellt eine Methode get_property() bereit, mit der aus der jeweiligen Gruppe der Konfiguration der Wert des Schluessels ausgelesen werden kann.

get_property(property_name, property_key)

Liefert den Wert für den Schluessel aus dem Konfig-File

Note:

Wird kein passenede Gruppe/Schluessel gefunden, so wird dieser im globalen Konfig-File angelegt.

Arguments:
property_name: Konfigurations-Gruppe, z.B. Printer
property_key: Konfigurations-Schluessel
Returns:

Liefert den Wert des Konfigurations-Schluessels

class einsatzserver.configuration.config.Gemeinde

Die Klasse Config ermoeglicht den Zugriff auf die globale Konfiguration

Die Klasse Config stellt eine Methode get_property() bereit, mit der aus der jeweiligen Gruppe der Konfiguration der Wert des Schluessels ausgelesen werden kann.

get_property(property_name, property_key)

Liefert den Wert für den Schluessel aus dem Konfig-File

Note:

Wird kein passenede Gruppe/Schluessel gefunden, so wird dieser im globalen Konfig-File angelegt.

Arguments:
property_name: Konfigurations-Gruppe, z.B. Printer
property_key: Konfigurations-Schluessel
Returns:

Liefert den Wert des Konfigurations-Schluessels