public abstract class AbstractDataChannelBASt extends FileDataChannel
Vor der Bearbeitung der eigentlichen Daten durch die Aufrufe der Methode
ResultDataChannel.processRecord(Dataset[], Calendar)
, muss der
Channel vollständig initialisiert sein.
Modifier and Type | Field and Description |
---|---|
protected int |
_CountOfFS
Anzahl der Fahrstreifen der aktuellen Zählstelle, wird in
setZaehlstelle berechnet.
|
protected int |
_LastHour
die letzte bearbeitete Stunde (um Sommer-/Winterzeitumstellung zu
behandeln).
|
(package private) ChannelLogger |
_Logger |
protected LangZeitZaehlStelle |
_ZaehlStelle
aktuelle Langzeitzählstelle
|
protected static char[] |
MONATE
Array für MonatsCodes 1=Jan .. c=Dez (laut Tabelle der BASt)
|
static DecimalFormat |
THREE_DIGIT_FORMAT
DecimalFormat initialisiert mit "000"
|
static DecimalFormat |
TWO_DIGIT_FORMAT
DecimalFormat initialisiert mit "00"
|
Constructor and Description |
---|
AbstractDataChannelBASt()
erzeugt einen DataChannel, der mit einer reset-Methode und eventuell
setZaehlstelle()
initialisiert werden muss. |
AbstractDataChannelBASt(String fileName)
erzeugt einen DataChannel, der vor dem Aufruf von
processRecord() mit
setZaehlStelle() initialisiert werden muss. |
Modifier and Type | Method and Description |
---|---|
protected abstract String |
constructFilename(LangZeitZaehlStelle zaehlStelle,
String path,
int year,
int monthOrQuartal,
boolean isQuartal)
gibt den Dateinamen zurück, der sich aus den Daten der
Zählstelle, dem Jahr, dem Monat bzw Quartal ergibt.
|
protected abstract String |
constructFilename(LangZeitZaehlStelle zaehlStelle,
String path,
int year,
int startDayOfYear,
int endDayOfYear)
gibt den Dateinamen zurück, der sich aus den Daten der
Zählstelle, dem Jahr, dem Anfangstag und Endtag ergibt.
|
static boolean |
hasData(de.bsvrz.dav.daf.main.Dataset[] rsArray)
Hilfsmethode, die prüft, ob das ResulData[] irgendwelche Data hat.
|
void |
logError(Date date,
String message,
Throwable throwable)
fügt ein Fehler zum Protokoll hinzu.
|
void |
logWarning(Date date,
String message)
fügt eine Warnung zum Protokoll hinzu.
|
void |
reset(LangZeitZaehlStelle zaehlStelle,
String fileName)
ist der Channel geöffnet, werden gepufferte Daten in die Datei
geschrieben und der Channel zur Ausgabe in die angegebenen Datei neu
geöffnet.
|
void |
reset(LangZeitZaehlStelle zaehlStelle,
String path,
int year,
int monthOrQuartal,
boolean isQuartal)
ist der Channel geöffnet, werden gepufferte Daten in die Datei
geschrieben und der Channel zur Ausgabe in die Datei neu geöffnet,
dessen Namen durch die Implementation der Methode
constructFilename aus den Daten der Zählstelle, Jahr, Monat bzw
Quartal bestimmt wird. |
void |
reset(LangZeitZaehlStelle zaehlStelle,
String path,
int year,
int startDayOfYear,
int endDayOfYear)
ist der Channel geöffnet, werden gepufferte Daten in die Datei
geschrieben und der Channel zur Ausgabe in die Datei neu geöffnet,
dessen Namen durch die Implementaiton der Methode
constructFilename aus den Daten der Zählstelle, Jahr, Monat bzw
Quartal bestimmt wird. |
void |
setChannelLogger(ChannelLogger logger) |
abstract void |
setZaehlstelle(LangZeitZaehlStelle zaehlstelle)
setzt die Zählstelle.
|
close, deleteLastLine, flush, reset, spool, writeHeader
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
processRecord
public static DecimalFormat THREE_DIGIT_FORMAT
public static DecimalFormat TWO_DIGIT_FORMAT
protected static final char[] MONATE
ChannelLogger _Logger
protected LangZeitZaehlStelle _ZaehlStelle
protected int _CountOfFS
protected int _LastHour
public AbstractDataChannelBASt()
setZaehlstelle()
initialisiert werden muss.public AbstractDataChannelBASt(String fileName)
processRecord()
mit
setZaehlStelle() initialisiert werden muss.
Ist die Datei vorhanden wird diese überschrieben.
fileName
- Dateiname mit vollständigem Pfadpublic abstract void setZaehlstelle(LangZeitZaehlStelle zaehlstelle) throws ChannelException
setzt die Zählstelle.
zaehlstelle
- LangZeitZaehlStelleChannelException
- Fehler beim Zugriff auf den Channelpublic void reset(LangZeitZaehlStelle zaehlStelle, String path, int year, int monthOrQuartal, boolean isQuartal) throws ChannelException
ist der Channel geöffnet, werden gepufferte Daten in die Datei
geschrieben und der Channel zur Ausgabe in die Datei neu geöffnet,
dessen Namen durch die Implementation der Methode
constructFilename
aus den Daten der Zählstelle, Jahr, Monat bzw
Quartal bestimmt wird.
zaehlStelle
- LangZeitZaehlStelle dessen Daten ausgegeben werden sollen.path
- Pfad in dem die Datei angelegt wird.year
- das Jahr für das die Datei erzeugt werden soll.monthOrQuartal
- der Monat bzw. das Quartal für das die Datei erzeugt
werden soll.isQuartal
- true, wenn monthOrQuartal als Quartal interpretiert werden
soll.ChannelException
- Fehler beim Zugriff auf den Channelpublic void reset(LangZeitZaehlStelle zaehlStelle, String path, int year, int startDayOfYear, int endDayOfYear) throws ChannelException
ist der Channel geöffnet, werden gepufferte Daten in die Datei
geschrieben und der Channel zur Ausgabe in die Datei neu geöffnet,
dessen Namen durch die Implementaiton der Methode
constructFilename
aus den Daten der Zählstelle, Jahr, Monat bzw
Quartal bestimmt wird.
zaehlStelle
- LangZeitZaehlStelle dessen Daten ausgegeben werden sollen.path
- Pfad in dem die Datei angelegt wird.year
- das Jahr für das die Datei erzeugt werden soll.startDayOfYear
- der erste Tag, für den die Daten ausgegeben werden
(1-366).endDayOfYear
- der letzte Tag, für den die Daten ausgegeben werden
(1-366).ChannelException
- Fehler beim Zugriff auf den Kanalpublic void reset(LangZeitZaehlStelle zaehlStelle, String fileName) throws ChannelException
ist der Channel geöffnet, werden gepufferte Daten in die Datei geschrieben und der Channel zur Ausgabe in die angegebenen Datei neu geöffnet.
zaehlStelle
- LangZeitZaehlStelle dessen Daten ausgegeben werden sollen.fileName
- die Datei, in die geschrieben werden soll.ChannelException
- Fehler beim Zugriff auf den Kanalpublic static boolean hasData(de.bsvrz.dav.daf.main.Dataset[] rsArray)
Hilfsmethode, die prüft, ob das ResulData[] irgendwelche Data hat.
Funktion wird verwendet, um zu prüfen, ob ein Totalausfall einer Zählstelle vorliegt.
rsArray
- zu prüfendes ResultData[]protected abstract String constructFilename(LangZeitZaehlStelle zaehlStelle, String path, int year, int startDayOfYear, int endDayOfYear)
protected abstract String constructFilename(LangZeitZaehlStelle zaehlStelle, String path, int year, int monthOrQuartal, boolean isQuartal)
public void setChannelLogger(ChannelLogger logger)
public void logWarning(Date date, String message)
date
- Datemessage
- StringCopyright © 2017 BitCtrl Systems GmbH. All rights reserved.