java.lang.Object
de.bsvrz.pat.sysbed.dataview.selectionManagement.CellKey

public class CellKey extends Object
Ein CellKey ist eine Objektreferenz für ein Feld in den eigentlichen Daten des DataViewFrames. Da der DataViewFrame bzw. das DataViewPanel nur die aktuell zu visualisierenden Swing-Komponenten bereithält, benötigt man eine solche Objektreferenz, um sich etwa Dinge wie die Selektion merken zu können.
Ein CellKey ist kein schlankes Objekt.
Ein CellKey wird in der Regel mit einem String der Form "<Pid oder Id eines Systemobjekts>:<Datensatzindex>:<Attributbeschreibung>" konstruiert. Die Attributbeschreibung ist genauer im Konstruktor beschrieben. Hier sei nur angemerkt, dass sie Informationen zur Attributgruppe, aber nicht zum Aspekt enthält.
  • Constructor Details

    • CellKey

      public CellKey(String cellKey, boolean superColumn)
      Konstruktor zum Anlegen eines CellKeys. Ein normaler CellKey beschreibt eine Zelle in einer Row; allerdings gibt es die übergreifenden Zeilen für die "Keine-Daten-Fälle", die mit superColumn = true konstruiert werden müssen.
      Parameters:
      cellKey - Schlüssel
  • Method Details

    • removeIndices

      public static String removeIndices(String s)
      Entfernt alle Indizes aus den Arrays des übergebenen Strings und gibt das Ergebnis zurück.
      Parameters:
      s - ein String, z.B. eine Attributbeschreibung mit Array-Informationen
      Returns:
      der String s ohne Indizes in den Array-Informationen
    • removeArrays

      public static String removeArrays(String s)
      Entfernt alle Arrays aus dem übergebenen String und gibt das Ergebnis zurück.
      Parameters:
      s - ein String, z.B. eine Attributbeschreibung mit Array-Informationen
      Returns:
      der String s ohne seine Array-Informationen
    • minColumn

      @Nullable public static CellKeyColumn minColumn(FilterAttributeGroup filterAttributeGroup, CellKey key1, CellKey key2)
      Gibt die kleinere, d.h. weiter links stehende CellKeyColumn der beiden CellKeys zurück.
      Parameters:
      filterAttributeGroup - die Filter-Attributgruppe
      key1 - ein CellKey
      key2 - noch ein CellKey
      Returns:
      der kleinere der beiden CellKeys
    • maxColumn

      @Nullable public static CellKeyColumn maxColumn(FilterAttributeGroup filterAttributeGroup, CellKey key1, CellKey key2)
      Gibt die größere, d.h. weiter rechts stehende CellKeyColumn der beiden CellKeys zurück.
      Parameters:
      filterAttributeGroup - die Filter-Attributgruppe
      key1 - ein CellKey
      key2 - noch ein CellKey
      Returns:
      der größere der beiden CellKeys
    • getFIRST_SEPARATOR

      public static String getFIRST_SEPARATOR()
      Gibt das erste Trennzeichen in der String-Darstellung des CellKeys zurück.
      Returns:
      das erste Trennzeichen in der String-Darstellung des CellKeys
    • getSECOND_SEPARATOR

      public static String getSECOND_SEPARATOR()
      Gibt das zweite Trennzeichen in der String-Darstellung des CellKeys zurück.
      Returns:
      das zweite Trennzeichen in der String-Darstellung des CellKeys
    • isSuperColumn

      public boolean isSuperColumn()
      Gibt an, ob der CellKey eine Super-Spalte beschreibt oder eine normale Spalte.
      Returns:
      steht der CellKey für eine Super-Spalte?
    • getCellKeyAsString

      public String getCellKeyAsString()
      Gibt den String aus dem der CellKey konstruiert wurde zurück.
      Returns:
      der String, aus dem der CellKey konstruiert wurde
    • getDataIndex

      public long getDataIndex()
      Gibt den Datensatzindex des CellKeys zurück.
      Returns:
      Datensatzindex des CellKeys
    • getPidOfTheDataTableObject

      public String getPidOfTheDataTableObject()
      Gibt die Pid des Datensatzes des CellKeys zurück.
      Returns:
      Pid des Datensatzes
    • getAttributeName

      public String getAttributeName()
      Gibt den Attributname des CellKeys inklusive Attributgruppe zurück.
      Returns:
      Attributname des CellKeys inklusive Attributgruppe
    • getAttributePartsWithArrays

      public String getAttributePartsWithArrays()
      Gibt den Attributname ohne Attributgruppe, aber mit den Array-Informationen des CellKeys zurück.
      Returns:
      Attributname ohne Attributgruppe, aber mit den Array-Informationen ds CellKeys
    • getAttributeNamePartArrayValues

      public Integer[] getAttributeNamePartArrayValues()
      Gibt die Array-Informationen des CellKeys zurück.
      Returns:
      die Array-Informationen des CellKeys
    • equals

      public boolean equals(Object object)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • attributeNameIsLessOrEqual

      public boolean attributeNameIsLessOrEqual(FilterAttributeGroup filterAttributeGroup, CellKey key)
      Gestattet einen Vergleich des CellKeys this mit dem übergebenen CellKey. Definiert die Ordnung auf den Spalten bei der Interval-Selektion.
      Parameters:
      filterAttributeGroup - die Filter-Attributgruppe
      key - der CellKey
      Returns:
      das Vergleichsergebnis
    • isBetweenColumns

      public boolean isBetweenColumns(FilterAttributeGroup filterAttributeGroup, CellKeyColumn lowerColumn, CellKeyColumn upperColumn)
      Gibt genau dann true zurück, wenn der CellKey this sich zwischen den Spaltenschranken befindet.
      Parameters:
      filterAttributeGroup - die Filter-Attributgruppe
      lowerColumn - die untere Spaltengrenze
      upperColumn - die obere Spaltengrenze
      Returns:
      true genau dann, wenn this zwischen den Grenzen liegt
    • getCellText

      public String getCellText()
      Gibt den Text, der in der Zelle angezeigt werden soll, zurück.
      Returns:
      den Text, der in der Zelle angezeigt werden soll
    • setCellText

      public void setCellText(String cellText)
      Setzt den Text, der in der Zelle angezeigt werden soll.
      Parameters:
      cellText - der neue Text
    • dumpMe

      public void dumpMe()
      Gibt den CellKey auf System.out aus.
    • toString

      public String toString()
      Overrides:
      toString in class Object