org.deegree_impl.io.rtree
Class PageFile

java.lang.Object
  extended byorg.deegree_impl.io.rtree.PageFile
Direct Known Subclasses:
MemoryPageFile, PersistentPageFile

public abstract class PageFile
extends java.lang.Object

Abstrakte Klasse für eine PageFile Definiert Methode, die jede PageFile besitzen muß.

Version:
1.0
Author:
Wolfgang Bär

Field Summary
protected  int capacity
          Kapazität eines Knotens
protected  int dimension
          Dimension der Daten
protected  int minimum
          minimale Beladung eines Knotens
 
Constructor Summary
PageFile()
           
 
Method Summary
abstract  void close()
          Closes the pagefile and frees the underlying recourses.
abstract  Node deleteNode(int pageNumber)
          Markiert einen Knoten in der PageFile als gelöscht.
 int getCapacity()
          Kapazität der Knoten in der PageFile.
 int getDimension()
          Dimension der Daten in der PageFile
 int getMinimum()
          Minimale Beladung der Knoten in der PageFile
 void initialize(int dimension, int capacity)
          Initialisiert die PageFile.
abstract  Node readNode(int pageNumber)
          Liest einen Knoten aus der PageFile.
abstract  int writeNode(Node node)
          Schreibt einen Knoten in PageFile.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

capacity

protected int capacity
Kapazität eines Knotens


dimension

protected int dimension
Dimension der Daten


minimum

protected int minimum
minimale Beladung eines Knotens

Constructor Detail

PageFile

public PageFile()
Method Detail

getDimension

public int getDimension()
Dimension der Daten in der PageFile

Returns:
int - Dimension

getMinimum

public int getMinimum()
Minimale Beladung der Knoten in der PageFile

Returns:
int - minimale Beladung

getCapacity

public int getCapacity()
Kapazität der Knoten in der PageFile. Kapazität ist der Maximale Dateninhalt plus 1 für OverFlow.

Returns:
int - Kapazität

readNode

public abstract Node readNode(int pageNumber)
                       throws PageFileException
Liest einen Knoten aus der PageFile.

Parameters:
pageNumber - PageFileNummer, wo Knoten gespeichert ist
Returns:
AbstractNode Knoten
Throws:
PageFileException

writeNode

public abstract int writeNode(Node node)
                       throws PageFileException
Schreibt einen Knoten in PageFile. Methode muß prüfen, ob Knoten eine PageNumber besitzt, ansonsten wird eine neu zugewiesen und zurückgegeben.

Parameters:
node - zu schreibender Knoten
Returns:
int PageFileNummer, wo Knoten gepeichert.
Throws:
PageFileException

deleteNode

public abstract Node deleteNode(int pageNumber)
                         throws PageFileException
Markiert einen Knoten in der PageFile als gelöscht.

Parameters:
pageNumber - PageFilenummer
Returns:
AbstractNode gelöschter Knoten
Throws:
PageFileException

initialize

public void initialize(int dimension,
                       int capacity)
                throws PageFileException
Initialisiert die PageFile.

Parameters:
dimension - der Daten
capacity - Kapazität der Knoten
Throws:
PageFileException

close

public abstract void close()
                    throws PageFileException
Closes the pagefile and frees the underlying recourses.

Throws:
PageFileException