janus.web.config
Class PropertyConfig

java.lang.Object
  extended by janus.web.config.PropertyConfig
Direct Known Subclasses:
PoolConfig, Service, ServiceConfig, TimerConfig

public class PropertyConfig
extends Object

Basisklasse für Property-basiere Konfigurationen. Die Felder werden mit Hilfe von Reflection gesetzt. Abgeleitete static Klassen sollten in ihrer configure Methode eine Instanz erzeugen und speichern!


Field Summary
protected  String prefix
          Pr&aum;fix der Properties
protected  Properties props
          Die zur Initialisierung verwendeten Properties
 
Constructor Summary
protected PropertyConfig()
          Default-Konstruktor
  PropertyConfig(Properties props)
          Konstruktor: Setze alle eigenen Felder einer Klasse.
 
Method Summary
static void convertProperties(Properties props)
          Property-Hilfsfunktion, ersetzt ${...} und setzt System-Properties Wird auch von der Log4J-Initialisierung aufgerufen!
 boolean getBooleanProperty(String name)
          Ermittle eine Boolean-Property aus dem Properties-Objekt
 boolean getBooleanProperty(String name, boolean def)
          Ermittle eine Boolean-Property aus dem Properties-Objekt
 boolean[] getBooleanPropertyArray(String name)
          Ermittle einen booelan-Array aus einer Property aus dem Properties-Objekt.
 boolean[] getBooleanPropertyArray(String name, String def)
          Ermittle einen boolean-Array aus einer Property aus dem Properties-Objekt.
 int getIntProperty(String name)
          Ermittle eine Integer-Property aus dem Properties-Objekt
 int getIntProperty(String name, int def)
          Ermittle eine Integer-Property aus dem Properties-Objekt
 int[] getIntPropertyArray(String name)
          Ermittle einen int-Array aus einer Property aus dem Properties-Objekt.
 int[] getIntPropertyArray(String name, String def)
          Ermittle einen int-Array aus einer Property aus dem Properties-Objekt.
protected  Logger getLogger()
          Zugriff auf Log4j
 String getPrefix()
          Ermittle das Präfix
 Properties getProperties()
          Ermittle das Properties-Objekt
 String getProperty(String name)
          Ermittle eine String-Property aus dem Properties-Objekt
 String getProperty(String name, String def)
          Ermittle eine String-Property aus dem Properties-Objekt.
 String[] getPropertyArray(String name)
          Ermittle einen Array aus einer String-Property aus dem Properties-Objekt.
 String[] getPropertyArray(String name, String def)
          Ermittle einen Array aus einer String-Property aus dem Properties-Objekt.
protected  void init(Properties props, Class clazz)
          Initialisierung: Setze alle eigenen Felder einer Klasse.
protected  void init(String name, String value, Class clazz)
          Initialisierung: Setze genau ein Feld.
static Properties readFile(String filename)
          Hilfsmethode zum Lesen einer Properties-Datei
protected  void setField(Field f, Object val)
          Helper um ein Feld zu setzen.
 void setPrefix(String prefix)
          Setze das Präfix
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

prefix

protected String prefix
Pr&aum;fix der Properties


props

protected Properties props
Die zur Initialisierung verwendeten Properties

Constructor Detail

PropertyConfig

protected PropertyConfig()
Default-Konstruktor


PropertyConfig

public PropertyConfig(Properties props)
               throws IllegalAccessException
Konstruktor: Setze alle eigenen Felder einer Klasse.

Parameters:
props - die Properties, aus denen die Felder gesetzt werden sollen.
Throws:
IllegalAccessException
Method Detail

convertProperties

public static void convertProperties(Properties props)
Property-Hilfsfunktion, ersetzt ${...} und setzt System-Properties Wird auch von der Log4J-Initialisierung aufgerufen!

Parameters:
props -

getBooleanProperty

public boolean getBooleanProperty(String name)
Ermittle eine Boolean-Property aus dem Properties-Objekt

Parameters:
name - Name der Property
Returns:
Wert der Property als Boolean

getBooleanProperty

public boolean getBooleanProperty(String name,
                                  boolean def)
Ermittle eine Boolean-Property aus dem Properties-Objekt

Parameters:
name - Name der Property
def - Defaultwert bei nicht vorhandener Property
Returns:
Wert der Property als Boolean

getBooleanPropertyArray

public boolean[] getBooleanPropertyArray(String name)
Ermittle einen booelan-Array aus einer Property aus dem Properties-Objekt. Als Delimiter gelten Leerzeichen, "," und ";".

