Class CacheManager.Cache

java.lang.Object
de.bsvrz.ars.ars.persistence.CacheManager.Cache
Enclosing class:
CacheManager

public static class CacheManager.Cache
extends java.lang.Object
Realisiert den Zwischenspeicher für eine Containerdatei.
  • Method Summary

    Modifier and Type Method Description
    void cache​(byte[] data, int length)
    Cachen der übergebenen Daten.
    void flush()
    Schreibt die zwischengespeicherten Daten in die ContainerDatei.
    int getBufferSize()  
    long getContainerSize()
    Bestimmt die Größe der ContainerDatei wie sie nach dem Schreiben der noch zwischengespeicherten Daten wäre.
    java.lang.String toString()  

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Method Details

    • getBufferSize

      public int getBufferSize()
      Returns:
      Kapazität des Zwischenspeichers in Byte
    • getContainerSize

      public long getContainerSize()
      Bestimmt die Größe der ContainerDatei wie sie nach dem Schreiben der noch zwischengespeicherten Daten wäre.
      Returns:
      Größe der ContainerDatei in Bytes.
    • cache

      public void cache​(byte[] data, int length) throws PersistenceException
      Cachen der übergebenen Daten. Falls die Gesamtgröße der zwischengespeicherten Daten die Größe des Caches überschreiten würde, werden die bereits zwischengespeicherten Daten vorher in die Containerdatei geschrieben.
      Parameters:
      data - Array mit den zu speichernden Bytes
      length - Anzahl der zu speichernden Bytes im Array
      Throws:
      PersistenceException - Wenn beim Schreiben der Daten ein Problem aufgetreten ist.
    • flush

      public void flush() throws PersistenceException
      Schreibt die zwischengespeicherten Daten in die ContainerDatei.
      Throws:
      PersistenceException - Wenn beim Schreiben der Daten ein Problem aufgetreten ist.
    • toString

      public java.lang.String toString()
      Overrides:
      toString in class java.lang.Object