de.bsvrz.puk.config.xmlFile.writer
Class ConfigAreaWriter

java.lang.Object
  extended by de.bsvrz.puk.config.xmlFile.writer.ConfigAreaWriter

public class ConfigAreaWriter
extends Object

Diese Klasse schreibt einen Konfigurationsbereich in eine XML-Datei, dabei wird die K2S.DTD berücksichtigt.

Author:
Kappich Systemberatung

Field Summary
(package private)  ConfigurationAreaProperties _area
          Enthält den gesamten Konfigurationsbereich
(package private)  String _emptyString
          Einrückungszeichen, wird pro Ebene einen _emptyString nach rechts eingerückt.
 
Constructor Summary
ConfigAreaWriter(ConfigurationAreaProperties area)
           
 
Method Summary
private  String createEmptyString(int textDepth)
          Erzeugt textDepth viele Tabs in einem String und gibt diesen leeren String zurück.
private  void writeAspect(ConfigurationAspect configurationAspect, PrintWriter writer, int textDepth)
          Speichert einen "aspekt" (siehe K2S.DTD)
private  void writeAspectDefinition(AspectProperties aspectProperties, PrintWriter writer, int textDepth)
          Schreibt eine "aspektDefinition" (siehe K2S.DTD) in eine Datei.
private  void writeAttribute(PlainAttributeProperties attribute, PrintWriter writer, int textDepth)
          Speichert einen "attribut" (siehe K2S.DTD)
private  void writeAttributeAndValueCheckedValue(String attribute, String value, PrintWriter writer)
          Schreibt ...attribute="value"...
private  void writeAttributeAndValueUncheckedValue(String attribute, String value, PrintWriter writer)
          Schreibt ...attribute="value"...
private  void writeAttributeDefinition(AttributeTypeProperties attributeTypeProperties, PrintWriter writer, int textDepth)
          Schreibt eine "attributDefinition" (siehe K2S.DTD) in eine Datei.
private  void writeAttributeGroupDefinition(AttributeGroupProperties attributeGroupProperties, PrintWriter writer, int textDepth)
          Schreibt eine "attributgruppenDefinition" (siehe K2S.DTD) mit allen Tags in eine Datei
private  void writeAttributeList(ListAttributeProperties attributeList, PrintWriter writer, int textDepth)
          Speichert einen "attributliste" (siehe K2S.DTD)
private  void writeAttributeListDefinition(AttributeListProperties attributeListProperties, PrintWriter writer, int textDepth)
          Schreibt eine attributListenDefinition (siehe K2S.DTD) in einen Stream
private  void writeAttributeType(Object unknownAttributeType, PrintWriter writer, int textDepth)
          Diese Methode schreibt einen Attributtyp.
 void writeConfigAreaAsXML(File file)
          Schreibt die im Konstruktor übergebenen Objekte als XML-Datei, als Grundlage dient die K2S.DTD.
private  void writeConfigAreaChanges(ConfigurationAreaChangeInformation[] configurationAreaChangeInformations, PrintWriter writer, int textDepth)
          Schreibt das Element "konfigurationsAenderung".
private  void writeConfigurationObject(ConfigurationConfigurationObject configurationObject, PrintWriter writer, int textDepth)
          Schreibt ein konfigurationsObjekt (siehe K2S.DTD) als XML Text in einen Stream.
private  void writeDataField(ConfigurationDataField dataField, PrintWriter writer, int textDepth)
          Schreibt ein datenfeld (siehe K2S.DTD)
private  void writeDataList(ConfigurationDataList dataList, PrintWriter writer, int textDepth)
          Schreibt eine datenliste (siehe K2S.DTD)
private  void writeDataset(ConfigurationDataset dataset, PrintWriter writer, int textDepth)
          Speichert einen datensatz (siehe K2S.DTD) als XML Text.
private  void writeDatasetElements(DatasetElement[] dateAnddataListAndDataField, PrintWriter writer, int textDepth)
          Speichert den Inhalt eines Datensatzes.
private  void writeDate(ConfigurationData data, PrintWriter writer, int textDepth)
          Schreibt ein datum (siehe K2S.DTD)
private  void writeDefault(String defaultValue, PrintWriter writer, int textDepth)
          Schreibt das Element "default" (siehe K2S.DTD) in einen Stream
private  void writeDefaultParameter(ConfigurationDefaultParameter defaultParameter, PrintWriter writer, int textDepth)
          Speicher einen Default-Parameter-Datensatz (siehe K2S.DTD) in einer XML-Datei.
