Package de.inovat.kex.bast.exporter
Class DataChannelBAStV2_0
- java.lang.Object
-
- de.inovat.kex.bast.exporter.FileDataChannel
-
- de.inovat.kex.bast.exporter.AbstractDataChannelBASt
-
- de.inovat.kex.bast.exporter.DataChannelBAStV2_0
-
- All Implemented Interfaces:
ResultDataChannel
public class DataChannelBAStV2_0 extends AbstractDataChannelBASt
Channel zur Ausgabe der Verkehrsmengendaten in das BASt-Bestandsbandformat Version 2004.
Es wird die Attributegrupe atg.verkehrsDatenLangZeitIntervall mit dem Aspekt asp.messWertErsetzung ausgegeben.
Die Unterstützung für die durch die BASt definierten Prüfzeichen ist der folgenen Tabelle zu entnehmen.
Prüfzeichen Prüfkenn-
zeichenBeschreibung lt. BAST Bemerkung - korrekte, regelmäßige Werte u korrekte, aber unregelmäßige Werte (z.B. wg. Großverantstaltung) wird nicht unterstützt a fehlende Werte (Ausfall) wenn Status == "nicht ermittelbar" d fehlerhafte Werte wenn Güte <> 1 s Schätzwert wegen fehlender Werte wird nicht unterstützt k Schätzwert wegen fehlerhafter Werte wird nicht unterstützt z Zeitumstellung (auf MESZ bzw. auf MEZ)
Die fehlende Stunde bei der Umstellung von der MEZ zur MESZ wird mit 0-Werten und Prükennzeichen z (Zeitumstellung) und der Statuskennung i ausgegeben.
Bei der Umstellung MESZ zur MEZ wird der 2. Datensatz für 02 Uhr ausgegeben.siehe auch:
AbstractDataChannelBASt
-
-
Field Summary
-
Fields inherited from class de.inovat.kex.bast.exporter.AbstractDataChannelBASt
_CountOfFS, _LastHour, _ZaehlStelle, MONATE, TWO_DIGIT_FORMAT
-
-
Constructor Summary
Constructors Constructor Description DataChannelBAStV2_0(SendeBAStStatusDaten bastStatusDaten)
erzeugt einen DataChannel, der mit einer reset-Methode und eventuellAbstractDataChannelBASt.setZaehlstelle(LangZeitZaehlStelle)
initialisiert werden muss.
-
Method Summary
Modifier and Type Method Description protected java.lang.String
constructFilename(LangZeitZaehlStelle zaehlStelle, int year, int month)
gibt den Dateinamen zurück, der sich aus den Daten der Zählstelle, dem Jahr, dem Monat ergibt.protected java.lang.String
constructFilename(LangZeitZaehlStelle zaehlStelle, int year, int month, int day)
gibt den Dateinamen zurück, der sich aus den Daten der Zählstelle, dem Jahr, dem Monat und dem Tag ergibt.protected java.lang.String
counstructFilenameV2004(LangZeitZaehlStelle zaehlStelle, int year, int month)
Die Methode bestimmt den Filenamen für die Ausgabe der Datei auf den FTP-Server.void
processRecord(de.bsvrz.dav.daf.main.Dataset[] rsArrayAtTime, java.util.Calendar calendar)
erzeugt die BASt-Format-Daten und spooled diese.void
setZaehlstelle(LangZeitZaehlStelle zaehlstelle)
setzt die Zählstelle.protected void
writeHeader(java.io.PrintWriter writer)
ermöglicht das Schreiben von Daten am Anfang der Datei.protected void
writeHeaderFTP(java.io.BufferedOutputStream bos)
-
Methods inherited from class de.inovat.kex.bast.exporter.AbstractDataChannelBASt
hasData, reset, reset
-
Methods inherited from class de.inovat.kex.bast.exporter.FileDataChannel
close, deleteLastLine, flush, reset, spool
-
-
-
-
Constructor Detail
-
DataChannelBAStV2_0
public DataChannelBAStV2_0(SendeBAStStatusDaten bastStatusDaten)
erzeugt einen DataChannel, der mit einer reset-Methode und eventuellAbstractDataChannelBASt.setZaehlstelle(LangZeitZaehlStelle)
initialisiert werden muss.- Parameters:
bastStatusDaten
- Statusinformationen.
-
-
Method Detail
-
constructFilename
protected java.lang.String constructFilename(LangZeitZaehlStelle zaehlStelle, int year, int month)
Description copied from class:AbstractDataChannelBASt
gibt den Dateinamen zurück, der sich aus den Daten der Zählstelle, dem Jahr, dem Monat ergibt.- Specified by:
constructFilename
in classAbstractDataChannelBASt
- Parameters:
zaehlStelle
- Zählstelle.year
- Jahr.month
- Monat.- Returns:
- vollständig klassifizierter Dateiname
-
constructFilename
protected java.lang.String constructFilename(LangZeitZaehlStelle zaehlStelle, int year, int month, int day)
Description copied from class:AbstractDataChannelBASt
gibt den Dateinamen zurück, der sich aus den Daten der Zählstelle, dem Jahr, dem Monat und dem Tag ergibt.- Specified by:
constructFilename
in classAbstractDataChannelBASt
- Parameters:
zaehlStelle
- Zählstelle.year
- Jahr.month
- Monat.day
- Tag.- Returns:
- Filename als String.
-
counstructFilenameV2004
protected java.lang.String counstructFilenameV2004(LangZeitZaehlStelle zaehlStelle, int year, int month)
Die Methode bestimmt den Filenamen für die Ausgabe der Datei auf den FTP-Server. Aufbau des Dateinamens:- Bundesland:Kürzel (Position 1-2) --- Bsp: NW
- entweder Bastnummer (letzte 4 Ziffern der Zählstellennummer) (Position 3-6) --- Bsp: 4606
- oder Zählstellennummer (Position 3-10) --- Bsp: 38314606
- Version (optional) (Position 7-8) --- Bsp: _1
- Suffix Jahr(yy) MonatsCode (Position 1-3) --- Bsp: 974
- Parameters:
zaehlStelle
- Zählstelle für den der Dateiname konstruiert wird.year
- Jahr.month
- Monat für den der BASt-Export gestartet wird.- Returns:
- filename für den BASt-Band export 2004.
-
processRecord
public void processRecord(de.bsvrz.dav.daf.main.Dataset[] rsArrayAtTime, java.util.Calendar calendar) throws ChannelException
erzeugt die BASt-Format-Daten und spooled diese.vor dem ersten Aufruf muss, der Channel vollständig initialisiert sein.
- Parameters:
rsArrayAtTime
- ResultData[]calendar
- Intervallbeginn der Datens.- Throws:
ChannelException
- Exception.
-
setZaehlstelle
public void setZaehlstelle(LangZeitZaehlStelle zaehlstelle) throws ChannelException
Description copied from class:AbstractDataChannelBASt
setzt die Zählstelle.
- Specified by:
setZaehlstelle
in classAbstractDataChannelBASt
- Parameters:
zaehlstelle
- LangZeitZaehlStelle- Throws:
ChannelException
- .
-
writeHeader
protected void writeHeader(java.io.PrintWriter writer)
Description copied from class:FileDataChannel
ermöglicht das Schreiben von Daten am Anfang der Datei.- Specified by:
writeHeader
in classFileDataChannel
- Parameters:
writer
- PrintWriter
-
writeHeaderFTP
protected void writeHeaderFTP(java.io.BufferedOutputStream bos) throws java.io.IOException
- Specified by:
writeHeaderFTP
in classFileDataChannel
- Throws:
java.io.IOException
-
-