schmitzm.lang
Class HashtableResourceBundle

java.lang.Object
  extended by java.util.ResourceBundle
      extended by schmitzm.lang.HashtableResourceBundle

public abstract class HashtableResourceBundle
extends ResourceBundle

Diese Klasse stellt ein als Hashtable organisiertes ResourceBundle dar. Sub-Klassen muessen lediglich noch die Methode getContents() implementieren, die den Inhalt des ResourceBundle liefert. Aus diesem wird die Hash-Tabelle zusammengesetzt.
Das ResourceBundle kann so eingestellt werden, dass es Fehler ignoriert. Normalerweise wirft ResourceBundle.getObject(java.lang.String) eine Exception, wenn zu einem Key kein Objekt (auch in keinem Parent-ResourceBundle) zu finden ist. Ueber die Methode setErrorTolerant(boolean) kann das HashtableResourceBundle so eingestellt werden, dass ein solcher Fehler vermieden wird, in dem statt null ein Dummy-String von der Methode handleGetObject(String) geliefert wird.

Version:
1.0
Author:
Martin Schmitz (University of Bonn/Germany)

Nested Class Summary
 
Nested classes/interfaces inherited from class java.util.ResourceBundle
ResourceBundle.Control
 
Field Summary
protected  Hashtable content
          Speichert den Inhalt des ResourceBundle.
protected static boolean errorTolerant
          Speichert, ob das Fehlen einer angeforderten Ressource toleriert wird.
 
Fields inherited from class java.util.ResourceBundle
parent
 
Constructor Summary
HashtableResourceBundle()
          Erzeugt ein neues ResourceBundle.
 
Method Summary
abstract  Object[][] getContents()
          Liefert die (Key,Ressource)-Paerchen.
 Enumeration<String> getKeys()
          Liefert alle Keys zu denen eine Ressource hinterlegt ist.
protected  Object handleGetObject(String key)
          Liefert eine Ressource zu einem Key aus der Hash-Tabelle.
static boolean isErrorTolerant()
          Prueft, ob das ResourceBundle fehlertolerant auf fehlende Ressourcen reagiert.
static void setErrorTolerant(boolean tolerant)
          Stellt sie Toleranz des ResourceBundle bei fehlenden Ressourcen ein.
 
Methods inherited from class java.util.ResourceBundle
clearCache, clearCache, containsKey, getBundle, getBundle, getBundle, getBundle, getBundle, getBundle, getLocale, getObject, getString, getStringArray, handleKeySet, keySet, setParent
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

content

protected Hashtable content
Speichert den Inhalt des ResourceBundle.


errorTolerant

protected static boolean errorTolerant
Speichert, ob das Fehlen einer angeforderten Ressource toleriert wird.
Default: false

Constructor Detail

HashtableResourceBundle

public HashtableResourceBundle()
Erzeugt ein neues ResourceBundle.

Method Detail

getKeys

public Enumeration<String> getKeys()
Liefert alle Keys zu denen eine Ressource hinterlegt ist.

Specified by:
getKeys in class ResourceBundle

setErrorTolerant

public static void setErrorTolerant(boolean tolerant)
Stellt sie Toleranz des ResourceBundle bei fehlenden Ressourcen ein.


isErrorTolerant

public static boolean isErrorTolerant()
Prueft, ob das ResourceBundle fehlertolerant auf fehlende Ressourcen reagiert.


handleGetObject

protected Object handleGetObject(String key)
Liefert eine Ressource zu einem Key aus der Hash-Tabelle.

Specified by:
handleGetObject in class ResourceBundle
Returns:
null falls es den Key in der Hash-Tabelle nicht gibt und die Fehlerroleranz abgeschaltet ist

getContents

public abstract Object[][] getContents()
Liefert die (Key,Ressource)-Paerchen. Der Key muss ein String sein.