private  void writeDependencies(Collection<ConfigurationAreaDependency> areaDependencies, PrintWriter writer, int textDepth)
          Schreibt alle Abhängigkeiten des Bereichs zu anderen Bereichen als Kommentar in den übergebenen Writer
private  void writeElements(String[] elementPids, PrintWriter writer, int textDepth)
          Speichert Elemente vom Typ element, siehe K2S.DTD.
private  void writeFloatingPointNumber(ConfigurationDoubleDef doubleDef, PrintWriter writer, int textDepth)
          Schreibt eine kommazahl (siehe K2S.DTD) als XML Text in einen Stream.
private  void writeHeaderForDependencies(PrintWriter writer, String initialBlanks, String spacesBetweenTitleHeader)
          Schreibt die Tabellenüberschrift für die Abhängigkeiten eines Bereichs zu anderen Bereichen
private  void writeInfo(SystemObjectInfo info, PrintWriter writer, int textDepth)
          Schreibt das Element "info" in den übergebenen Stream
private  void writeJaNein(String attributeName, boolean value, PrintWriter writer)
          Schreibt folgenden String "attributeName=ja" oder " attributeName=nein" in den übergebenen Stream.
private  void writeObjectReference(ConfigurationObjectReference objectReference, PrintWriter writer, int textDepth)
          Schreibt eine objektReferenz (siehe K2S.DTD) in einen Stream
private  void writeObjectSet(ConfigurationObjectSet objectSet, PrintWriter writer, int textDepth)
          Schreibt ein Element objektMenge (siehe K2S.DTD)
private  void writeRegion(ConfigurationValueRange configurationValueRange, PrintWriter writer, int textDepth)
          Schreibt ein Element vom Typ bereich (siehe K2S.DTD) in eine XML Datei.
private  void writeSet(ConfigurationSet set, PrintWriter writer, int textDepth)
          Speichert eine "menge" (siehe K2S.DTD) in einer XML-Datei
private  void writeSetDefinition(ObjectSetTypeProperties objectSetTypeProperties, PrintWriter writer, int textDepth)
          Schreibt eine mengenDefinition (siehe K2S.DTD) als XML in einen Stream.
private  void writeState(ConfigurationState configurationState, PrintWriter writer, int textDepth)
          Schreibt ein Element vom Typ "zustand" (siehe K2S.DTD) in eine XML Datei.
private  void writeTimeStamp(ConfigurationTimeStamp timeStamp, PrintWriter writer, int textDepth)
          Schreibt einen "zeitstempel" (siehe K2S.dtd) in eine Datei.
private  void writeTypeDefinition(SystemObjectTypeProperties typeProperties, PrintWriter writer, int textDepth)
           
private  String xmlText(String text)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

_area

final ConfigurationAreaProperties _area
Enthält den gesamten Konfigurationsbereich


_emptyString

final String _emptyString
Einrückungszeichen, wird pro Ebene einen _emptyString nach rechts eingerückt. Ein Objekt auf Ebene 2 würde also 2 "_emptyString" eingerückt.

See Also:
Constant Field Values
Constructor Detail

ConfigAreaWriter

public ConfigAreaWriter(ConfigurationAreaProperties area)
Method Detail

writeConfigAreaAsXML

public void writeConfigAreaAsXML(File file)
                          throws IOException
Schreibt die im Konstruktor übergebenen Objekte als XML-Datei, als Grundlage dient die K2S.DTD.

Parameters:
file - Datei, in der die Objekte gespeichert werden sollen. Ist die Datei nicht vorhanden, so wird sie angelegt. Ist sie vorhanden, wird sie gelöscht und neu erzeugt.
Throws:
IOException - Falls es einen Fehler beim erstellen der Versorgungsdatei gab.

writeDependencies

private void writeDependencies(Collection<ConfigurationAreaDependency> areaDependencies,
                               PrintWriter writer,
                               int textDepth)
Schreibt alle Abhängigkeiten des Bereichs zu anderen Bereichen als Kommentar in den übergebenen Writer

Parameters:
areaDependencies - Abhängigkeiten. Wird null übergeben, wird dies als "die Abhängigkeiten wurden noch nicht geprüft" interpretiert und nichts gemacht.
writer - Writer, in den die Abhängigkeiten geschrieben werden
textDepth - Einrückungstiefe

writeHeaderForDependencies

private void writeHeaderForDependencies(PrintWriter writer,
                                        String initialBlanks,
                                        String spacesBetweenTitleHeader)
