Class BinaryIndexResult<E extends java.lang.Enum<E>>

java.lang.Object
de.bsvrz.ars.ars.persistence.index.result.BinaryIndexResult<E>
All Implemented Interfaces:
IndexResult<E>

public class BinaryIndexResult<E extends java.lang.Enum<E>>
extends java.lang.Object
implements IndexResult<E>
Diese Klasse repräsentiert das Ergebnis einer Indexanfrage aus der Klasse AbstractIndex. Dieses Ergebnis kann man sich wie den Teilbereich einer AbstractIndex-Klasse vorstellen, der das Ergebnis einer Bereichsanfrage enthält. Wie die dort genannte Klasse kann man sich diese Klasse wie eine Excel- oder Datenbanktabelle vorstellen. Der generische Parameter E gibt die möglicherweise enthaltenen Daten/Spaltenköpfe an.
  • Constructor Summary

    Constructors
    Constructor Description
    BinaryIndexResult​(IndexContentDescriptor<E> indexContentDescriptor)
    Erstellt ein neues IndexResult
  • Method Summary

    Modifier and Type Method Description
    void add​(byte[] data)
    Fügt einen Datensatz hinzu
    long get​(int index, E value)
    Gibt eine einzelne Information als Long-Wert zurück
    boolean getBoolean​(int index, E containerHeaderParam)
    Gibt eine einzelne Information als Boolean-Wert zurück
    java.util.List<IndexContentDescriptor.IndexColumn> getColumns()
    Gibt die Spalten des Ergebnisses zurück.
    long getMax​(E value)
    Gibt den maximalen Wert einer Spalte innerhalb des Ergebnisses zurück
    long getMin​(E value)
    Gibt den minimalen Wert einer Spalte innerhalb des Ergebnisses zurück
    long getNext​(E value)
    Gibt einen Wert aus dem ersten nach dem Anfragebereich liegenden Datensatz zurück
    int getSignedInt​(int index, E value)
    Gibt eine einzelne Information als Integer-Wert mit Vorzeichen zurück
    java.lang.String getString​(int index, E value)
    Gibt eine einzelne Information als String-Wert zurück
    boolean hasNext()
    Gibt true zurück, wenn ein nächster Datensatz nach dem Anfragebereich ermittelt wurde
    boolean isEmpty()
    Gibt true zurück, wenn das Ergebnis leer ist
    void setNext​(byte[] data)
    Setzt den Datensatz hinter dem Anfragebereich
    int size()
    Gibt die Anzahl Datensätze zurück.
    java.lang.String toString()  

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Constructor Details

    • BinaryIndexResult

      public BinaryIndexResult​(IndexContentDescriptor<E> indexContentDescriptor)
      Erstellt ein neues IndexResult
      Parameters:
      indexContentDescriptor - Index-Datei-Definition (siehe AbstractIndex)
  • Method Details

    • add

      public void add​(byte[] data)
      Fügt einen Datensatz hinzu
      Parameters:
      data - Binär kodierter einzelner Datensatz (wie in IndexDatei kodiert)
    • setNext

      public void setNext​(byte[] data)
      Setzt den Datensatz hinter dem Anfragebereich
      Parameters:
      data - Binär kodierter einzelner Datensatz (wie in IndexDatei kodiert)
    • size

      public int size()
      Gibt die Anzahl Datensätze zurück. Der Datensatz hinter dem Anfragebereich wird nicht mitgezählt.
      Specified by:
      size in interface IndexResult<E extends java.lang.Enum<E>>
      Returns:
      die Anzahl Datensätze
    • get

      public long get​(int index, E value)
      Gibt eine einzelne Information als Long-Wert zurück
      Specified by:
      get in interface IndexResult<E extends java.lang.Enum<E>>
      Parameters:
      index - Zeilen/Datensatzindex im Ergebnis. 0 gibt den ersten Eintrag zurück, 1 den zweiten usw.
      value - Wert/Spalte, der abgefragt werden soll
      Returns:
      Information als Long-Wert oder -1 wenn der entsprechende Wert nicht indiziert wurde.
      Throws:
      java.lang.IllegalArgumentException - bei ungültigen Anfragen außerhalb des Bereichs
    • getSignedInt

      public int getSignedInt​(int index, E value)
      Gibt eine einzelne Information als Integer-Wert mit Vorzeichen zurück
      Specified by:
      getSignedInt in interface IndexResult<E extends java.lang.Enum<E>>
      Parameters:
      index - Zeilen/Datensatzindex im Ergebnis. 0 gibt den ersten Eintrag zurück, 1 den zweiten usw.
      value - Wert/Spalte, der abgefragt werden soll
      Returns:
      Information als Integer-Wert oder -1 wenn der entsprechende Wert nicht indiziert wurde.
      Throws:
      java.lang.IllegalArgumentException - bei ungültigen Anfragen außerhalb des Bereichs
    • getString

      public java.lang.String getString​(int index, E value)
      Gibt eine einzelne Information als String-Wert zurück
      Specified by:
      getString in interface IndexResult<E extends java.lang.Enum<E>>
      Parameters:
      index - Zeilen/Datensatzindex im Ergebnis. 0 gibt den ersten Eintrag zurück, 1 den zweiten usw.
      value - Wert/Spalte, der abgefragt werden soll
      Returns:
      Information als String-Wert oder `null` wenn der entsprechende Wert nicht indiziert wurde.
      Throws:
      java.lang.IllegalArgumentException - bei ungültigen Anfragen außerhalb des Bereichs
    • getBoolean

      public boolean getBoolean​(int index, E containerHeaderParam)
      Gibt eine einzelne Information als Boolean-Wert zurück
      Specified by:
      getBoolean in interface IndexResult<E extends java.lang.Enum<E>>
      Parameters:
      index - Zeilen/Datensatzindex im Ergebnis. 0 gibt den ersten Eintrag zurück, 1 den zweiten usw.
      containerHeaderParam - Wert/Spalte, der abgefragt werden soll
      Returns:
      Information als Boolean-Wert oder false wenn der entsprechende Wert nicht indiziert wurde.
      Throws:
      java.lang.IllegalArgumentException - bei ungültigen Anfragen außerhalb des Bereichs
    • hasNext

      public boolean hasNext()
      Gibt true zurück, wenn ein nächster Datensatz nach dem Anfragebereich ermittelt wurde
      Specified by:
      hasNext in interface IndexResult<E extends java.lang.Enum<E>>
      Returns:
      true, wenn ein nächster Datensatz nach dem Anfragebereich ermittelt wurde, sonst false
    • getNext

      public long getNext​(E value)
      Gibt einen Wert aus dem ersten nach dem Anfragebereich liegenden Datensatz zurück
      Specified by:
      getNext in interface IndexResult<E extends java.lang.Enum<E>>
      Parameters:
      value - Spalte
      Returns:
      einen Wert aus dem nächsten Datensatz
    • isEmpty

      public boolean isEmpty()
      Gibt true zurück, wenn das Ergebnis leer ist
      Specified by:
      isEmpty in interface IndexResult<E extends java.lang.Enum<E>>
      Returns:
      true, wenn das Ergebnis leer ist, sonst false
    • getMin

      public long getMin​(E value)
      Gibt den minimalen Wert einer Spalte innerhalb des Ergebnisses zurück
      Specified by:
      getMin in interface IndexResult<E extends java.lang.Enum<E>>
      Parameters:
      value - Spalte
      Returns:
      den minimalen Wert einer Spalte innerhalb des Ergebnisses
    • getMax

      public long getMax​(E value)
      Gibt den maximalen Wert einer Spalte innerhalb des Ergebnisses zurück
      Specified by:
      getMax in interface IndexResult<E extends java.lang.Enum<E>>
      Parameters:
      value - Spalte
      Returns:
      den maximalen Wert einer Spalte innerhalb des Ergebnisses
    • getColumns

      public java.util.List<IndexContentDescriptor.IndexColumn> getColumns()
      Description copied from interface: IndexResult
      Gibt die Spalten des Ergebnisses zurück. Dies entspricht den im Index definierten Spalten.
      Specified by:
      getColumns in interface IndexResult<E extends java.lang.Enum<E>>
      Returns:
      die Spalten des Ergebnisses
    • toString

      public java.lang.String toString()
      Specified by:
      toString in interface IndexResult<E extends java.lang.Enum<E>>
      Overrides:
      toString in class java.lang.Object