Parameters:
name - Name der Property
Returns:
Wert der Property als boolean-Array

getBooleanPropertyArray

public boolean[] getBooleanPropertyArray(String name,
                                         String def)
Ermittle einen boolean-Array aus einer Property aus dem Properties-Objekt. Als Delimiter gelten Leerzeichen, "," und ";".

Parameters:
name - Name der Property
def - Defaultwert(e)
Returns:
Wert der Property als boolean-Array

getIntProperty

public int getIntProperty(String name)
Ermittle eine Integer-Property aus dem Properties-Objekt

Parameters:
name - Name der Property
Returns:
Wert der Property als Zahl oder -1 bei Fehlern

getIntProperty

public int getIntProperty(String name,
                          int def)
Ermittle eine Integer-Property aus dem Properties-Objekt

Parameters:
name - Name der Property
def - Defaultwert bei nicht vorhandener Property oder Fehler
Returns:
Wert der Property als Zahl

getIntPropertyArray

public int[] getIntPropertyArray(String name)
Ermittle einen int-Array aus einer Property aus dem Properties-Objekt. Als Delimiter gelten Leerzeichen, "," und ";".

Parameters:
name - Name der Property
Returns:
Wert der Property als int-Array

getIntPropertyArray

public int[] getIntPropertyArray(String name,
                                 String def)
Ermittle einen int-Array aus einer Property aus dem Properties-Objekt. Als Delimiter gelten Leerzeichen, "," und ";".

Parameters:
name - Name der Property
def - Defaultwert(e)
Returns:
Wert der Property als int-Array

getLogger

protected Logger getLogger()
Zugriff auf Log4j

Returns:
der Logger

getPrefix

public String getPrefix()
Ermittle das Präfix


getProperties

public Properties getProperties()
Ermittle das Properties-Objekt

Returns:
das Properties-Objekt

getProperty

public String getProperty(String name)
Ermittle eine String-Property aus dem Properties-Objekt

Parameters:
name - Name der Property
Returns:
Wert der Property als String

getProperty

public String getProperty(String name,
                          String def)
Ermittle eine String-Property aus dem Properties-Objekt. Wertet zuerst das Präfix aus.

Parameters:
name - Name der Property
def - Defaultwert bei nicht vorhandener Property
Returns:
Wert der Property als String

getPropertyArray

public String[] getPropertyArray(String name)
Ermittle einen Array aus einer String-Property aus dem Properties-Objekt. Als Delimiter gelten Leerzeichen, "," und ";".

Parameters:
name - Name der Property
Returns:
Wert der Property als String-Array

getPropertyArray

public String[] getPropertyArray(String name,
                                 String def)
Ermittle einen Array aus einer String-Property aus dem Properties-Objekt. Als Delimiter gelten Leerzeichen, "," und ";".

Parameters:
name - Name der Property
def - Default-String (gleiche Syntax)
Returns:
Wert der Property als String-Array

init

protected void init(Properties props,
                    Class clazz)
             throws IllegalAccessException
Initialisierung: Setze alle eigenen Felder einer Klasse.

Parameters:
props - die Properties, aus denen die Felder gesetzt werden sollen.
clazz - Klasse deren Felder gesetzt werden sollen, bei null die aktuelle Klasse.
Throws:
IllegalAccessException

init

protected void init(String name,
                    String value,
                    Class clazz)
             throws IllegalAccessException
Initialisierung: Setze genau ein Feld. Kann benutzt werden, um eine inaktive Konfiguration zu erzeugen.
init( "active", "false" );

Parameters:
name - Name des Feldes
value - Wert als Text
clazz - Aktuelle Klasse
Throws:
IllegalAccessException

readFile

public static Properties readFile(String filename)
                           throws IOException
Hilfsmethode zum Lesen einer Properties-Datei

Parameters:
filename -
Returns:
das gelesene Properties-Objekt
Throws:
IOException

setField

protected void setField(Field f,
                        Object val)
                 throws IllegalAccessException
Helper um ein Feld zu setzen. Muss in abgeleiteten Klassen mit identichem Code überschrieben werden, wenn diese nicht im selben Package liegen.
  protected void setField( java.lang.reflect.Field f, Object val )
         throws IllegalAccessException
  {
      f.set( this, val );
  }

Throws:
IllegalAccessException

setPrefix

public void setPrefix(String prefix)
Setze das Präfix

Parameters:
prefix - Präfix, kann null sein


Copyright © 2008 MvC Systemsoftware.