Schreibt die Tabellenüberschrift für die Abhängigkeiten eines Bereichs zu anderen Bereichen

Parameters:
writer - Objekt, zum schreiben der Daten
initialBlanks - Einrückungstiefe der Überschrift
spacesBetweenTitleHeader - Abstand zwischen den Spaltenüberschriften

writeSetDefinition

private void writeSetDefinition(ObjectSetTypeProperties objectSetTypeProperties,
                                PrintWriter writer,
                                int textDepth)
Schreibt eine mengenDefinition (siehe K2S.DTD) als XML in einen Stream.

Parameters:
objectSetTypeProperties - Objekt, das alle Informationen einer mengenDefinition (siehe K2S.DTD) enthält
writer - Stream, in den das Objekt geschrieben wird
textDepth - Einrückungstiefe des Textes

writeAttributeListDefinition

private void writeAttributeListDefinition(AttributeListProperties attributeListProperties,
                                          PrintWriter writer,
                                          int textDepth)
Schreibt eine attributListenDefinition (siehe K2S.DTD) in einen Stream

Parameters:
attributeListProperties - Objekt, das ein attributListenDefinition darstellt
writer - Stream in den das Objekt geschrieben wird
textDepth - Einrückungstiefe des Textes

createEmptyString

private String createEmptyString(int textDepth)
Erzeugt textDepth viele Tabs in einem String und gibt diesen leeren String zurück.

Parameters:
textDepth - s.o.
Returns:
s.o.

writeTypeDefinition

private void writeTypeDefinition(SystemObjectTypeProperties typeProperties,
                                 PrintWriter writer,
                                 int textDepth)

writeAttributeGroupDefinition

private void writeAttributeGroupDefinition(AttributeGroupProperties attributeGroupProperties,
                                           PrintWriter writer,
                                           int textDepth)
Schreibt eine "attributgruppenDefinition" (siehe K2S.DTD) mit allen Tags in eine Datei

Parameters:
attributeGroupProperties - Objekt, das in der Datei gespeichert werden soll
writer - Objekt, das die Datei darstellt, in die geschrieben werden soll
textDepth - Einrüdckungstiefe

writeAspectDefinition

private void writeAspectDefinition(AspectProperties aspectProperties,
                                   PrintWriter writer,
                                   int textDepth)
Schreibt eine "aspektDefinition" (siehe K2S.DTD) in eine Datei.

Parameters:
aspectProperties - Objekt, das gespeichert werden soll
writer - Stellt die Datei dar
textDepth - Einrückungstiefe

writeAttributeDefinition

private void writeAttributeDefinition(AttributeTypeProperties attributeTypeProperties,
                                      PrintWriter writer,
                                      int textDepth)
Schreibt eine "attributDefinition" (siehe K2S.DTD) in eine Datei.

Parameters:
attributeTypeProperties - Objekt, das gespeichert werden soll
writer - Stellt die Datei dar
textDepth - Einrückungstiefe

writeAttributeAndValueCheckedValue

private void writeAttributeAndValueCheckedValue(String attribute,
                                                String value,
                                                PrintWriter writer)
Schreibt ...attribute="value"... in den übergebenen Stream. Ist attribute oder value null oder "", so wird nichts geschrieben

Parameters:
attribute - s.o.
value - s.o.
writer - Stream, in dem die Daten geschrieben werden

xmlText

private String xmlText(String text)

writeAttributeAndValueUncheckedValue

private void writeAttributeAndValueUncheckedValue(String attribute,
                                                  String value,
                                                  PrintWriter writer)
Schreibt ...attribute="value"... in den übergebenen Stream. Weder attribute noch value werden auf null oder "" geprüft.

Parameters:
attribute - s.o.
value - s.o.
writer - Stream, in dem die Daten geschrieben werden

writeJaNein

private void writeJaNein(String attributeName,
                         boolean value,
                         PrintWriter writer)
Schreibt folgenden String "attributeName=ja" oder " attributeName=nein" in den übergebenen Stream.

Parameters:
attributeName - Name des Attributes, der vor dem = stehen soll
value - Wert, der hinter dem = stehen soll
writer - Steam, in den die Daten eingetragen werden

writeDefault

private void writeDefault(String defaultValue,
                          PrintWriter writer,
                          int textDepth)
Schreibt das Element "default" (siehe K2S.DTD) in einen Stream

Parameters:
defaultValue - Wert, der geschrieben soll
writer - Objekt mit dem die Menge gespeichert werden kann
textDepth - Einrückungstiefe ab dem der Text in der Datei erscheinen soll

writeConfigAreaChanges

private void writeConfigAreaChanges(ConfigurationAreaChangeInformation[] configurationAreaChangeInformations,
                                    PrintWriter writer,
                                    int textDepth)
Schreibt das Element "konfigurationsAenderung". Das Element kann mehrfach geschrieben werden

Parameters:
configurationAreaChangeInformations - Alle Änderungen, die gespeichert werden sollen
writer - Objekt mit dem die Menge gespeichert werden kann
textDepth - Einrückungstiefe ab dem der Text in der Datei erscheinen soll

writeInfo

private void writeInfo(SystemObjectInfo info,
                       PrintWriter writer,
                       int textDepth)
Schreibt das Element "info" in den übergebenen Stream

Parameters:
info - Objekt, das in eine XML-Datei geschrieben werden soll
writer - Objekt mit dem die Menge gespeichert werden kann
textDepth - Einrückungstiefe ab dem der Text in der Datei erscheinen soll

writeSet

private void writeSet(ConfigurationSet set,
                      PrintWriter writer,
                      int textDepth)
Speichert eine "menge" (siehe K2S.DTD) in einer XML-Datei

Parameters:
set - Menge, die gespeichert werden soll
writer - Objekt mit dem die Menge gespeichert werden kann
textDepth - Einrückungstiefe ab dem der Text in der Datei erscheinen soll

writeDefaultParameter

private void writeDefaultParameter(ConfigurationDefaultParameter defaultParameter,
                                   PrintWriter writer,
                                   int textDepth)
Speicher einen Default-Parameter-Datensatz (siehe K2S.DTD) in einer XML-Datei.

Parameters:
defaultParameter - der Default-Parameter-Datensatz
writer - Objekt, mit dem der Datensatz gespeichert werden kann
textDepth - Einrückungstiefe, ab dem der Text in der Datei erscheinen soll

writeAspect

private void writeAspect(ConfigurationAspect configurationAspect,
                         PrintWriter writer,
                         int textDepth)
Speichert einen "aspekt" (siehe K2S.DTD)

Parameters:
configurationAspect - Objekt, das gespeichert werden soll
writer - Stellt die Datei dar
textDepth - Einrückungstiefe

writeAttribute

private void writeAttribute(PlainAttributeProperties attribute,
                            PrintWriter writer,
                            int textDepth)
Speichert einen "attribut" (siehe K2S.DTD)

Parameters:
attribute - Objekt, das gespeichert werden soll
writer - Stellt die Datei dar
textDepth - Einrückungstiefe

writeAttributeList

private void writeAttributeList(ListAttributeProperties attributeList,
                                PrintWriter writer,
                                int textDepth)
Speichert einen "attributliste" (siehe K2S.DTD)

Parameters:
attributeList - Objekt, das gespeichert werden soll
writer - Stellt die Datei dar
textDepth - Einrückungstiefe

writeAttributeType

private void writeAttributeType(Object unknownAttributeType,
                                PrintWriter writer,
                                int textDepth)
Diese Methode schreibt einen Attributtyp. Dieser kann vom Typ zeichenkette, ganzzahl, zeitstempel, objektReferenz oder kommazahl sein.

Parameters:
unknownAttributeType - Objekt, das folgende Typen besitzen kann: ConfigurationString, ConfigurationIntegerDef, ConfigurationTimeStamp, ConfigurationObjectReference, ConfigurationDoubleDef
writer - Stream, in den das Objekt geschrieben wird
textDepth - Einrückgungstiefe des Textes

writeFloatingPointNumber

private void writeFloatingPointNumber(ConfigurationDoubleDef doubleDef,
                                      PrintWriter writer,
                                      int textDepth)
Schreibt eine kommazahl (siehe K2S.DTD) als XML Text in einen Stream.

Parameters:
doubleDef - Objekt, das eine kommazahl(siehe K2S.DTD) darstellt
writer - Stream, in den der Text geschrieben wird
textDepth - Einrückkungstiefe des Textes

writeObjectReference

private void writeObjectReference(ConfigurationObjectReference objectReference,
                                  PrintWriter writer,
                                  int textDepth)
Schreibt eine objektReferenz (siehe K2S.DTD) in einen Stream

Parameters:
objectReference - Objekt, das eine objektReferenz nach K2S.DTD darstellt
writer - Stream, in den das Objekt als XML Text geschrieben wird
textDepth - Einrückungstiefe des Textes

writeTimeStamp

private void writeTimeStamp(ConfigurationTimeStamp timeStamp,
                            PrintWriter writer,
                            int textDepth)
Schreibt einen "zeitstempel" (siehe K2S.dtd) in eine Datei.

Parameters:
timeStamp - Objekt, das gespeichert werden soll
writer - Stellt die Datei dar
textDepth - Einrückungstiefe

writeRegion

private void writeRegion(ConfigurationValueRange configurationValueRange,
                         PrintWriter writer,
                         int textDepth)
Schreibt ein Element vom Typ bereich (siehe K2S.DTD) in eine XML Datei.

Parameters:
configurationValueRange - Objekt, dass das Element bereich darstellt
writer - Stream
textDepth - Einrückungstiefe des Textes

writeState

private void writeState(ConfigurationState configurationState,
                        PrintWriter writer,
                        int textDepth)
Schreibt ein Element vom Typ "zustand" (siehe K2S.DTD) in eine XML Datei.

Parameters:
configurationState - Objekt, dass das Element zustand darstellt
writer - Stream
textDepth - Einrückungstiefe des Textes

writeConfigurationObject

private void writeConfigurationObject(ConfigurationConfigurationObject configurationObject,
                                      PrintWriter writer,
                                      int textDepth)
Schreibt ein konfigurationsObjekt (siehe K2S.DTD) als XML Text in einen Stream.

Parameters:
configurationObject - Objekt, das alle Informationen eines konfigurationsObjekt (siehe K2S.DTD) enthält
writer - Stream, in dem das Objekt als XML Text gespeichert wird
textDepth - Einrückungstiefe des Textes

writeDataset

private void writeDataset(ConfigurationDataset dataset,
                          PrintWriter writer,
                          int textDepth)
Speichert einen datensatz (siehe K2S.DTD) als XML Text. Das Attribut "pid" wird automatisch durch die Kombination "attributgruppe" und "aspekt" ersetzt.

Parameters:
dataset - Objekt, das alle Informationen über einen datensatz (siehe K2S.DTD) enthält
writer - Stream, in dem das Objekt als XML Text gespeichert wird
textDepth - Einrückungstiefe des XML-Strings

writeDatasetElements

private void writeDatasetElements(DatasetElement[] dateAnddataListAndDataField,
                                  PrintWriter writer,
                                  int textDepth)
Speichert den Inhalt eines Datensatzes.

Parameters:
dateAnddataListAndDataField - Inhalt des Datensatzes
writer - Stream, in dem das Objekt als XML Text gespeichert wird
textDepth - Einrückungstiefe des XML-Strings

writeDate

private void writeDate(ConfigurationData data,
                       PrintWriter writer,
                       int textDepth)
Schreibt ein datum (siehe K2S.DTD)

Parameters:
data - Objekt, das alle Informationen eines "datum" enthält
writer - Stream, in dem die Daten gespeichert werden
textDepth - Einrückungstiefe

writeDataList

private void writeDataList(ConfigurationDataList dataList,
                           PrintWriter writer,
                           int textDepth)
Schreibt eine datenliste (siehe K2S.DTD)

Parameters:
dataList - Objekt, das alle Informationen für eine datenliste (siehe K2S.DTD) enthält
writer - Stream, auf dem das Objekt als XML Text gespeichert wird
textDepth - Einrückungstiefe

writeDataField

private void writeDataField(ConfigurationDataField dataField,
                            PrintWriter writer,
                            int textDepth)
Schreibt ein datenfeld (siehe K2S.DTD)

Parameters:
dataField - Objekt, das alle Informationen für ein datenfeld (siehe K2S.DTD) enthält
writer - Stream, auf dem das Objekt als XML Text gespeichert wird
textDepth - Einrückungstiefe

writeObjectSet

private void writeObjectSet(ConfigurationObjectSet objectSet,
                            PrintWriter writer,
                            int textDepth)
Schreibt ein Element objektMenge (siehe K2S.DTD)

Parameters:
objectSet - Objekt, das alle Informationen eines Elements objektMenge (siehe K2S.DTD) enthält
writer - Stream, mit dem das Objekt als XML Text gespeichert wird
textDepth - Einrückungstiefe des Textes

writeElements

private void writeElements(String[] elementPids,
                           PrintWriter writer,
                           int textDepth)
Speichert Elemente vom Typ element, siehe K2S.DTD.

Parameters:
elementPids - Array mit Pids. Jede Pid entspricht einem element (siehe K2S.DTD)
writer - Stream, auf dem die Daten geschrieben werden
textDepth - Einrückungstiefe