de.bsvrz.ars.ars.persistence.index
Class IndexEntryTime

java.lang.Object
  extended by de.bsvrz.ars.ars.persistence.index.IndexEntryTime

public class IndexEntryTime
extends Object

Hilfsklasse für einen Datenzeit Index.

Ein Eintrag im Datenzeit Index ist wie folgt aufgebaut:

DT-MinDT-MaxDI-MinDI-MaxCID
6 Byte6 Byte8 Byte8 Byte5 Byte

Die Gesamtlänge ist 33 Bytes. Ein Eintrag wird mit setEntry(byte[],int,long[]) geschrieben und über die getter ausgelesen.

Author:
beck et al. projects GmbH, Thomas Schaefer, Philippe Schrettenbrunner

Field Summary
private static int CONTID_POS
           
private static int DI_MAX_POS
           
private static int DI_MIN_POS
           
private static int DT_MAX_POS
           
private static int DT_MIN_POS
           
static int ENTRY_LEN
          Länge eines Eintrages im Index
 
Constructor Summary
private IndexEntryTime()
          Rein statische Klasse, keine Instanzen -> privater Konstruktor
 
Method Summary
static long getCID(byte[] buffer, int pos)
          Liefert die Container-ID.
static long getDIMax(byte[] buffer, int pos)
          Liefert den Max-Wert des Datenindex.
static long getDIMin(byte[] buffer, int pos)
          Liefert den Min-Wert des Datenindex.
static long getDTMax(byte[] buffer, int pos)
          Liefert den Max-Wert der Datenzeit.
static long getDTMin(byte[] buffer, int pos)
          Liefert den Min-Wert der Datenzeit.
static long[] getEntry(byte[] buffer, int pos)
          Liefert den gesammten Eintrag an der Stelle pos im Puffer buffer.
static void setEntry(byte[] buffer, int pos, long[] entry)
          Schreibt einen Eintrag an die Stelle pos im ByteBuffer buffer
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DT_MIN_POS

private static final int DT_MIN_POS
See Also:
Constant Field Values

DT_MAX_POS

private static final int DT_MAX_POS
See Also:
Constant Field Values

DI_MIN_POS

private static final int DI_MIN_POS
See Also:
Constant Field Values

DI_MAX_POS

private static final int DI_MAX_POS
See Also:
Constant Field Values

CONTID_POS

private static final int CONTID_POS
See Also:
Constant Field Values

ENTRY_LEN

public static final int ENTRY_LEN
Länge eines Eintrages im Index

See Also:
Constant Field Values
Constructor Detail

IndexEntryTime

private IndexEntryTime()
Rein statische Klasse, keine Instanzen -> privater Konstruktor

Method Detail

setEntry

public static void setEntry(byte[] buffer,
                            int pos,
                            long[] entry)
Schreibt einen Eintrag an die Stelle pos im ByteBuffer buffer

Parameters:
buffer - Puffer, in den der Eintrag geschrieben wird
pos - Index der Stelle, an der der Eintrag geschrieben wird
entry - Long Array mit Min-Wert der Datenzeit, Max-Wert der Datenzeit, Min-Wert des DatenIndex, Max-Wert des DatenIndexund der Container id

getEntry

public static long[] getEntry(byte[] buffer,
                              int pos)
Liefert den gesammten Eintrag an der Stelle pos im Puffer buffer.

Parameters:
buffer - Byte Buffer
pos - Index des Eintrags, der gelesen werden soll
Returns:
Array mit DTMin, DTMax, DIMin, DIMax, CID

getDTMin

public static long getDTMin(byte[] buffer,
                            int pos)
Liefert den Min-Wert der Datenzeit.

Parameters:
buffer - Byte Buffer
pos - Index des Eintrags, der gelesen werden soll
Returns:
Min-Wert der Datenzeit

getDTMax

public static long getDTMax(byte[] buffer,
                            int pos)
Liefert den Max-Wert der Datenzeit.

Parameters:
buffer - Byte Buffer
pos - Index des Eintrags, der gelesen werden soll
Returns:
Max-Wert der Datenzeit

getDIMin

public static long getDIMin(byte[] buffer,
                            int pos)
Liefert den Min-Wert des Datenindex.

Parameters:
buffer - Byte Buffer
pos - Index des Eintrags, der gelesen werden soll
Returns:
Min-Wert des Datenindex

getDIMax

public static long getDIMax(byte[] buffer,
                            int pos)
Liefert den Max-Wert des Datenindex.

Parameters:
buffer - Byte Buffer
pos - Index des Eintrags, der gelesen werden soll
Returns:
Max-Wert des Datenindex

getCID

public static long getCID(byte[] buffer,
                          int pos)
Liefert die Container-ID.

Parameters:
buffer - Byte Buffer
pos - Index des Eintrags, der gelesen werden soll
Returns:
die Container-ID