de.bsvrz.ars.ars.mgmt.tasks
Class RequestGapTask.GapFile

java.lang.Object
  extended by de.bsvrz.ars.ars.mgmt.tasks.RequestGapTask.GapFile
Enclosing class:
RequestGapTask

public class RequestGapTask.GapFile
extends java.lang.Object

Diese Klasse speichert nicht schliessbare Datenluecken in einer Datei im Verzeichnis der Datenidentifikation in der Form

Fuer jede Luecke kann dann der entsprechende Eintrag abgefragt werden.


Constructor Summary
RequestGapTask.GapFile(long objID, long atgID, long aspID, short sv)
           
RequestGapTask.GapFile(java.lang.String dir)
           
 
Method Summary
 void activateTmpGapFileClose()
          Loescht die urspruengliche Lueckendatei, benennt die temporaere Lueckendatei in eine echte Luecjendatei um und schliesst alles.
 void appendToTmpGapFile(java.lang.String entry)
          Fuegt der Lueckendatei einen Eintrag hinzu.
 void close()
           
 void copyGapsUpToHere(long startGap)
          Uebertraegt alle Eintraege bis zur genannten Grenze in die temporaere Lueckendatei.
 void copyRestGaps(boolean skipLine)
          Kopiert die Eintraege hinter der aktuellen Position in die temporaere Lueckendatei.
 void createTmpGapFile()
          Legt eine temporaere Lueckendatei an, in der die sich neu ergebenden Luecken gesammelt werden.
 java.lang.String[] getEntry(long reqGapStart, long reqGapEnd)
          Liefert die Archivsysteme, die fuer die angegebene Luecke eingetragen sind
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

RequestGapTask.GapFile

public RequestGapTask.GapFile(long objID,
                              long atgID,
                              long aspID,
                              short sv)

RequestGapTask.GapFile

public RequestGapTask.GapFile(java.lang.String dir)
Method Detail

createTmpGapFile

public void createTmpGapFile()
Legt eine temporaere Lueckendatei an, in der die sich neu ergebenden Luecken gesammelt werden. Am Ende eines Nachforderungslaufs wird die Datei umbenannt.


copyGapsUpToHere

public void copyGapsUpToHere(long startGap)
Uebertraegt alle Eintraege bis zur genannten Grenze in die temporaere Lueckendatei. Dies ist notwendig, wenn nur bestimmte Bereiche nachgefordert werden sollen.

Parameters:
startGap - Untergrenze des Bereichs, der nachgefordert werden soll

copyRestGaps

public void copyRestGaps(boolean skipLine)
Kopiert die Eintraege hinter der aktuellen Position in die temporaere Lueckendatei. Dies ist notwendig, wenn nur bestimmte Bereiche nachgefordert werden sollen. Wenn der naechste Eintrag exakt die Luecke ist, die nachgefordert wurde, muss diese Zeile uebersprungen werden (weil dieser Eintrag ueber den GapMarker eingefuegt wurde -- oder auch nicht, je nach Erfolg der Nachforderung).

Parameters:
skipLine -

appendToTmpGapFile

public void appendToTmpGapFile(java.lang.String entry)
Fuegt der Lueckendatei einen Eintrag hinzu. Der Eintrag muss bereits korrekt formatiert sein.

Parameters:
entry - Lueckeneintrag

activateTmpGapFileClose

public void activateTmpGapFileClose()
Loescht die urspruengliche Lueckendatei, benennt die temporaere Lueckendatei in eine echte Luecjendatei um und schliesst alles.


getEntry

public java.lang.String[] getEntry(long reqGapStart,
                                   long reqGapEnd)
Liefert die Archivsysteme, die fuer die angegebene Luecke eingetragen sind

Parameters:
reqGapStart - Beginn der Luecke
reqGapEnd - Ende der Luecke
Returns:
Feld von Archivsystemen falls ein Eintrag existiert, leeres Feld sonst

close

public void close()


Copyright © 2005-2008 beck et al. projects GmbH All Rights Reserved.