org.basex.io
Class TableAccess

java.lang.Object
  extended by org.basex.io.TableAccess
Direct Known Subclasses:
TableDiskAccess, TableMemAccess

public abstract class TableAccess
extends Object

This abstract class defines the methods for accessing the database table representation.

Author:
Workgroup DBIS, University of Konstanz 2005-10, ISC License, Christian Gruen

Constructor Summary
TableAccess(MetaData md, String pf)
          Constructor.
 
Method Summary
abstract  void close()
          Closes the table access.
abstract  void delete(int pre, int nr)
          Deletes the specified number of entries from the database.
abstract  void flush()
          Flushes the table contents.
abstract  void insert(int pre, byte[] entries)
          Inserts the specified entries into the database.
abstract  int read1(int p, int o)
          Reads a byte value and returns it as an integer value.
abstract  int read2(int p, int o)
          Reads a short value and returns it as an integer value.
abstract  int read4(int p, int o)
          Reads an integer value.
abstract  long read5(int p, int o)
          Reads a 5-byte value and returns it as a long value.
abstract  void set(int pre, byte[] entries)
          Copies the specified entry into the database.
abstract  void write1(int p, int o, int v)
          Writes a byte value to the specified position.
abstract  void write2(int p, int o, int v)
          Writes a short value to the specified position.
abstract  void write4(int p, int o, int v)
          Writes an integer value to the specified position.
abstract  void write5(int p, int o, long v)
          Writes a 5-byte value to the specified position.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TableAccess

public TableAccess(MetaData md,
                   String pf)
Constructor.

Parameters:
md - meta data
pf - file prefix
Method Detail

flush

public abstract void flush()
                    throws IOException
Flushes the table contents.

Throws:
IOException - I/O exception

close

public abstract void close()
                    throws IOException
Closes the table access.

Throws:
IOException - I/O exception

read1

public abstract int read1(int p,
                          int o)
Reads a byte value and returns it as an integer value.

Parameters:
p - pre value
o - offset
Returns:
integer value

read2

public abstract int read2(int p,
                          int o)
Reads a short value and returns it as an integer value.

Parameters:
p - pre value
o - offset
Returns:
integer value

read4

public abstract int read4(int p,
                          int o)
Reads an integer value.

Parameters:
p - pre value
o - offset
Returns:
integer value

read5

public abstract long read5(int p,
                           int o)
Reads a 5-byte value and returns it as a long value.

Parameters:
p - pre value
o - offset
Returns:
integer value

write1

public abstract void write1(int p,
                            int o,
                            int v)
Writes a byte value to the specified position.

Parameters:
p - pre value
o - offset
v - value to be written

write2

public abstract void write2(int p,
                            int o,
                            int v)
Writes a short value to the specified position.

Parameters:
p - pre value
o - offset
v - value to be written

write4

public abstract void write4(int p,
                            int o,
                            int v)
Writes an integer value to the specified position.

Parameters:
p - pre value
o - offset
v - value to be written

write5

public abstract void write5(int p,
                            int o,
                            long v)
Writes a 5-byte value to the specified position.

Parameters:
p - pre value
o - offset
v - value to be written

delete

public abstract void delete(int pre,
                            int nr)
Deletes the specified number of entries from the database.

Parameters:
pre - pre value of the first node to delete
nr - number of entries to be deleted

insert

public abstract void insert(int pre,
                            byte[] entries)
Inserts the specified entries into the database.

Parameters:
pre - pre value
entries - array of bytes containing the entries to insert

set

public abstract void set(int pre,
                         byte[] entries)
Copies the specified entry into the database.

Parameters:
pre - pre value
entries - array of bytes containing the entries to insert