pl.edu.pjwstk.yaod.debug.blocks
Class BlockTesterStore

java.lang.Object
  |
  +--pl.edu.pjwstk.yaod.store.defaultstore.persistentstore.PersistentBlockManager
        |
        +--pl.edu.pjwstk.yaod.debug.blocks.BlockTesterStore

public class BlockTesterStore
extends PersistentBlockManager

Klasa ma charakter testowy. Jej zadaniem pomoc przy debugowaniu blokow. Uzupelnia BlockTester o namiastke skladu danych (skladem jest tutaj tablica Javy).

Author:
M. Lentner, raist@ertel.com.pl

Fields inherited from class pl.edu.pjwstk.yaod.store.defaultstore.persistentstore.PersistentBlockManager
FIRST_DATA_BLOCK, FIRST_FREE_SPACE_BLOCK
 
Constructor Summary
BlockTesterStore()
           
 
Method Summary
 DataBlock findDataBlockByFreeSpace(int reqSpace)
          Wyszukuje blok danych zawierajacy wymagana ilosc wolnego miejsca.
 short getBlockSize()
          Zwraca rozmiar bloku, jaki wykorzystuje dany sklad.
 DataBlock readDataBlock(AbstractBlockID ptr)
          Wczytuje blok danych o podanym identyfikatorze.
 FreeSpaceBlock readFreeSpaceBlock(AbstractBlockID ptr)
          Wczytuje blok wolnej przestrzeni o podanym identyfikatorze.
 void updateFreeSpace(DataBlock block)
          Aktualizuje informacje o wolnej przestrzeni w podanym bloku.
 void writeBlock(AbstractBlock block)
          Zapisuje blok na dysku.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BlockTesterStore

public BlockTesterStore()
                 throws java.lang.Exception
Method Detail

writeBlock

public void writeBlock(AbstractBlock block)
                throws java.io.IOException
Description copied from class: PersistentBlockManager
Zapisuje blok na dysku.
Overrides:
writeBlock in class PersistentBlockManager
Following copied from class: pl.edu.pjwstk.yaod.store.defaultstore.persistentstore.PersistentBlockManager
Parameters:
block - jaki blok zapisac.
Throws:
java.io.IOException - jesli nie mozna zapisac bloku.

updateFreeSpace

public void updateFreeSpace(DataBlock block)
                     throws java.lang.Exception
Description copied from class: PersistentBlockManager
Aktualizuje informacje o wolnej przestrzeni w podanym bloku. Informacja ta zapisywana jest w bloku wolnej przestrzeni nalezacym do pliku w ktorym zapisany jest podany blok.
Overrides:
updateFreeSpace in class PersistentBlockManager
Following copied from class: pl.edu.pjwstk.yaod.store.defaultstore.persistentstore.PersistentBlockManager
Parameters:
block - blok danych ktorego informacja o wolnej przestrzeni ma zostac zaktualizowana.
Throws:
java.lang.Exception - jesli wystapil blad uniemozliwiajacy aktualizacje.

readFreeSpaceBlock

public FreeSpaceBlock readFreeSpaceBlock(AbstractBlockID ptr)
                                  throws java.io.IOException,
                                         BlockFormatException
Description copied from class: PersistentBlockManager
Wczytuje blok wolnej przestrzeni o podanym identyfikatorze.
Overrides:
readFreeSpaceBlock in class PersistentBlockManager
Following copied from class: pl.edu.pjwstk.yaod.store.defaultstore.persistentstore.PersistentBlockManager
Parameters:
ptr - identyfikator bloku wolnej przestrzeni.
Returns:
wczytany blok wolnej przestrzeni.
Throws:
java.io.IOException - nie mozna wczytac bloku z powodu bledu i/o.
BlockFormatException - wczytany blok jest niezgodny z formatem bloku wolnej przestrzeni (nie mozna zdeserializowac).

readDataBlock

public DataBlock readDataBlock(AbstractBlockID ptr)
                        throws java.io.IOException,
                               BlockFormatException
Description copied from class: PersistentBlockManager
Wczytuje blok danych o podanym identyfikatorze.
Overrides:
readDataBlock in class PersistentBlockManager
Following copied from class: pl.edu.pjwstk.yaod.store.defaultstore.persistentstore.PersistentBlockManager
Parameters:
identyfikator - bloku do wczytania.
Returns:
wczytany blok danych.
Throws:
java.io.IOException - nie mozna wczytac bloku.
BlockFormatException - zserializowana wersja bloku nie odpowiada formatowi bloku (nie mozna zdeserializowac).

findDataBlockByFreeSpace

public DataBlock findDataBlockByFreeSpace(int reqSpace)
                                   throws java.lang.Exception
Description copied from class: PersistentBlockManager
Wyszukuje blok danych zawierajacy wymagana ilosc wolnego miejsca.
Overrides:
findDataBlockByFreeSpace in class PersistentBlockManager
Following copied from class: pl.edu.pjwstk.yaod.store.defaultstore.persistentstore.PersistentBlockManager
Parameters:
reqSpace - wymagana ilosc wolnego miejsca.
Returns:
blok danych zawierajacy wymagana ilosc wolnego miejsca.
Throws:
java.lang.Exception - jesli nie mozna znalezc takiego bloku z powodu awarii.

getBlockSize

public short getBlockSize()
Description copied from class: PersistentBlockManager
Zwraca rozmiar bloku, jaki wykorzystuje dany sklad.
Overrides:
getBlockSize in class PersistentBlockManager
Following copied from class: pl.edu.pjwstk.yaod.store.defaultstore.persistentstore.PersistentBlockManager
Returns:
rozmiar bloku.