public final class Database extends java.util.Observable implements IXMLEncodable
Modifier and Type | Class and Description |
---|---|
static interface |
Database.IWebInfo |
FIELD_XML_ELEMENT_CONTAINER_NAME, FIELD_XML_ELEMENT_NAME, XML_ATTR_ID, XML_ATTR_LANGUAGE, XML_ATTR_VERSION
Modifier and Type | Method and Description |
---|---|
void |
addObserver(java.util.Observer a_observer)
Adds an observer to this database.
|
static org.w3c.dom.Document |
dumpToXML(java.lang.Class[] classesToDump) |
AbstractDatabaseEntry |
getEntryById(java.lang.String entryId)
Returns the DatabaseEntry with the given ID.
|
java.lang.Class |
getEntryClass()
Returns the DatabaseEntry class for that this Database is registered.
|
java.util.Hashtable |
getEntryHash() |
java.util.Vector |
getEntryList()
Returns a snapshot of all values in the serviceDatabase.
|
java.util.Vector |
getEntryList(boolean a_bForceRandomize) |
java.util.Enumeration |
getEntrySnapshotAsEnumeration()
Returns a snapshot of all entries in the Database as an Enumeration.
|
static Database |
getInstance(java.lang.Class a_DatabaseEntryClass)
Gets the Database for the specified database entries.
|
int |
getNumberOfEntries()
Returns the number of DatabaseEntries in the Database.
|
AbstractDatabaseEntry |
getRandomEntry()
Returns a random entry from the database.
|
java.util.Vector |
getSortedEntryList(Util.Comparable c) |
int |
getTimeoutListSize() |
org.w3c.dom.Document |
getWebInfos() |
org.w3c.dom.Document |
getWebInfos(java.lang.String a_ID) |
boolean |
isEntryIdInTimeoutList(java.lang.String a_entryId) |
static void |
loadFromExternalDatabase_int() |
static void |
loadFromExternalDatabase() |
int |
loadFromXml(org.w3c.dom.Element a_dbNode)
Adds all database entries that are subnodes of the given element to the
database.
|
int |
loadFromXml(org.w3c.dom.Element a_dbNode,
boolean a_bVerify)
Adds all database entries that are subnodes of the given element to the
database.
|
void |
randomize() |
static void |
registerDistributor(IDistributor a_distributor)
Registers a distributor that forwards new database entries.
|
static boolean |
registerExternalDatabase(IEDBConfiguration a_dbConf) |
boolean |
remove(AbstractDatabaseEntry a_deleteEntry)
Removes an entry from the database.
|
boolean |
remove(java.lang.String a_entryID)
Removes an entry from the database.
|
void |
removeAll()
Removes all entries from the database.
|
boolean |
removeThis(AbstractDatabaseEntry a_deleteEntry) |
static void |
restoreFromXML(org.w3c.dom.Document xmlAllDBs,
java.lang.Class[] classesToRestore) |
static void |
shutdownDatabases() |
org.w3c.dom.Element |
toXmlElement(org.w3c.dom.Document a_doc)
If the entries of this database implement IXMLEncodable and has a proper
value for the field XML_ELEMENT_CONTAINER_NAME, this database is
transformed into an XML element.
|
org.w3c.dom.Element |
toXmlElement(org.w3c.dom.Document a_doc,
java.lang.String a_xmlContainerName)
Creates an XML node with all database entries, but only for those entries
that implement IXMLEncodable.
|
boolean |
update(AbstractDatabaseEntry newEntry)
Updates an entry in the database.
|
boolean |
update(AbstractDatabaseEntry newEntry,
boolean a_bDistribute)
Updates an entry in the database.
|
public static void registerDistributor(IDistributor a_distributor)
a_distributor
- a distributor that forwards new database entriespublic static boolean registerExternalDatabase(IEDBConfiguration a_dbConf)
public static Database getInstance(java.lang.Class a_DatabaseEntryClass) throws java.lang.IllegalArgumentException
a_DatabaseEntryClass
- the DatabaseEntry class for that the method returns the
corresponding Database objectjava.lang.IllegalArgumentException
- if the argument is no valid DatabaseEntry classpublic static void restoreFromXML(org.w3c.dom.Document xmlAllDBs, java.lang.Class[] classesToRestore)
public static org.w3c.dom.Document dumpToXML(java.lang.Class[] classesToDump)
public static void shutdownDatabases()
public boolean update(AbstractDatabaseEntry newEntry) throws java.lang.IllegalArgumentException
newEntry
- The database entry to update.java.lang.IllegalArgumentException
- if the database entry is not of the type the Database can
storepublic boolean update(AbstractDatabaseEntry newEntry, boolean a_bDistribute) throws java.lang.IllegalArgumentException
newEntry
- The database entry to update.a_bDistribute
- distribute to other InfoServices if distributor object is set;
should be defaultjava.lang.IllegalArgumentException
- if the database entry is not of the type the Database can
storepublic java.lang.Class getEntryClass()
public boolean remove(java.lang.String a_entryID)
a_entryID
- The ID of the entry to remove. If it is not in the database,
nothing is done.public boolean remove(AbstractDatabaseEntry a_deleteEntry)
a_deleteEntry
- The entry to remove. If it is not in the database, nothing is
done.public boolean removeThis(AbstractDatabaseEntry a_deleteEntry)
public void removeAll()
public int loadFromXml(org.w3c.dom.Element a_dbNode)
a_dbNode
- The xml node that contains db entries.public int loadFromXml(org.w3c.dom.Element a_dbNode, boolean a_bVerify)
a_dbNode
- The xml node that contains db entries.a_signatureDocumentClass
- if set to a value greater -1, the document is verified against
certificates of the given class before getting loadedpublic org.w3c.dom.Element toXmlElement(org.w3c.dom.Document a_doc)
toXmlElement
in interface IXMLEncodable
a_doc
- a Documentpublic org.w3c.dom.Element toXmlElement(org.w3c.dom.Document a_doc, java.lang.String a_xmlContainerName)
a_doc
- The XML document, which is the environment for the created XML
node.a_xmlContainerName
- the name of the XML element that should contain the entriespublic void randomize()
public java.util.Hashtable getEntryHash()
public java.util.Vector getEntryList()
public java.util.Vector getEntryList(boolean a_bForceRandomize)
public java.util.Vector getSortedEntryList(Util.Comparable c)
public java.util.Enumeration getEntrySnapshotAsEnumeration()
public int getNumberOfEntries()
public AbstractDatabaseEntry getEntryById(java.lang.String entryId)
entryId
- The ID of the database entry.public AbstractDatabaseEntry getRandomEntry()
public void addObserver(java.util.Observer a_observer)
addObserver
in class java.util.Observable
a_observer
- The observer to add to this database.public boolean isEntryIdInTimeoutList(java.lang.String a_entryId)
public int getTimeoutListSize()
public org.w3c.dom.Document getWebInfos(java.lang.String a_ID)
public org.w3c.dom.Document getWebInfos()
public static void loadFromExternalDatabase()
public static void loadFromExternalDatabase_int() throws EDBException
EDBException
Copyright © 2023. All rights reserved.