Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 739

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 739

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 717

Warning: Invalid argument supplied for foreach() in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 718

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 722

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 717

Warning: Invalid argument supplied for foreach() in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 718

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 722

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 717

Warning: Invalid argument supplied for foreach() in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 718

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 722

Warning: preg_match_all(): Compilation failed: group name must start with a non-digit at offset 4 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 717

Warning: Invalid argument supplied for foreach() in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 718

Warning: preg_replace(): Compilation failed: group name must start with a non-digit at offset 4 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 722

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 739

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 739

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 739

Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 739
HWR-Chat: Config-Manager – It2010-g1

HWR-Chat: Config-Manager


Warning: preg_match(): Compilation failed: group name must start with a non-digit at offset 8 in /www/htdocs/w0102873/mediawiki/includes/MagicWord.php on line 739
Aus It2010-g1
Wechseln zu: Navigation, Suche
(Seite angelegt und beschrieben)
 
(Funktion weiter beschrieben)
Zeile 2: Zeile 2:
  
 
Für die technische Umsetzung des HWR-Chats wird eine Klasse benötigt, die
 
Für die technische Umsetzung des HWR-Chats wird eine Klasse benötigt, die
 
 
Konfigurationsdateien lesen und schreiben kann. Diese Funktion wird z.B.
 
Konfigurationsdateien lesen und schreiben kann. Diese Funktion wird z.B.
 
 
benötigt um die Verbindungsdaten der Datenbank einstellen zu können, ohne dass
 
benötigt um die Verbindungsdaten der Datenbank einstellen zu können, ohne dass
 
 
eine Java Klasse neu kompiliert werden muss.
 
eine Java Klasse neu kompiliert werden muss.
 
 
Es muss zweierlei Arten von Konfigurationsdateien geben.
 
Es muss zweierlei Arten von Konfigurationsdateien geben.
 
 
Zum einen für den Server und zum anderen für den Client.
 
Zum einen für den Server und zum anderen für den Client.
  
Zeile 16: Zeile 11:
  
 
Damit bestimmte Konfigurationen sauber eingelesen werden können müssen Regeln formuliert werden.
 
Damit bestimmte Konfigurationen sauber eingelesen werden können müssen Regeln formuliert werden.
 
 
Pro Zeile gibt es maximal eine Konfiguration.
 
Pro Zeile gibt es maximal eine Konfiguration.
 
 
Eine Konfiguration setzt sich aus dem Schlüssel(ein Name) und einem Wert zusammen. Beides wird durch ein
 
Eine Konfiguration setzt sich aus dem Schlüssel(ein Name) und einem Wert zusammen. Beides wird durch ein
 
 
Gleichheitszeichen ("=") von einander getrennt. Der Schlüssel und der Wert müssen auf jeden Fall zusammen(ein Wort)
 
Gleichheitszeichen ("=") von einander getrennt. Der Schlüssel und der Wert müssen auf jeden Fall zusammen(ein Wort)
 
 
geschrieben werden. Jede Abweichung von dieser Konfiguration hat zur Folge, dass diese nicht eingelesen wird.
 
geschrieben werden. Jede Abweichung von dieser Konfiguration hat zur Folge, dass diese nicht eingelesen wird.
 
 
Es versteht sich von selbst, dass eine Konfiguration nur dann Sinn macht, wenn diese dem System (den Java-Klassen)
 
Es versteht sich von selbst, dass eine Konfiguration nur dann Sinn macht, wenn diese dem System (den Java-Klassen)
 
 
bekannt ist. Die Schlüssel (Namen) dürfen nicht variieren.
 
bekannt ist. Die Schlüssel (Namen) dürfen nicht variieren.
  
 
Bsp.:
 
Bsp.:
DataBaseUserPassword = admin
+
''DataBaseUserPassword = admin''
 +
Zu beachten ist, dass ein Konfigurationsschlüssel somit nur einen Wert besitzen kann. Sollen nun mehrere Werte gespeichert werden
 +
 
 +
(z.B. Liste von geblockten Nutzern (nur ein Bsp.)) müssen diese als einzelner String (z.b. User1;User2;User3) eingetragen werden.
 +
 
 +
Die Aufsplittung muss dann wieder die entgegenehmende Java-Klasse bewerkstelligen.
 +
Eine Raute am Zeilenanfang("#") wird als Kommentar gesehen und ignoriert.
 +
 
 +
=== Laufzeitverhalten ===
 +
Beim instanziieren des Objekts muss angegeben werden, um welche Art des KonfigurationsFile es sich handelt.
 +
 
 +
Die Konfigurationsdateien sollen standard-mäßig im gleichen Verzeichnis liegen in dem die Java Klasse gestartet wurde.
 +
 
 +
Das Server-Config-File heißt "server.conf", das Client-Config-File heißt "client.conf"
 +
Wird keine Datei gefuden, wird eine StandardDatei generiert und verarbeitet.
 +
 
 +
=== Schnittstelle ===
 +
Für die Implementierung ist es wichtig geeignete Schnittstellen zu diesem Config-Manager herzustellen.
 +
 
 +
Alle gefundenen Konfigurationen werden in Form einer HashMap geliefert. Der erste String-Wert entspricht dem
 +
 
 +
Schlüssel, der zweite dem String-Wert.
 +
Wurde das Objekt instanziiert steht eine Methode bereit um eine Konfiguration in das bestehende Config-File
 +
 
 +
zu schreiben.
 +
 
 +
=== Standard-Datei ===
 +
Die Standardmäßig vorhandene Datei (bzw. die, die erstellt wird) sieht folgendermaßen aus:
 +
 
 +
 
 +
 
 +
##################################################################################
 +
#Diese Datei beinhaltet verschiedene Konfigurationsmöglichkeiten für den HWR-Chat#
 +
#Eine Einstellung muss dem Schema: NameDerEinstellung = Wert entsprechen        #
 +
#Jede Abweichung wird ignoriert, nur bekannte Einstellungen werden berücksichtigt#
 +
#Eine Raute (#) am Zeilenanfang wird ignoriert                                  #
 +
##################################################################################
 +
 
 +
Je nach Dateityp werden folgende Zeilen generiert:
 +
 
 +
################################Server-Config#####################################
 +
 
 +
################################Client-Config#####################################

Version vom 26. September 2011, 15:25 Uhr

Meine Werkzeuge
Namensräume
Varianten
Aktionen
Navigation
Projekte
Werkzeuge