de.bsvrz.pat.sysbed.dataview
Class DataViewModel

java.lang.Object
  extended by de.bsvrz.pat.sysbed.dataview.DataViewModel

public class DataViewModel
extends Object

Diese Klasse erhält von der Applikation Datensätze und Informationen. Hierbei handelt es sich um zusätzliche Datensätze, um geänderte Datensätze, um eine Menge neuer Datensätze oder um Informationen darüber, welche Datensätze gelöscht wurden. Diese Datensätze und Informationen werden empfangen, ggf. verarbeitet und an alle angemeldeten DataViewPanels übergeben.

Author:
Kappich Systemberatung

Field Summary
private  Map<Long,DataTableObject> _actualDatasets
          speichert zu jedem Objekt den letzten zu betrachtenden Datensatz
private  AttributeGroup _attributeGroup
          speichert die darzustellende Attributgruppe
private  List<DataTableObject> _datasets
          speichert alle Datensätze, die von der Applikation übergeben werden
private  Debug _debug
          der Debug-Logger
private  List<DataViewListener> _listener
          speichert alle angemeldeten Listener
 
Constructor Summary
DataViewModel(AttributeGroup attributeGroup)
          Konstruktor.
 
Method Summary
 void addDatasetAbove(DataTableObject dataTableObject)
          Fügt einen neuen Datensatz oben in der Tabelle ein.
 void addDatasetBelow(DataTableObject dataTableObject)
          Fügt einen Datensatz an bestehende Daten hinten an.
 void addDatasetsBelow(List<DataTableObject> dataTableObjects)
          Fügt mehrere Datensätze an bestehende Daten hinten an.
 void addDataViewListener(DataViewListener listener)
          Meldet einen Listener beim Model an.
private  void fireAddDataset(int index, DataTableObject dataTableObject)
          Alle Listener werden benachrichtigt, dass ein Datensatz an eine bestimmte Position der bestehenden Datensätze eingefügt wurde.
private  void fireAddDatasets(List<DataTableObject> datasets)
          Alle Listener werden benachrichtigt, dass einer oder mehrere Datensätze an die bestehenden Datensätze angefügt wurden.
private  void fireRemoveDataset(int index)
          Alle Listener werden benachrichtigt, dass der Datensatz an der Position index gelöscht wurde.
private  void fireSetDatasets(List<DataTableObject> datasets)
          Alle Listener werden benachrichtigt, dass die bisherigen Datensätze gelöscht und durch die neuen (übergebenen) Datensätze ersetzt werden.
 AttributeGroup getAttributeGroup()
          Gibt die Attributgruppe zurück.
 void removeDataViewListener(DataViewListener listener)
          Meldet einen Listener vom Model ab.
 void setDatasets(List<DataTableObject> dataTableObjects)
          Übergibt initial alle in Frage kommenden Datensätze.
 void updateDatasets(List<DataTableObject> dataTableObjects)
          Stellt zu den angemeldeten Objekten jeweils den aktuellsten Datensatz dar.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_debug

private final Debug _debug
der Debug-Logger


_listener

private final List<DataViewListener> _listener
speichert alle angemeldeten Listener


_datasets

private final List<DataTableObject> _datasets
speichert alle Datensätze, die von der Applikation übergeben werden


_attributeGroup

private final AttributeGroup _attributeGroup
speichert die darzustellende Attributgruppe


_actualDatasets

private final Map<Long,DataTableObject> _actualDatasets
speichert zu jedem Objekt den letzten zu betrachtenden Datensatz

Constructor Detail

DataViewModel

public DataViewModel(AttributeGroup attributeGroup)
Konstruktor.

Parameters:
attributeGroup - Attributgruppe, die dargestellt werden soll
Method Detail

getAttributeGroup

public AttributeGroup getAttributeGroup()
Gibt die Attributgruppe zurück.

Returns:
Attributgruppe

addDatasetBelow

public void addDatasetBelow(DataTableObject dataTableObject)
Fügt einen Datensatz an bestehende Daten hinten an.

Parameters:
dataTableObject - neuer Datensatz

addDatasetsBelow

public void addDatasetsBelow(List<DataTableObject> dataTableObjects)
Fügt mehrere Datensätze an bestehende Daten hinten an.

Parameters:
dataTableObjects - Liste mit anzuzeigenden Datensätzen

addDatasetAbove

public void addDatasetAbove(DataTableObject dataTableObject)
Fügt einen neuen Datensatz oben in der Tabelle ein.

Parameters:
dataTableObject - der neue Datensatz

setDatasets

public void setDatasets(List<DataTableObject> dataTableObjects)
Übergibt initial alle in Frage kommenden Datensätze. Bestehende werden gelöscht. Durch unten genannte Methoden können weitere Datensätze hinzugefügt werden.

Parameters:
dataTableObjects - Liste mit den Datensätzen
See Also:
addDatasetAbove(DataTableObject), addDatasetBelow(DataTableObject)

updateDatasets

public void updateDatasets(List<DataTableObject> dataTableObjects)
Stellt zu den angemeldeten Objekten jeweils den aktuellsten Datensatz dar. Kommen neue Daten vom Datenverteiler, werden auch nur die Daten der Objekte ersetzt, die neu sind. Alle anderen Daten bleiben erhalten.

Parameters:
dataTableObjects - auszuwertende Daten

addDataViewListener

public void addDataViewListener(DataViewListener listener)
Meldet einen Listener beim Model an.

Parameters:
listener - der anzumeldende Listener

removeDataViewListener

public void removeDataViewListener(DataViewListener listener)
Meldet einen Listener vom Model ab.

Parameters:
listener - der abzumeldende Listener

fireAddDatasets

private void fireAddDatasets(List<DataTableObject> datasets)
Alle Listener werden benachrichtigt, dass einer oder mehrere Datensätze an die bestehenden Datensätze angefügt wurden. Diese werden auch übergeben.

Parameters:
datasets - neue Datensätze

fireAddDataset

private void fireAddDataset(int index,
                            DataTableObject dataTableObject)
Alle Listener werden benachrichtigt, dass ein Datensatz an eine bestimmte Position der bestehenden Datensätze eingefügt wurde.

Parameters:
index - Position des neuen Datensatzes
dataTableObject - der neue Datensatz

fireSetDatasets

private void fireSetDatasets(List<DataTableObject> datasets)
Alle Listener werden benachrichtigt, dass die bisherigen Datensätze gelöscht und durch die neuen (übergebenen) Datensätze ersetzt werden. Diese werden auch übergeben.

Parameters:
datasets - neue Datensätze

fireRemoveDataset

private void fireRemoveDataset(int index)
Alle Listener werden benachrichtigt, dass der Datensatz an der Position index gelöscht wurde.

Parameters:
index - Position des gelöschten Datensatzes