de.bsvrz.pat.sysbed.main
Class GenericTestMonitorApplication

java.lang.Object
  extended by de.bsvrz.pat.sysbed.main.GenericTestMonitorApplication
All Implemented Interfaces:
ApplicationInterface

public class GenericTestMonitorApplication
extends Object
implements ApplicationInterface

Diese Klasse erstellt das Fenster der Anwendung mit der Datenauswahl, beliebigen Modulen und dem Panel, welches die Einstellungen der Module verwaltet.

Damit die Module auch mit der Applikation kommunizieren können, implementiert diese Klasse das ApplicationInterface.

Author:
Kappich Systemberatung

Nested Class Summary
private  class GenericTestMonitorApplication.ModuleButton
          Diese Klasse erstellt für ein Modul einen Button für die Applikation.
 
Field Summary
private  List _argumentList
          speichert die ArgumentListe, die beim Aufruf der Applikation übergeben wurde
private  ClientDavInterface _connection
          Die Verbindung zum Datenverteiler.
private  JPanel _dataSelectionPanel
          speichert das Panel mit der Datenidentifikationsauswahl und den Modulen
private  JFrame _frame
          Das Hauptfenster der Anwendung.
private  JPanel _logoPanel
          das Panel, worauf das Logo angeordnet ist
private  Map<String,ExternalModule> _moduleMap
          Speichert die Objekte der Module.
private  JPanel _modulePanel
          das Panel, worauf die Module angeordnet sind
private  PreselectionPanel _preselectionPanel
          speichert den PreselectionPanel
private  Dimension _screenSize
          speichert die Bildschirmgröße
private  SettingsHandler _settingsHandler
          speichert das Panel mit den Einstellungen
private  JSplitPane _splitPane
          speichert den Splitpane, welches das Fenster in der Horizontalen teilt
 
Constructor Summary
GenericTestMonitorApplication(String title, ClientDavInterface connection, Collection<Object> treeNodes)
          Konstruktor.
 
Method Summary
 void addLogo(Icon icon)
          Fügt über die Buttons, mit denen die Module gestartet werden können, ein Logo ein.
 void addModule(ExternalModule module)
          Mit dieser Methode wird ein Modul zur Applikation hinzugefügt.
 void addSeparator()
          Fügt zwischen die Buttons, mit denen die Module gestartet werden können, einen optischen Abstandshalter ein.
 List getArgumentList()
          Gibt die Argumente zurück, die beim Aufruf der main-Methode übergeben wurden.
 ClientDavInterface getConnection()
          Gibt die Verbindung zum Datenverteiler zurück.
 ExternalModule getExternalModule(String moduleName)
          Ermittelt anhand des Modulnamens das zugehörige Objekt und gibt es zurück.
 Collection getTreeNodes()
          Gibt die Parameter für die Vorauswahl (Baum) zurück.
 void saveSettings(SettingsData settingsData)
          Nimmt die Einstellungsdaten der Module entgegen und übergibt sie an das Panel, welches die Einstellungen verwaltet.
 void setArgumentList(List argumentList)
          Es wird die Argumentliste gesetzt, die beim Starten der Anwendung als Parameter angegeben wurde.
 void setExternalModule(ExternalModule externalModule)
          Fügt ein weiteres Modul in die Liste der Applikation ein.
 void start()
          Stellt die Anwendung dar und lädt die Einstellungen aus den Preferences.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_frame

private final JFrame _frame
Das Hauptfenster der Anwendung.


_connection

private final ClientDavInterface _connection
Die Verbindung zum Datenverteiler.


_modulePanel

private final JPanel _modulePanel
das Panel, worauf die Module angeordnet sind


_screenSize

private final Dimension _screenSize
speichert die Bildschirmgröße


_preselectionPanel

private final PreselectionPanel _preselectionPanel
speichert den PreselectionPanel


_argumentList

private List _argumentList
speichert die ArgumentListe, die beim Aufruf der Applikation übergeben wurde


_logoPanel

private final JPanel _logoPanel
das Panel, worauf das Logo angeordnet ist


_splitPane

private final JSplitPane _splitPane
speichert den Splitpane, welches das Fenster in der Horizontalen teilt


_settingsHandler

private final SettingsHandler _settingsHandler
speichert das Panel mit den Einstellungen


_dataSelectionPanel

private final JPanel _dataSelectionPanel
speichert das Panel mit der Datenidentifikationsauswahl und den Modulen


_moduleMap

private final Map<String,ExternalModule> _moduleMap
Speichert die Objekte der Module. Anhand des Keys (Klassenname des Moduls) kann das Objekt ermittelt werden.

Constructor Detail

GenericTestMonitorApplication

public GenericTestMonitorApplication(String title,
                                     ClientDavInterface connection,
                                     Collection<Object> treeNodes)
Konstruktor. Die Applikation erhält eine Verbindung zum Datenverteiler und den für den Filterbaum benötigten Parameter zur Spezifizierung der Vorauswahl, bestehend aus System- und Knotenobjekten.

Parameters:
title - der Titel des Fensters
connection - Verbindung zum Datenverteiler
treeNodes - bestehend aus System- und Knotenobjekten
Method Detail

addModule

public void addModule(ExternalModule module)
Mit dieser Methode wird ein Modul zur Applikation hinzugefügt.

Parameters:
module - ein Modul

addSeparator

public void addSeparator()
Fügt zwischen die Buttons, mit denen die Module gestartet werden können, einen optischen Abstandshalter ein.


addLogo

public void addLogo(Icon icon)
Fügt über die Buttons, mit denen die Module gestartet werden können, ein Logo ein.

Parameters:
icon - das Logo

start

public void start()
Stellt die Anwendung dar und lädt die Einstellungen aus den Preferences.


getConnection

public ClientDavInterface getConnection()
Gibt die Verbindung zum Datenverteiler zurück.

Specified by:
getConnection in interface ApplicationInterface
Returns:
die Verbindung zum Datenverteiler

saveSettings

public void saveSettings(SettingsData settingsData)
Nimmt die Einstellungsdaten der Module entgegen und übergibt sie an das Panel, welches die Einstellungen verwaltet.

Specified by:
saveSettings in interface ApplicationInterface
Parameters:
settingsData - die Einstellungsdaten

getArgumentList

public List getArgumentList()
Gibt die Argumente zurück, die beim Aufruf der main-Methode übergeben wurden.

Specified by:
getArgumentList in interface ApplicationInterface
Returns:
die Liste der Argumente

setArgumentList

public void setArgumentList(List argumentList)
Es wird die Argumentliste gesetzt, die beim Starten der Anwendung als Parameter angegeben wurde.

Parameters:
argumentList - die Argumentliste

getTreeNodes

public Collection getTreeNodes()
Gibt die Parameter für die Vorauswahl (Baum) zurück. Die Collection enthält Systemobjekte und Knotenobjekte. Anhand der Objekte wird der Baum für die Vorauswahl erzeugt.

Specified by:
getTreeNodes in interface ApplicationInterface
Returns:
die Sammlung von System- und Knotenobjekten

getExternalModule

public ExternalModule getExternalModule(String moduleName)
Ermittelt anhand des Modulnamens das zugehörige Objekt und gibt es zurück.

Parameters:
moduleName - der Name des gesuchten Moduls
Returns:
das Objekt des gesuchten Moduls, null, wenn kein passendes Modul gespeichert ist

setExternalModule

public void setExternalModule(ExternalModule externalModule)
Fügt ein weiteres Modul in die Liste der Applikation ein.

Parameters:
externalModule - neues Modul