|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectde.bsvrz.ars.ars.persistence.CacheManager
public class CacheManager
Diese Klasse implementiert die Verwaltung der Caches für die Schreibzugriffe auf Containerdateien. Die Klasse ist als Singleton realisiert, weil es im
Original-Archivsystem keine zentrale Stelle zum Zugriff auf Container-Dateien gibt (der PersistenzManager war wohl dafür vorgesehen, allerdings gibt es auch
einige Zugriffe auf Containerdateien, die am PersistenzManager vorbei gehen). Vor dem Zugriff auf Containerdateien muss die Cache-Verwaltung mit der Methode
init()
erzeugt und initialisiert werden. Beim Beenden des Archivsystems muss mit einem Aufruf der Methode close
das Schreiben der
noch in den einzelnen Caches vorhandenen Daten veranlasst werden.
Nested Class Summary | |
---|---|
static class |
CacheManager.Cache
Realisiert den Zwischenspeicher für eine Containerdatei. |
static class |
CacheManager.DataIdentificationIds
Klasse, die die IDs der Objekte einer Datenidentifikation aufnehmen kann. |
Method Summary | |
---|---|
void |
close()
Schreibt alle in den einzelnen Caches vorhandenen Daten und schließt die Cache-Verwaltung. |
CacheManager.Cache |
createCache(ContainerFile cont,
boolean createFile)
Erzeugt einen neuen Cache für den angegebenen Container. |
void |
flushAll()
Schreibt alle in den einzelnen Caches vorhandenen Daten. |
void |
forgetCache(ContainerFile containerFile)
Entfernt den Cache des angegebenen Containers aus der Containerverwaltung. |
void |
forgetCache(long containerId)
Entfernt den Cache des angegebenen Containers aus der Containerverwaltung. |
CacheManager.Cache |
getCache(ContainerFile containerFile)
Liefert den Cache für den angegebenen Container zurück. |
long[] |
getCounts()
Liefert ein Array mit folgenden statistischen Informationen: Gesamtanzahl von Datei-Schreibvorgängen aller geschlossenen Cache-Objekte. |
static CacheManager |
getInstance()
|
void |
init(ArgumentList argumentList)
Initialisiert den CacheManager. |
boolean |
isCacheEnabled()
|
void |
setCacheEnabled(boolean cacheEnabled)
|
void |
setCachingEnabled(long objectId,
long atgId,
long aspectId,
int simulationVariant,
boolean enable)
Mit dieser Methode kann die Zwischenspeicherung für eine angegebene Datenidentifikation ein- bzw. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Method Detail |
---|
public static CacheManager getInstance()
public void init(ArgumentList argumentList)
argumentList
- Aufrufargumente der Applikationpublic void close()
init
initialisiert werden.
public void flushAll()
public CacheManager.Cache getCache(ContainerFile containerFile)
containerFile
- Container, dessen Cache bestimmt werden soll
null
, wenn der Container keinen Cache hat.public CacheManager.Cache createCache(ContainerFile cont, boolean createFile)
cont
- Container für den ein neuer Cache erzeugt werden soll.createFile
- true
, falls eine neue Datei erzeugt werden soll; false
, falls zu einer vorhandenen Dqtei hinzugefügt werden
soll.
null
, falls die Datenidentifikation des Containers nicht gecacht werden soll..public void forgetCache(ContainerFile containerFile)
CacheManager.Cache.flush()
geschrieben werden.
containerFile
- Container dessen Cache aus der Verwaltung entfernt werden soll.public void forgetCache(long containerId)
CacheManager.Cache.flush()
geschrieben werden.
containerId
- ID des Containers dessen Cache aus der Verwaltung entfernt werden soll.public long[] getCounts()
public void setCachingEnabled(long objectId, long atgId, long aspectId, int simulationVariant, boolean enable)
objectId
- Objekt-ID der Datenidentifikation.atgId
- ID der Attribugruppe der Datenidentifikation.aspectId
- ID des Aspekts der Datenidentifikation.simulationVariant
- Simulationsvariante der Datenidentifikation.enable
- true
, wenn die Zwischenspeicherung eingeschaltetwerden soll; false
, wenn die Zwischenspeicherung
ausgeschaltet werden soll.public boolean isCacheEnabled()
public void setCacheEnabled(boolean cacheEnabled)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |