private class StandardProtocoller.XmlProtocoller extends java.lang.Object implements ExtendedProtocollerInterface
Gibt die Telegramme in einem XML-Format aus.
| Modifier and Type | Field and Description |
|---|---|
private static java.lang.String |
ARGUMENTS_TAG
Konstante für das Tag für Aufrufparameter
|
private static java.lang.String |
ARRAY_TAG
Konstante für das Feld-Tag
|
private static java.lang.String |
ASPECT_TAG
Konstante für das Aspekt-Tag
|
private static java.lang.String |
ATTRIBUTE_TAG
Konstante für das Attribut-Tag
|
private static java.lang.String |
ATTRIBUTEGROUP_TAG
Konstante für das Attributgruppen-Tag
|
private static java.lang.String |
BLOCK_TAG
Konstante für das Block-Tag
|
private static java.lang.String |
BODY_TAG
Konstante für das Körper-Tag
|
private static int |
BUFFER_LENGTH
Standardlänge eines
StringBuffers |
private static java.lang.String |
DELAYED_TAG
Konstante für das Nachgeliefert-Tag
|
private static java.lang.String |
DOCTYPE_INFO
Beschreibt Dokumenttyp
|
private static java.lang.String |
HEAD_TAG
Konstante für das Kopf-Tag
|
private static java.lang.String |
ID_IS_QUOTES
Konstante für den ID-Text.
|
private int |
indentLevel
Einrücktiefe
|
private boolean |
isInBlock
Zustandskennung; wichtig bei Abbruch der Applikation: Während ein Block von Datentelegrammen geschrieben wird, darf die Applikation nicht abgebrochen werden, da die sonst resultierende XML-Datei fehlerhaft aufgebaut würde (
</block> würde fehlen). |
private static java.lang.String |
LENGTH_IS_QUOTES
Konstante für den Längen-Text.
|
private static java.lang.String |
LIST_TAG
Konstante für das Listen-Tag
|
private static java.lang.String |
NAME_IS_QUOTES
Konstante für den Name-Text.
|
private static java.lang.String |
NO_DATA_TAG
Konstante für das Tag, welches als Kennung für keine Daten dient
|
private static java.lang.String |
NO_SOURCE_TAG
Konstante für das Tag, welches als Kennung für keine Quelle dient
|
private static java.lang.String |
OBJECT_TAG
Konstante für das Objekt-Tag
|
private static java.lang.String |
PID_IS_QUOTES
Konstante für den PID-Text.
|
private static java.lang.String |
PROTOCOL_TAG
Konstante für das Protokoll-Tag
|
private static java.lang.String |
RCV_TIME_STAMP_IS_QUOTES
Konstante für den Empfangszeitstempel-Text.
|
private static java.lang.String |
RECORD_TAG
Konstante für das Datensatz-Tag
|
private static java.lang.String |
SIM_VARIANT_TAG
Konstante für das Simulationsvarianten-Tag
|
private static java.lang.String |
START_TIME_STAMP_TAG
Konstante für das Start-Tag
|
private static java.lang.String |
TIME_STAMP_TAG
Konstante für das Zeitstempel-Tag
|
private static java.lang.String |
UNIT_IS_QUOTES
Konstante für den Einheiten-Text.
|
private static java.lang.String |
VALUE_IS
Konstante für den Wert-Text.
|
private static java.lang.String |
VALUE_IS_QUOTES
Konstante für den Wert-Text.
|
private static java.lang.String |
XML_VERSION_INFO
XML-Versions-Info der erzeugten XML-Ausgabe
|
| Constructor and Description |
|---|
XmlProtocoller()
Erzeugt ein neues Objekt der Klasse
XmlProtocoller |
| Modifier and Type | Method and Description |
|---|---|
protected void |
closeTag(java.lang.String tag)
Schließendes XML-Tag ausgeben.
|
protected void |
openAndCloseTag(java.lang.String tag)
XML-Tag schreiben und mit /> abschließen.
|
protected void |
openAndCloseTag(java.lang.String tag,
java.lang.String value)
Mit Attribut versehenes XML-Tag schreiben und mit /> abschließen.
|
protected void |
openAndCloseTag(java.lang.String tag,
java.lang.String value,
java.lang.String comment)
Mit Attribut und Kommentar versehenes XML-Tag schreiben und mit /> abschließen.
|
protected void |
openAndCloseTag(java.lang.String tag,
java.lang.String name,
java.lang.String value,
java.lang.String comment)
Mit besonders benanntem Attribut und Kommentar versehenes XML-Tag schreiben und mit /> abschließen.
|
protected void |
openTag(java.lang.String tag)
Öffnendes XML-Tag ausgeben.
|
protected void |
openTag(java.lang.String tag,
java.lang.String value)
Mit Attribut versehenes öffnendes XML-Tag ausgeben.
|
protected void |
openTag(java.lang.String tag,
java.lang.String value,
java.lang.String length)
Mit Attribut und Länge versehenes öffnendes XML-Tag ausgeben.
|
protected void |
printData(Data data)
Einen Datensatz ausgeben.
|
protected void |
printDataKind(ResultData telegram)
Gibt Informationen über die Art der Daten aus.
|
void |
update(ResultData[] results)
Aktualisierungsmethode, die nach Empfang eines angemeldeten Datensatzes von den Datenverteiler-Applikationsfunktionen aufgerufen wird und die erhaltenen Datensätze im XML-Format ausgibt.
|
void |
writeBlock(ResultData[] results,
long currentTime)
Block, bestehend aus mehreren Telegrammen, ausgeben.
|
protected void |
writeComment(java.lang.String comment)
Zeichenkette als XML-Kommentar ausgeben.
|
void |
writeFooter()
Gibt einen Fuß, bestehend aus schließendem
BODY_TAG und PROTOCOL_TAG, aus |
void |
writeHeader(java.lang.String[] args)
Gibt einen Kopf aus, der Informationen über die XML-Version und den verwendeten Dokumenttyp ausgibt und den Kopf schreibt
|
void |
writeHeader(java.lang.String[] args,
long startTime)
Gibt einen Protokollkopf aus.
|
protected void |
writeTag(java.lang.String tag)
XML-Tag auf Ausgabe-Stream schreiben
|
protected void |
writeTag(java.lang.String tag,
java.lang.String value)
Mit Attribut versehenes XML-Tag auf Ausgabe-Stream schreiben
|
protected void |
writeTag(java.lang.String tag,
java.lang.String value,
java.lang.String counter)
Mit Attribut und Zähler versehenes XML-Tag auf Ausgabe-Stream schreiben
|
protected void |
writeTelegram(ResultData telegram)
Ausgabe eines Datentelegramms.
|
private java.lang.String |
xmlText(java.lang.String text) |
private static final java.lang.String ARGUMENTS_TAG
Konstante für das Tag für Aufrufparameter
private static final java.lang.String ARRAY_TAG
Konstante für das Feld-Tag
private static final java.lang.String ASPECT_TAG
Konstante für das Aspekt-Tag
private static final java.lang.String ATTRIBUTE_TAG
Konstante für das Attribut-Tag
private static final java.lang.String ATTRIBUTEGROUP_TAG
Konstante für das Attributgruppen-Tag
private static final java.lang.String BLOCK_TAG
Konstante für das Block-Tag
private static final java.lang.String BODY_TAG
Konstante für das Körper-Tag
private static final int BUFFER_LENGTH
Standardlänge eines StringBuffers
private static final java.lang.String DELAYED_TAG
Konstante für das Nachgeliefert-Tag
private static final java.lang.String DOCTYPE_INFO
Beschreibt Dokumenttyp
private static final java.lang.String HEAD_TAG
Konstante für das Kopf-Tag
private static final java.lang.String ID_IS_QUOTES
Konstante für den ID-Text.
private static final java.lang.String LENGTH_IS_QUOTES
Konstante für den Längen-Text.
private static final java.lang.String LIST_TAG
Konstante für das Listen-Tag
private static final java.lang.String NAME_IS_QUOTES
Konstante für den Name-Text.
private static final java.lang.String NO_DATA_TAG
Konstante für das Tag, welches als Kennung für keine Daten dient
private static final java.lang.String NO_SOURCE_TAG
Konstante für das Tag, welches als Kennung für keine Quelle dient
private static final java.lang.String OBJECT_TAG
Konstante für das Objekt-Tag
private static final java.lang.String PID_IS_QUOTES
Konstante für den PID-Text.
private static final java.lang.String PROTOCOL_TAG
Konstante für das Protokoll-Tag
private static final java.lang.String RCV_TIME_STAMP_IS_QUOTES
Konstante für den Empfangszeitstempel-Text.
private static final java.lang.String RECORD_TAG
Konstante für das Datensatz-Tag
private static final java.lang.String SIM_VARIANT_TAG
Konstante für das Simulationsvarianten-Tag
private static final java.lang.String START_TIME_STAMP_TAG
Konstante für das Start-Tag
private static final java.lang.String TIME_STAMP_TAG
Konstante für das Zeitstempel-Tag
private static final java.lang.String UNIT_IS_QUOTES
Konstante für den Einheiten-Text.
private static final java.lang.String VALUE_IS
Konstante für den Wert-Text.
private static final java.lang.String VALUE_IS_QUOTES
Konstante für den Wert-Text.
private static final java.lang.String XML_VERSION_INFO
XML-Versions-Info der erzeugten XML-Ausgabe
private int indentLevel
Einrücktiefe
private boolean isInBlock
Zustandskennung; wichtig bei Abbruch der Applikation: Während ein Block von Datentelegrammen geschrieben wird, darf die Applikation nicht abgebrochen werden, da die sonst resultierende XML-Datei fehlerhaft aufgebaut würde (</block> würde fehlen).
public XmlProtocoller()
Erzeugt ein neues Objekt der Klasse XmlProtocoller
public void update(ResultData[] results)
Aktualisierungsmethode, die nach Empfang eines angemeldeten Datensatzes von den Datenverteiler-Applikationsfunktionen aufgerufen wird und die erhaltenen Datensätze im XML-Format ausgibt.
update in interface ClientReceiverInterfaceresults - ResultData[] mit den empfangenen Ergebnisdatensätzen.public void writeFooter()
Gibt einen Fuß, bestehend aus schließendem BODY_TAG und PROTOCOL_TAG, aus
writeFooter in interface ClientProtocollerInterfacepublic void writeHeader(java.lang.String[] args,
long startTime)
ExtendedProtocollerInterfaceGibt einen Protokollkopf aus. Die evtl. im Kopf ausgegebene Startzeit kann durch einen entsprechenden Parameter vorgegben werden.
writeHeader in interface ExtendedProtocollerInterfaceargs - Kommandozeilenargumente, die evtl. im Kopf des Protokolls ausgegeben werden.startTime - Startzeit in Millisekunden seit 1970, die evtl. im Kopf des Protokoll ausgegeben wird.public void writeHeader(java.lang.String[] args)
Gibt einen Kopf aus, der Informationen über die XML-Version und den verwendeten Dokumenttyp ausgibt und den Kopf schreibt
writeHeader in interface ClientProtocollerInterfaceargs - String[] mit den Kommandozeilenparameternprotected void closeTag(java.lang.String tag)
Schließendes XML-Tag ausgeben. Die übergebene Bezeichnung wird mit spitzen Klammern umgeben.
tag - String, der Bezeichnung des Tags enthältprotected void openAndCloseTag(java.lang.String tag)
XML-Tag schreiben und mit /> abschließen.
tag - String, der Bezeichnung des Tags enthältprotected void openAndCloseTag(java.lang.String tag,
java.lang.String value)
Mit Attribut versehenes XML-Tag schreiben und mit /> abschließen.
tag - String, der Bezeichnung des Tags enthältvalue - String mit Wert des Attributsprotected void openAndCloseTag(java.lang.String tag,
java.lang.String value,
java.lang.String comment)
Mit Attribut und Kommentar versehenes XML-Tag schreiben und mit /> abschließen.
tag - String, der Bezeichnung des Tags enthältvalue - String mit Wert des Attributscomment - String mit dem Kommentar, der hinter dem Tag ausgegeben wirdprotected void openAndCloseTag(java.lang.String tag,
java.lang.String name,
java.lang.String value,
java.lang.String comment)
Mit besonders benanntem Attribut und Kommentar versehenes XML-Tag schreiben und mit /> abschließen.
tag - String, der Bezeichnung des Tags enthältname - String mit Name des Attributsvalue - String mit Wert des Attributscomment - String mit dem Kommentar, der hinter dem Tag ausgegeben wirdprotected void openTag(java.lang.String tag)
Öffnendes XML-Tag ausgeben. Die übergebene Bezeichnung wird mit spitzen Klammern umgeben.
tag - String, der Bezeichnung des Tags enthältprotected void openTag(java.lang.String tag,
java.lang.String value)
Mit Attribut versehenes öffnendes XML-Tag ausgeben.
tag - String, der Bezeichnung des Tags enthältvalue - String mit Wert des Attributsprotected void openTag(java.lang.String tag,
java.lang.String value,
java.lang.String length)
Mit Attribut und Länge versehenes öffnendes XML-Tag ausgeben.
tag - String, der Bezeichnung des Tags enthältvalue - String mit Wert des Attributslength - String mit einer Längeninformation, der hinter dem Tag ausgegeben wirdprotected void printData(Data data)
Einen Datensatz ausgeben. Grundsätzlich wird unterschieden zwischen “einfachen” Daten (Eigenschaft isPlain) und im Gegensatz dazu Feldern und Listen. Zur Ausgabe der letzteren beiden ruft sich diese Methode rekursiv wieder auf.
data - Data mit dem Telegrammprotected void printDataKind(ResultData telegram)
Gibt Informationen über die Art der Daten aus. Dies sind im einzelnen Informationen über
telegram - ResultData mit dem Datentelegrammprivate java.lang.String xmlText(java.lang.String text)
public void writeBlock(ResultData[] results, long currentTime)
Block, bestehend aus mehreren Telegrammen, ausgeben.
writeBlock in interface ExtendedProtocollerInterfaceresults - ResultData[] mit den empfangenen ErgebnisdatensätzencurrentTime - long mit der aktuellen Uhrzeit. Der Block wird in der Ausgabe damit versehen.protected void writeComment(java.lang.String comment)
Zeichenkette als XML-Kommentar ausgeben. Der XML-Kommentar wird durch ein Tabulatorzeichen eingeleitet.
comment - String mit dem Kommentarprotected void writeTag(java.lang.String tag)
XML-Tag auf Ausgabe-Stream schreiben
tag - String, der zwischen spitzen Klammern auszugeben istprotected void writeTag(java.lang.String tag,
java.lang.String value)
Mit Attribut versehenes XML-Tag auf Ausgabe-Stream schreiben
tag - String, der zwischen spitzen Klammern auszugeben istvalue - String mit Wert des Attributsprotected void writeTag(java.lang.String tag,
java.lang.String value,
java.lang.String counter)
Mit Attribut und Zähler versehenes XML-Tag auf Ausgabe-Stream schreiben
tag - String, der zwischen spitzen Klammern auszugeben istvalue - String mit Wert des Attributscounter - String mit dem Zählerwertprotected void writeTelegram(ResultData telegram)
Ausgabe eines Datentelegramms. Ein Telegramm besteht aus Informationen über die Art der Daten und über die eigentlichen Daten selbst.
telegram - ResultData mit dem Datentelegramm