pl.edu.pjwstk.yaod.store.defaultstore.persistentstore
Class PersistentStoreWrapper
java.lang.Object
|
+--pl.edu.pjwstk.yaod.store.defaultstore.persistentstore.PersistentStoreWrapper
- All Implemented Interfaces:
- Wrappable
- public class PersistentStoreWrapper
- extends java.lang.Object
- implements Wrappable
Klasa stanowi oslone (wrapper) nad skladem trwalych obiektow.
Warstwom wyzszym udostepnia interfejs CRUD atomow, umozliwiajac przykrycie
zlozonych zagadnien zwiazanych z funkcjonowaniem blokow, rekordow itp.
Oprocz funkcji charakterystycznych dla kazdego skladu (interfejs Wrappable),
zapewnia rowniez funkcje do zarzadzania tylko i wylacznie domyslnym
skladem trwalych obiektow. Funkcje te maja charakter administracyjny
i charakterystyczne sa tylko i wylacznie dla danego rodzaju skladu,
jednak musza byc udostepnione na zewnatrz.
- Author:
- M. Lentner, raist@ertel.com.pl
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
PersistentStoreWrapper
public PersistentStoreWrapper(PersistentStore store)
- Konstruktor tworzacy nowy obiekt oslony dla domyslnego skladu trwalych
obiektow.
- Parameters:
store
- obiekt domyslnego skladu trwalych obiektow, dla ktorego
tworzona jest oslona.
getEntry
public AtomID getEntry()
- Zwraca identyfikator obiektu wejsciowego do skladu.
- Specified by:
getEntry
in interface Wrappable
- Returns:
- identyfikator obiektu wejsciowego.
retrieveAtom
public Atom retrieveAtom(AtomID ptr)
throws NoSuchAtomException
- Odczytuje ze skladu rekord wskazywany danym identyfikatorem,
a nastepnie tworzy na jego podstawie atom. Najpierw sprawdzany jest
bufor atomow, a dopiero pozniej analizowana jest zawartosc dysku.
- Specified by:
retrieveAtom
in interface Wrappable
- Parameters:
ptr
- identyfikator atomu, ktory ma zostac wczytany.- Returns:
- odczytany atom.
- Throws:
NoSuchAtomException
- brak takiego atomu.
deleteAtom
public void deleteAtom(AtomID ptr)
throws NoSuchAtomException
- Kasuje atom o podanym identyfikatorze.
- Specified by:
deleteAtom
in interface Wrappable
- Parameters:
ptr
- identyfikator atomu, ktory ma zostac wczytany.- Throws:
NoSuchAtomException
- brak takiego atomu.
updateAtom
public void updateAtom(Atom atm)
throws BlockFreeSpaceException
- Aktualizuje podany atom.
- Specified by:
updateAtom
in interface Wrappable
- Parameters:
atm
- atom utworzony wczesniej w bazie.- Throws:
BlockFreeSpaceException
- za malo wolnego miejsca.
createAtom
public void createAtom(Atom atm)
throws BlockFreeSpaceException
- Zapisuje w skladzie podany atom.
- Specified by:
createAtom
in interface Wrappable
- Parameters:
atm
- atom, ktory ma zostac umieszczony w skladzie.- Throws:
BlockFreeSpaceException
- za malo wolnego miejsca.