public abstract class KalenderEintrag
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
protected static java.util.regex.Pattern |
ZEITBEREICH_PATTERN
das Pattern eines Zeitbereiches oder einer Verknüpfungsliste.
|
Modifier | Constructor and Description |
---|---|
protected |
KalenderEintrag(java.lang.String name,
java.lang.String definition)
Basiskonstruktor für einen Kalendereintrag.
|
Modifier and Type | Method and Description |
---|---|
protected void |
addFehler(Fehler message)
fügt eine Fehlermeldung für den Eintrag hinzu und macht den Eintrag damit
ungültig.
|
protected void |
addZeitGrenze(ZeitGrenze grenze)
fügt eine Zeitgrenze hinzu.
|
protected abstract boolean |
benutzt(KalenderEintrag referenz)
die Funktion ermittelt, ob der Kalendereintrag den übergebenen Eintrag
benutzt, womit sich die Gültigkeit des Eintrags ändern könnte, wenn sich
der geprüfte EIntrag geändert hat.
|
abstract SystemkalenderGueltigkeit |
berechneZeitlicheGueltigkeit(java.time.LocalDateTime zeitpunkt)
berechnet die zeitliche Gültigkeit des Eintrags zum übergebenen
Zeitpunkt.
|
abstract SystemkalenderGueltigkeit |
berechneZeitlicheGueltigkeitVor(java.time.LocalDateTime zeitpunkt)
berechnet die zeitliche Gültigkeit des Eintrags vor dem übergebenen
Zeitpunkt.
|
protected abstract boolean |
bestimmeGueltigkeit(java.time.LocalDateTime zeitPunkt)
die Funktion bestimmt, ob der Eintrag zum aktuellen Zeitpunkt gültig ist.
|
protected void |
clearFehler(Fehler.FehlerType type) |
abstract java.util.Set<KalenderEintragMitOffset> |
getAufgeloesteVerweise()
ermittelt die Kalendereinträge, die für die Berechnung eines komplexen
Eintrags verwendet werden inklusive der Offsets für die entsprechenden
Verweise.
|
java.lang.String |
getDefinition()
liefert die Zeichenkette mit der initialen Definitionszeichenkette des
Eintrags.
|
abstract EintragsArt |
getEintragsArt()
liefert die Art des Dateneintrags.
|
java.util.Collection<java.lang.String> |
getFehler()
liefert die Liste der Fehler, die beim Parsen des Definitionsstrings
eines Eintrags ermittelt wurden.
|
java.util.List<Intervall> |
getIntervalle(java.time.LocalDateTime startTime,
java.time.LocalDateTime endTime)
liefert die Liste der Intervalle, in denen der Kalendereintrag innerhalb
der übergebenen Zeitspanne gültig ist.
|
java.lang.String |
getName()
liefert den Name des Eintrags.
|
java.util.List<ZeitGrenze> |
getZeitGrenzen()
liefert die Liste der für den Eintrag definierten Zeitgrenzen.
|
SystemkalenderGueltigkeit |
getZeitlicheGueltigkeit(java.time.LocalDateTime zeitpunkt)
ermittelt die zeitliche Gültigkeit des Eintrags zum übergebenen
Zeitpunkt.
|
SystemkalenderGueltigkeit |
getZeitlicheGueltigkeitVor(java.time.LocalDateTime zeitPunkt)
ermittelt die zeitliche Gültigkeit des Eintrags vor dem übergebenen
Zeitpunkt.
|
java.util.List<ZustandsWechsel> |
getZustandsWechsel(java.time.LocalDateTime start,
java.time.LocalDateTime ende)
ermittelt die Liste der Zustandswechsel im übergebenen Zeitraum.
|
boolean |
hasFehler()
ermittelt, ob der Eintrag fehlerhaft eingelesen wurde.
|
boolean |
isGueltig(java.time.LocalDateTime zeitPunkt)
die Funktion bestimmt, ob der Eintrag zum aktuellen Zeitpunkt gültig ist.
|
protected void |
leereCache() |
static KalenderEintrag |
parse(KalenderEintragProvider provider,
java.lang.String name,
java.lang.String definition)
zerlegt den übergebenen Definitionsstring und erzeugt einen
entsprechenden
KalenderEintrag . |
abstract boolean |
recalculateVerweise(KalenderEintragProvider provider)
Berechnet die Gültigkeit eines Kalendereintrags neu, wenn potentiell neue
oder andere Referenzeinträge zur Verfügung stehen.
|
protected void |
setDefinition(java.lang.String definition)
setzt den Definitionstext des Eintrags.
|
protected static final java.util.regex.Pattern ZEITBEREICH_PATTERN
protected KalenderEintrag(java.lang.String name, java.lang.String definition)
name
- Name des Kalendereintragsdefinition
- Definitionsstring des Eintragspublic static KalenderEintrag parse(KalenderEintragProvider provider, java.lang.String name, java.lang.String definition)
KalenderEintrag
.provider
- die Verwaltung aller bekannten Kalendereinträge zur
Verifizierung von Referenzenname
- der Name des Eintragsdefinition
- der Definitionsstringprotected void addFehler(Fehler message)
message
- die Fehlermeldungprotected void addZeitGrenze(ZeitGrenze grenze)
grenze
- die neue Zeitgrenzeprotected abstract boolean benutzt(KalenderEintrag referenz)
referenz
- der potentiell verwendete Eintragpublic abstract SystemkalenderGueltigkeit berechneZeitlicheGueltigkeit(java.time.LocalDateTime zeitpunkt)
getZeitlicheGueltigkeit(LocalDateTime)
aufrufen!zeitpunkt
- der Zeitpunkt für den für Gültigkeit berechnet werden sollpublic abstract SystemkalenderGueltigkeit berechneZeitlicheGueltigkeitVor(java.time.LocalDateTime zeitpunkt)
getZeitlicheGueltigkeitVor(LocalDateTime)
aufrufen!zeitpunkt
- der Zeitpunkt für den für Gültigkeit berechnet werden sollprotected abstract boolean bestimmeGueltigkeit(java.time.LocalDateTime zeitPunkt)
isGueltig(LocalDateTime)
aufrufen!zeitPunkt
- der Zeitpunkt für den die Gültigkeit geprüft werden sollpublic abstract java.util.Set<KalenderEintragMitOffset> getAufgeloesteVerweise()
public java.lang.String getDefinition()
public abstract EintragsArt getEintragsArt()
public java.util.Collection<java.lang.String> getFehler()
public java.util.List<Intervall> getIntervalle(java.time.LocalDateTime startTime, java.time.LocalDateTime endTime)
startTime
- der Beginn des AbfragebereichesendTime
- das Ende des Abfragebereichespublic java.lang.String getName()
public java.util.List<ZeitGrenze> getZeitGrenzen()
public final SystemkalenderGueltigkeit getZeitlicheGueltigkeit(java.time.LocalDateTime zeitpunkt)
zeitpunkt
- der Zeitpunkt für den für Gültigkeit ermittelt werden sollpublic SystemkalenderGueltigkeit getZeitlicheGueltigkeitVor(java.time.LocalDateTime zeitPunkt)
zeitPunkt
- der Zeitpunkt für den für Gültigkeit berechnet werden sollpublic final java.util.List<ZustandsWechsel> getZustandsWechsel(java.time.LocalDateTime start, java.time.LocalDateTime ende)
start
- der Anfangszeitpunkt des Abfragezeitraumsende
- der Endzeitpunkt des Abfragezeitraumspublic boolean hasFehler()
public final boolean isGueltig(java.time.LocalDateTime zeitPunkt)
zeitPunkt
- der Zeitpunkt für den die Gültigkeit geprüft werden sollprotected void setDefinition(java.lang.String definition)
definition
- der Textprotected void clearFehler(Fehler.FehlerType type)
public abstract boolean recalculateVerweise(KalenderEintragProvider provider)
provider
- der Provider mit den zur Verfügung stehenden Einträgenprotected final void leereCache()