de.bsvrz.ars.ars.mgmt.datatree
Class DataIdentTreeIterator

java.lang.Object
  extended by de.bsvrz.ars.ars.mgmt.datatree.DataIdentTreeIterator

public class DataIdentTreeIterator
extends Object

Iterator zum Durchlaufen eines DataIdentTrees. Im Konstruktor muss der zu durchlaufende DataIdentTree uebergeben werden. Fuer jeden Iterationsschritt, auch den ersten, muss einmal getNext() aufgerufen werden. Wenn die Methode getNext() true zurueckliefert, ist die naechste Datenidentifikation des Baums verfuegbar. Ihre zugehoerigen IDs koennen mit getObjId(), etc. abgefragt werden. Sobald getNext() false liefert ist der Durchlauf beendet und das Iterator-Objekt muss verworfen werden.
Vorraussetzung: Alle Pfade im DataIdentTree muessen immer zu einem DataIdentNode fuehren.

Beispiel:

 DataIdentTreeIterator it = new DataIdentTreeIterator(dataIdentTree);
 while(it.getNext()) {
     myMethod(it.getObjId(), it.getAtgId(), it.getAspId(), it.getSV());
 }
 

Author:
beck et al. projects GmbH, Thomas Schaefer

Field Summary
private  long aspId
           
private  Iterator<Long> aspIdsIt
           
private  DataIdentTree.AspNode aspNode
           
private  Map<Long,DataIdentTree.AspNode> aspNodes
           
private  long atgId
           
private  Iterator<Long> atgIdsIt
           
private  DataIdentTree.AtgNode atgNode
           
private  Map<Long,DataIdentTree.AtgNode> atgNodes
           
private  DataIdentNode dataIdentNode
           
private  Map<Integer,DataIdentNode> dataIdentNodes
           
private  boolean emptyTree
           
private  long objId
           
private  Iterator<Long> objIdsIt
           
private  DataIdentTree.ObjNode objNode
           
private  Map<Long,DataIdentTree.ObjNode> objNodes
           
private  int svId
           
private  Iterator<Integer> svIt
           
 
Constructor Summary
DataIdentTreeIterator(DataIdentTree tree)
          Erstellt einen DataIdentTreeIterator zum einmaligen Durchlaufen des uebergebenen DataIdentTree.
 
Method Summary
private  void enterFirstAspNode()
          Wandert zum ersten Aspekt-Node des aktuellen Attributgruppen-Node.
private  void enterFirstAtgNode()
          Wandert zum ersten Attributgruppen-Node des aktuellen Objekt-Node.
private  void enterFirstDIN()
          Wandert zur ersten DataIdentNode des aktuellen Aspekt-Node.
 long getAspId()
          Liefert die Aspekt-ID der Datenidentifikation.
 long getAtgId()
          Liefert die Attributgruppen-ID der Datenidentifikation.
 DataIdentNode getDataIdentNode()
          Liefert den DataIdentNode der Datenidentifikation.
 boolean getNext()
          Fuehrt einen Iterations-Schritt durch.
 long getObjId()
          Liefert die Objekt-ID der Datenidentifikation.
 int getSV()
          Liefert die Simulationsvariante der Datenidentifikation.
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

emptyTree

private boolean emptyTree

objId

private long objId

objNode

private DataIdentTree.ObjNode objNode

objNodes

private Map<Long,DataIdentTree.ObjNode> objNodes

objIdsIt

private Iterator<Long> objIdsIt

atgId

private long atgId

atgNode

private DataIdentTree.AtgNode atgNode

atgNodes

private Map<Long,DataIdentTree.AtgNode> atgNodes

atgIdsIt

private Iterator<Long> atgIdsIt

aspId

private long aspId

aspNode

private DataIdentTree.AspNode aspNode

aspNodes

private Map<Long,DataIdentTree.AspNode> aspNodes

aspIdsIt

private Iterator<Long> aspIdsIt

svId

private int svId

dataIdentNode

private DataIdentNode dataIdentNode

dataIdentNodes

private Map<Integer,DataIdentNode> dataIdentNodes

svIt

private Iterator<Integer> svIt
Constructor Detail

DataIdentTreeIterator

public DataIdentTreeIterator(DataIdentTree tree)
Erstellt einen DataIdentTreeIterator zum einmaligen Durchlaufen des uebergebenen DataIdentTree.

Parameters:
tree - Zu durchlaufender DataIdentTree
Method Detail

getNext

public boolean getNext()
Fuehrt einen Iterations-Schritt durch. Wenn die naechste Datenidentifikation des Baumes verfuegbar ist, wird true zurueckgeliefert, ansonsten false am Ende des kompletten Durchlaufs.

Returns:
Kennzeichen, ob naechste Datenidentifikation verfuegbar ist.

getObjId

public long getObjId()
Liefert die Objekt-ID der Datenidentifikation.

Returns:
Objekt-ID

getAtgId

public long getAtgId()
Liefert die Attributgruppen-ID der Datenidentifikation.

Returns:
Attributgruppen-ID

getAspId

public long getAspId()
Liefert die Aspekt-ID der Datenidentifikation.

Returns:
Aspekt-ID

getSV

public int getSV()
Liefert die Simulationsvariante der Datenidentifikation.

Returns:
Simulationsvariante

getDataIdentNode

public DataIdentNode getDataIdentNode()
Liefert den DataIdentNode der Datenidentifikation.

Returns:
DataIdentNode

toString

public String toString()
Overrides:
toString in class Object

enterFirstAtgNode

private void enterFirstAtgNode()
Wandert zum ersten Attributgruppen-Node des aktuellen Objekt-Node.


enterFirstAspNode

private void enterFirstAspNode()
Wandert zum ersten Aspekt-Node des aktuellen Attributgruppen-Node.


enterFirstDIN

private void enterFirstDIN()
Wandert zur ersten DataIdentNode des aktuellen Aspekt-Node.