public class DataIdentTree
extends java.lang.Object
Hash-Tabelle, die pro Daten-Identifikation einen DataIdentNode haelt. Baumartige Implementierung als mehrstufige Hash-Map aus mehreren IDMap
.
Derzeit werden keine DataIdentNodes geloescht.
Modifier and Type | Class and Description |
---|---|
(package private) class |
DataIdentTree.AspNode
Objekte diesen Typs stehen in der mehrstufigen Hashtabelle für eine Aspekt-Identifikation.
|
(package private) class |
DataIdentTree.AtgNode
Objekte diesen Typs stehen in der mehrstufigen Hashtabelle für eine Attributgruppen-Identifikation.
|
(package private) class |
DataIdentTree.ObjNode
Objekte diesen Typs stehen in der mehrstufigen Hashtabelle für eine Objekt-Identifikation.
|
(package private) class |
DataIdentTree.RootNode
Ein Objekt diesen Typs stellt den Wurzel-Knoten der mehrstufigen Hashtabelle dar.
|
Modifier and Type | Field and Description |
---|---|
private DataIdentTree.RootNode |
rootNode
Wurzel-Knoten der mehrstufigen Hash-Map.
|
Constructor and Description |
---|
DataIdentTree()
Erzeugt einen neuen DataIdentTree.
|
Modifier and Type | Method and Description |
---|---|
void |
cleanUp()
DataIdentNodes löschen, die nicht parametriert sind.
|
int |
countDataIdentNodes()
Liefet die Anzahl der DataIdentNodes im Baum zurueck.
|
DataIdentTreeIterator |
createIterator()
Liefert einen DataIdentTreeIterator zum Iterieren des DataIdentTrees zurueck.
|
void |
deleteDataIdentNode(DataIdentification did)
Loescht den DataIdentNode zur angegebenen Daten-Identifikation.
|
void |
deleteDataIdentNode(long objID,
long atgID,
long aspID,
int sv)
Loescht den DataIdentNode zur angegebenen Daten-Identifikation.
|
DataIdentNode |
existsCreate(ArchiveDataSpecification ads)
Liefert den DataIdentNode zur angegebenen Daten-Identifikation und legt ihn vorher noetigenfalls an, falls er noch nicht existiert.
|
DataIdentNode |
existsCreate(DataIdentification did)
Liefert den DataIdentNode zur angegebenen Daten-Identifikation und legt ihn vorher noetigenfalls an, falls er noch nicht existiert.
|
DataIdentNode |
existsCreate(IdDataIdentification did)
Liefert den DataIdentNode zur angegebenen Daten-Identifikation und legt ihn vorher noetigenfalls an, falls er noch nicht existiert.
|
DataIdentNode |
existsCreate(long objId,
long atgId,
long aspId,
int sv)
Liefert den DataIdentNode zur angegebenen Daten-Identifikation und legt ihn vorher noetigenfalls an, falls er noch nicht existiert.
|
Aspect[] |
getAsps(long objId,
long atgId,
DataModel model)
Liefert alle möglichen Aspekte zu einem Objekt und einer zugehörigen Attributgruppe AspekteIds werden mit Hilfe des
DataModel aufgelöst. |
AttributeGroup[] |
getAtgs(long objID,
DataModel model)
Liefert alle Attributgruppen zu einem Objekt, die im Baum gespeichert sind.
|
DataIdentNode |
getDataIdentNode(ArchiveDataSpecification ads)
Liefert den DataIdentNode zur angegebenen Daten-Identifikation.
|
DataIdentNode |
getDataIdentNode(DataIdentification did)
Liefert den DataIdentNode zur angegebenen Daten-Identifikation.
|
DataIdentNode |
getDataIdentNode(long objID,
long atgID,
long aspID,
int sv)
Liefert den DataIdentNode zur angegebenen Daten-Identifikation.
|
DataIdentNode |
getDataIdentNode(ResultData rd)
Liefert den DataIdentNode zur angegebenen Daten-Identifikation.
|
SystemObject[] |
getObjects(DataModel model)
Liefert alle Objekte, die im rootNode gespeichert sind.
|
(package private) DataIdentTree.RootNode |
getRootNode()
Liefert den Wurzel-Knoten des DataIdentTree als Startpunkt für eine Iteration ueber den ganzen Baum.
|
int[] |
getSimVars(long objId,
long atgId,
long aspId)
Liefert alle möglichen Simulationsvarianten zu einem Objekt mit Attributgruppe und Aspekt.
|
java.lang.StringBuilder |
print()
Liefert einen Stringbuffer mit allen Datenidentifikation.
|
void |
putDataIdentNode(DataIdentification did,
DataIdentNode din)
Fuegt den uebergebenen DataIdentNode mit der angegebenen Daten-Identifikation ein.
|
void |
putDataIdentNode(long objId,
long atgId,
long aspId,
int sv,
DataIdentNode din)
Fuegt den uebergebenen DataIdentNode mit der angegebenen Daten-Identifikation ein.
|
private DataIdentTree.RootNode rootNode
Wurzel-Knoten der mehrstufigen Hash-Map.
public void putDataIdentNode(DataIdentification did, DataIdentNode din)
Fuegt den uebergebenen DataIdentNode mit der angegebenen Daten-Identifikation ein.
did
- Daten-Identifikation.din
- Abzulegender DataIdentNode.public void putDataIdentNode(long objId, long atgId, long aspId, int sv, DataIdentNode din)
Fuegt den uebergebenen DataIdentNode mit der angegebenen Daten-Identifikation ein.
objId
- Objekt-IDatgId
- Attributgruppen-IDaspId
- Aspekt-IDsv
- Simulationsvariantedin
- Abzulegender DataIdentNode.public DataIdentNode getDataIdentNode(DataIdentification did) throws DIdNodeNotFoundException
Liefert den DataIdentNode zur angegebenen Daten-Identifikation.
did
- DatenidentifikationDIdNodeNotFoundException
- falls nicht gefunden.public DataIdentNode getDataIdentNode(ResultData rd) throws DIdNodeNotFoundException
Liefert den DataIdentNode zur angegebenen Daten-Identifikation.
rd
- Datensatz vom DatenverteilerDIdNodeNotFoundException
public DataIdentNode getDataIdentNode(ArchiveDataSpecification ads) throws DIdNodeNotFoundException
Liefert den DataIdentNode zur angegebenen Daten-Identifikation.
ads
- Spezifikation des Archivdatensatzes (enthaelt objID, atgID, aspID, sv)DIdNodeNotFoundException
public DataIdentNode getDataIdentNode(long objID, long atgID, long aspID, int sv) throws DIdNodeNotFoundException
Liefert den DataIdentNode zur angegebenen Daten-Identifikation.
objID
- ID des ObjektesatgID
- ID der AttributgruppeaspID
- ID des Aspektessv
- SimulationsvarianteDIdNodeNotFoundException
- falls nicht gefunden.public DataIdentNode existsCreate(DataIdentification did)
Liefert den DataIdentNode zur angegebenen Daten-Identifikation und legt ihn vorher noetigenfalls an, falls er noch nicht existiert. Dieser DataIdentNode gehoert nicht zur aktuellen Archivparametrierung, sondern wurde z.B. aufgrund einer Anfrage um die Indexe zu speichern eingefuegt. Ggf. koennen solche DIN wieder geloescht werden, siehe cleanUp().
did
- Datenidentifikationpublic DataIdentNode existsCreate(IdDataIdentification did)
Liefert den DataIdentNode zur angegebenen Daten-Identifikation und legt ihn vorher noetigenfalls an, falls er noch nicht existiert. Dieser DataIdentNode gehoert nicht zur aktuellen Archivparametrierung, sondern wurde z.B. aufgrund einer Anfrage um die Indexe zu speichern eingefuegt. Ggf. koennen solche DIN wieder geloescht werden, siehe cleanUp().
did
- Datenidentifikationpublic DataIdentNode existsCreate(ArchiveDataSpecification ads)
Liefert den DataIdentNode zur angegebenen Daten-Identifikation und legt ihn vorher noetigenfalls an, falls er noch nicht existiert. Dieser DataIdentNode gehoert nicht zur aktuellen Archivparametrierung, sondern wurde z.B. aufgrund einer Anfrage um die Indexe zu speichern eingefuegt. Ggf. koennen solche DIN wieder geloescht werden, siehe cleanUp().
ads
- Spezifikation des Archivdatensatzes (enthaelt objID, atgID, aspID, sv)public DataIdentNode existsCreate(long objId, long atgId, long aspId, int sv)
Liefert den DataIdentNode zur angegebenen Daten-Identifikation und legt ihn vorher noetigenfalls an, falls er noch nicht existiert. Dieser DataIdentNode gehoert nicht zur aktuellen Archivparametrierung, sondern wurde z.B. aufgrund einer Anfrage um die Indexe zu speichern eingefuegt. Ggf. koennen solche DIN wieder geloescht werden, siehe cleanUp().
objId
- Objekt-IDatgId
- Attributgruppen-IDaspId
- Aspekt-IDsv
- Simulationsvariantepublic void deleteDataIdentNode(DataIdentification did) throws DIdNodeNotFoundException
Loescht den DataIdentNode zur angegebenen Daten-Identifikation. Nach dem Loeschen des DataIdentNodes leer gewordene ObjNodes, AtgNodes oder AspNodes werden ebenfalls aus dem Baum entfernt.
did
- DatenidentifikationDIdNodeNotFoundException
public void deleteDataIdentNode(long objID, long atgID, long aspID, int sv) throws DIdNodeNotFoundException
Loescht den DataIdentNode zur angegebenen Daten-Identifikation. Nach dem Loeschen des DataIdentNodes leer gewordene ObjNodes, AtgNodes oder AspNodes werden ebenfalls aus dem Baum entfernt.
objID
- ID des ObjektesatgID
- ID der AttributgruppeaspID
- ID des Aspektessv
- SimulationsvarianteDIdNodeNotFoundException
public SystemObject[] getObjects(DataModel model)
Liefert alle Objekte, die im rootNode gespeichert sind. ObjekteIds werden mit Hilfe des DataModel
aufgelöst.
model
- das DataModelpublic AttributeGroup[] getAtgs(long objID, DataModel model)
Liefert alle Attributgruppen zu einem Objekt, die im Baum gespeichert sind. AtgIds werden mit Hilfe des DataModel
aufgelöst.
objID
- model
- public Aspect[] getAsps(long objId, long atgId, DataModel model)
Liefert alle möglichen Aspekte zu einem Objekt und einer zugehörigen Attributgruppe AspekteIds werden mit Hilfe des DataModel
aufgelöst.
objId
- die Id des ObjektsatgId
- die Id der Attributgruppemodel
- das DataModelpublic int[] getSimVars(long objId, long atgId, long aspId)
Liefert alle möglichen Simulationsvarianten zu einem Objekt mit Attributgruppe und Aspekt. Werte werden direkt aus dem AspNode gelesen.
objId
- die Id des ObjektsatgId
- die Id der AttributgruppeaspId
- die Id des Aspektspublic DataIdentTreeIterator createIterator()
Liefert einen DataIdentTreeIterator zum Iterieren des DataIdentTrees zurueck.
public int countDataIdentNodes()
Liefet die Anzahl der DataIdentNodes im Baum zurueck.
public java.lang.StringBuilder print()
Liefert einen Stringbuffer mit allen Datenidentifikation.
DataIdentTree.RootNode getRootNode()
Liefert den Wurzel-Knoten des DataIdentTree als Startpunkt für eine Iteration ueber den ganzen Baum.
public void cleanUp()
DataIdentNodes löschen, die nicht parametriert sind.