Class CsvFormatManager

java.lang.Object
javax.swing.table.AbstractTableModel
de.kappich.pat.gnd.csv.CsvFormatManager
All Implemented Interfaces:
java.io.Serializable, javax.swing.table.TableModel

public final class CsvFormatManager
extends javax.swing.table.AbstractTableModel
See Also:
Serialized Form
  • Nested Class Summary

    Nested Classes
    Modifier and Type Class Description
    static interface  CsvFormatManager.CsvFormatManagerChangeListener
    Ein Interface für Listener, die über das Hinzufügen, Löschen und Ändern von CsvFormaten informiert werden wollen.
  • Field Summary

    Fields inherited from class javax.swing.table.AbstractTableModel

    listenerList
  • Method Summary

    Modifier and Type Method Description
    void addChangeListener​(CsvFormatManager.CsvFormatManagerChangeListener listener)
    Fügt das übergebene Objekt der Liste der auf CsvFormat-Änderungen angemeldeten Objekte hinzu.
    void addCsvFormat​(CsvFormat format)
    Fügt das CsvFormat der CsvFormat-Liste an, wenn nicht schon ein gleichnamiges CsvFormat existiert.
    void changeCsvFormat​(CsvFormat format)
    Ändert das gleichnamige CsvFormat.
    void clearCsvFormats()
    Löscht alle benutzerdefinierten CsvFormate.
    int getColumnCount()  
    java.lang.String getColumnName​(int columnIndex)  
    CsvFormat getCsvFormat​(int i)
    Gibt das CsvFormat an der i-ten Stelle der CsvFormat-Liste zurück, wobei die Zählung mit 0 beginnt.
    CsvFormat getCsvFormat​(java.lang.String formatName)
    Gibt das CsvFormat mit dem übergebenen Namen zurück.
    java.lang.String[] getCsvFormatNames()
    Gibt ein sortiertes Array aller CsvFormate-Namen zurück.
    java.util.List<CsvFormat> getCsvFormats()
    Gibt eine sortierte Kopie der Liste aller CsvFormate zurück.
    static CsvFormatManager getInstance()
    Die für ein Singleton übliche Methode, um an die einzige Instanz der Klasse zu gelangen.
    int getRowCount()  
    java.lang.String getTooltipAt​(int rowIndex)
    Definiert den Tooltipp für die Felder der Tabelle.
    java.lang.Object getValueAt​(int rowIndex, int columnIndex)  
    boolean hasCsvFormatToLowerCase​(java.lang.String formatName)
    Gibt true zurück, wenn es ein CsvFormat gibt, dessen Name sich allenfalls bezüglich Klein-Groß-Schreibung unterseheidet.
    boolean isChangeable​(CsvFormat format)
    Gibt true zurück, wenn das CsvFormat veränderbar ist.
    static void refreshInstance()
    Mit Hilfe dieser Methode kann man den CsvFormatManager dazu zwingen, sich erneut zu konstruieren, was etwa nach dem Importieren von Präferenzen sinnvoll ist.
    void removeChangeListener​(CsvFormatManager.CsvFormatManagerChangeListener listener)
    Entfernt das übergebene Objekt aus der Liste der auf CsvFormat-Änderungen angemeldeten Objekte.
    boolean removeCsvFormat​(CsvFormat format)
    Entfernt das übergebene CsvFormat auf Basis eines Namensvergleichs aus der Liste aller CsvFormate und damit auch aus den Präferenzen.
    java.lang.String toString()  

    Methods inherited from class javax.swing.table.AbstractTableModel

    addTableModelListener, findColumn, fireTableCellUpdated, fireTableChanged, fireTableDataChanged, fireTableRowsDeleted, fireTableRowsInserted, fireTableRowsUpdated, fireTableStructureChanged, getColumnClass, getListeners, getTableModelListeners, isCellEditable, removeTableModelListener, setValueAt

    Methods inherited from class java.lang.Object

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

    • getInstance

      public static CsvFormatManager getInstance()
      Die für ein Singleton übliche Methode, um an die einzige Instanz der Klasse zu gelangen.
      Returns:
      den CsvFormatManager
    • refreshInstance

      public static void refreshInstance()
      Mit Hilfe dieser Methode kann man den CsvFormatManager dazu zwingen, sich erneut zu konstruieren, was etwa nach dem Importieren von Präferenzen sinnvoll ist.
    • getCsvFormats

      public java.util.List<CsvFormat> getCsvFormats()
      Gibt eine sortierte Kopie der Liste aller CsvFormate zurück.
      Returns:
      die Liste aller CsvFormate
    • getCsvFormatNames

      public java.lang.String[] getCsvFormatNames()
      Gibt ein sortiertes Array aller CsvFormate-Namen zurück.
      Returns:
      das rray aller CsvFormat-Namen
    • getCsvFormat

      public CsvFormat getCsvFormat​(java.lang.String formatName)
      Gibt das CsvFormat mit dem übergebenen Namen zurück.
      Parameters:
      formatName - der Name
      Returns:
      den geforderten CsvFormat
    • getCsvFormat

      public CsvFormat getCsvFormat​(int i)
      Gibt das CsvFormat an der i-ten Stelle der CsvFormat-Liste zurück, wobei die Zählung mit 0 beginnt.
      Parameters:
      i - ein Index
      Returns:
      den geforderten CsvFormat
    • hasCsvFormatToLowerCase

      public boolean hasCsvFormatToLowerCase​(java.lang.String formatName)
      Gibt true zurück, wenn es ein CsvFormat gibt, dessen Name sich allenfalls bezüglich Klein-Groß-Schreibung unterseheidet. Sonst false.
      Parameters:
      formatName -
      Returns:
      s.o.
    • getColumnCount

      public int getColumnCount()
    • getRowCount

      public int getRowCount()
    • getValueAt

      public java.lang.Object getValueAt​(int rowIndex, int columnIndex)
    • getTooltipAt

      @Nullable public java.lang.String getTooltipAt​(int rowIndex)
      Definiert den Tooltipp für die Felder der Tabelle. Gehört zur Implementation des TableModel.
      Parameters:
      rowIndex - ein Zeilenindex
      Returns:
      ein Tooltipp
    • getColumnName

      public java.lang.String getColumnName​(int columnIndex)
      Specified by:
      getColumnName in interface javax.swing.table.TableModel
      Overrides:
      getColumnName in class javax.swing.table.AbstractTableModel
    • addCsvFormat

      public void addCsvFormat​(CsvFormat format) throws java.lang.IllegalArgumentException
      Fügt das CsvFormat der CsvFormat-Liste an, wenn nicht schon ein gleichnamiges CsvFormat existiert.
      Parameters:
      format - ein CsvFormat
      Throws:
      java.lang.IllegalArgumentException - wenn bereits ein gleichnamiges CsvFormat existiert
    • changeCsvFormat

      public void changeCsvFormat​(CsvFormat format) throws java.lang.IllegalArgumentException
      Ändert das gleichnamige CsvFormat.
      Parameters:
      format - ein CsvFormat
      Throws:
      java.lang.IllegalArgumentException - wenn das CsvFormat nicht bekannt ist
    • removeCsvFormat

      public boolean removeCsvFormat​(CsvFormat format)
      Entfernt das übergebene CsvFormat auf Basis eines Namensvergleichs aus der Liste aller CsvFormate und damit auch aus den Präferenzen. Entspricht einer kompletten Löschung des CsvFormats. Wirkt aber nicht für im Kode definierte CsvFormate. Wird ein CsvFormat gelöscht, so erhält man den Rückgabewert true, sonst false.
      Parameters:
      format - ein CsvFormat
      Returns:
      true genau dann, wenn der CsvFormat gelöscht wurde
    • clearCsvFormats

      public void clearCsvFormats()
      Löscht alle benutzerdefinierten CsvFormate.
    • toString

      public java.lang.String toString()
      Overrides:
      toString in class java.lang.Object
    • isChangeable

      public boolean isChangeable​(CsvFormat format)
      Gibt true zurück, wenn das CsvFormat veränderbar ist. Im Moment ist ein CsvFormat genau dann unveränderbar, wenn er im Kode definiert ist.
      Parameters:
      format - ein CsvFormat
      Returns:
      true genau dann, wenn das CsvFormat veränderbar ist
    • addChangeListener

      public void addChangeListener​(CsvFormatManager.CsvFormatManagerChangeListener listener)
      Fügt das übergebene Objekt der Liste der auf CsvFormat-Änderungen angemeldeten Objekte hinzu.
      Parameters:
      listener - ein Listener
    • removeChangeListener

      public void removeChangeListener​(CsvFormatManager.CsvFormatManagerChangeListener listener)
      Entfernt das übergebene Objekt aus der Liste der auf CsvFormat-Änderungen angemeldeten Objekte.
      Parameters:
      listener - ein Listener