public abstract class DataChannelBAStV1_X extends AbstractDataChannelBASt
Channel zur Ausgabe von Daten in das BASt-Bestandsbandformat
Es ist zubeachten, dass die Anzahl der Geschwindigkeitsklassen nicht ohne weiteres zu bestimmen ist. Es wird davon ausgegangen, dass es eine Festlegung über die Geschwindigkeitsklassifizierung gibt, die sich nicht ändert.
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üfkennzeichen | Bemerkung |
|---|---|
| korrekte, regelmäßige Werte | |
| ' | alle anderen Werte |
Bei der Umstellung MESZ zur MEZ wird der 2. Datensatz für 02 Uhr ausgegeben.
siehe auch:
AbstractDataChannelBASt
| Modifier and Type | Class and Description |
|---|---|
protected static interface |
DataChannelBAStV1_X.ValueExtractor |
| Modifier and Type | Field and Description |
|---|---|
protected LangZeitZaehlStelle |
_ZaehlStelle |
protected Calendar |
chCalendar |
protected int |
countOfGeschwKlassen |
static int |
G_SATZ
Konstante zum Erzeugen ein Channels für die den G-Satz
|
protected boolean |
hasNoData |
static int |
K_SATZ
Konstante zum Erzeugen ein Channels für die den K-Satz
|
static int |
M_SATZ
Konstante zum Erzeugen ein Channels für die den M-Satz
|
static int |
V_SATZ
Konstante zum Erzeugen ein Channels für die den V-Satz
|
_CountOfFS, _LastHour, MONATE, THREE_DIGIT_FORMAT, TWO_DIGIT_FORMAT| Constructor and Description |
|---|
DataChannelBAStV1_X()
erzeugt einen DataChannel, der mit einer reset-Methode und eventuell
AbstractDataChannelBASt.setZaehlstelle(LangZeitZaehlStelle)
initialisiert werden muss. |
DataChannelBAStV1_X(int satzArt)
erzeugt einen DataChannel, der mit einer reset-Methode und eventuell
setZaehlstelle() initialisiert werden muss zur Ausgabe der angegebenen
SatzArt. |
DataChannelBAStV1_X(String fileName)
erzeugt einen DataChannel, der vor dem Aufruf von
ResultDataChannel.processRecord(Dataset[], Calendar)
mit setZaehlstelle(LangZeitZaehlStelle) initialisiert werden
muss. |
| Modifier and Type | Method and Description |
|---|---|
protected abstract String |
calculateLineHeader()
erzeugt den für eine Zählstelle konstanten Zeilenanfang.
|
protected 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 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.
|
protected StringBuffer |
extractDataGSatz(AtgVerkehrsdatenLangZeitIntervall[] atgLZArray) |
protected StringBuffer |
extractDataMSatz(AtgVerkehrsdatenLangZeitIntervall[] atgLZArray) |
protected StringBuffer |
extractDataVSatz(AtgVerkehrsdatenLangZeitIntervall[] atgLZArray) |
int |
getCountOfGeschwKlassen()
gint die Anzahl der Geschwindigkeitsklassen zurück.
|
protected DataChannelBAStV1_X.ValueExtractor |
getValueExtractor8plus1() |
void |
processRecord(de.bsvrz.dav.daf.main.Dataset[] rsArrayAtTime,
Calendar calendar)
erzeugt die BASt-Format-Daten und spooled diese.
|
void |
setCountOfGeschwKlassen(int count)
setzt die Anzahl der Geschwindigkeitsklassen.
|
void |
setEndLineWithSemikolon(boolean endLineWithSemikolon)
bestimmt, ob am Ende einer Zeile ein Semikolon gesetzt werden soll
(Standard == nein).
|
void |
setExportGSatz(boolean exportGSatz)
legt fest, ob der G-Satz geschrieben werden soll
(standardmäßig werden alle geschrieben).
|
void |
setExportKSatz(boolean exportKSatz)
legt fest, ob der K-Satz geschrieben werden soll
(standardmäßig werden alle geschrieben).
|
void |
setExportMSatz(boolean exportMSatz)
legt fest, ob der M-Satz geschrieben werden soll
(standardmäßig werden alle geschrieben).
|
void |
setExportVSatz(boolean exportVSatz)
legt fest, ob der V-Satz geschrieben werden soll
(standardmäßig werden alle geschrieben).
|
void |
setFirstHourOfDay(int firstHour)
setzt die Ziffer, mit der die Stuhndenzälung beginnt ( 0 oder 1; 1
== Standard).
|
void |
setKlassifizierungsgruppeBAST(String sKlassifizierungsgruppeBAST)
setzt die KlassifizierungsgruppeBASt ("8 plus 1" | "5 plus 1" | "2" | "1"
).
|
void |
setZaehlstelle(LangZeitZaehlStelle zaehlstelle)
setzt die Zählstelle.
|
protected void |
writeHeader(PrintWriter writer)
ermöglicht das Schreiben von Daten am Anfang der Datei.
|
hasData, logError, logWarning, reset, reset, reset, setChannelLoggerclose, deleteLastLine, flush, reset, spoolpublic static final int G_SATZ
public static final int K_SATZ
public static final int V_SATZ
public static final int M_SATZ
protected LangZeitZaehlStelle _ZaehlStelle
protected Calendar chCalendar
protected boolean hasNoData
protected int countOfGeschwKlassen
public DataChannelBAStV1_X()
AbstractDataChannelBASt.setZaehlstelle(LangZeitZaehlStelle)
initialisiert werden muss.public DataChannelBAStV1_X(int satzArt)
setZaehlstelle() initialisiert werden muss zur Ausgabe der angegebenen
SatzArt.public DataChannelBAStV1_X(String fileName) throws ChannelException
ResultDataChannel.processRecord(Dataset[], Calendar)
mit setZaehlstelle(LangZeitZaehlStelle) initialisiert werden
muss.
Ist die Datei vorhanden wird diese überschrieben.
fileName - Dateiname mit vollständigem PfadChannelExceptionpublic void setCountOfGeschwKlassen(int count)
count - intpublic int getCountOfGeschwKlassen()
public void setExportMSatz(boolean exportMSatz)
exportMSatz - booleanpublic void setExportVSatz(boolean exportVSatz)
exportVSatz - booleanpublic void setExportGSatz(boolean exportGSatz)
exportGSatz - booleanpublic void setExportKSatz(boolean exportKSatz)
exportKSatz - booleanpublic void setFirstHourOfDay(int firstHour)
firstHour - 0 oder 1public void setEndLineWithSemikolon(boolean endLineWithSemikolon)
endLineWithSemikolon - true, wenn am Zeilenende ein Semikolon gesetzt werden soll.public void processRecord(de.bsvrz.dav.daf.main.Dataset[] rsArrayAtTime,
Calendar calendar)
throws ChannelException
vor dem ersten Aufruf muss, der Channel vollstä initialisiert sein.
rsArrayAtTime - ResultData[]calendar - Intervallbeginn der DatensätzeChannelExceptionprotected abstract String calculateLineHeader()
public void setZaehlstelle(LangZeitZaehlStelle zaehlstelle) throws ChannelException
AbstractDataChannelBAStsetzt die Zählstelle.
setZaehlstelle in class AbstractDataChannelBAStzaehlstelle - LangZeitZaehlStelleChannelException - Fehler beim Zugriff auf den Channelprotected DataChannelBAStV1_X.ValueExtractor getValueExtractor8plus1()
public void setKlassifizierungsgruppeBAST(String sKlassifizierungsgruppeBAST) throws ChannelException
muss nach setZaehlstelle(LangZeitZaehlStelle) erfolgen,
ansonsten wird die Klassifizierungsgruppe aus der Konfiguration
übernommen.
sKlassifizierungsgruppeBAST - StringChannelExceptionprotected String constructFilename(LangZeitZaehlStelle zaehlStelle, String path, int year, int startDayOfYear, int endDayOfYear)
AbstractDataChannelBAStconstructFilename in class AbstractDataChannelBAStprotected String constructFilename(LangZeitZaehlStelle zaehlStelle, String path, int year, int monthOrQuartal, boolean isQuartal)
AbstractDataChannelBAStconstructFilename in class AbstractDataChannelBAStprotected void writeHeader(PrintWriter writer)
FileDataChannelwriteHeader in class FileDataChannelwriter - PrintWriterprotected StringBuffer extractDataGSatz(AtgVerkehrsdatenLangZeitIntervall[] atgLZArray)
protected StringBuffer extractDataMSatz(AtgVerkehrsdatenLangZeitIntervall[] atgLZArray) throws ChannelException
ChannelExceptionprotected StringBuffer extractDataVSatz(AtgVerkehrsdatenLangZeitIntervall[] atgLZArray)
Copyright © 2017 BitCtrl Systems GmbH. All rights reserved.