Record Class Week
java.lang.Object
java.lang.Record
de.bsvrz.ars.ars.persistence.directories.mgmt.range.Week
- Record Components:
internalWeekNumber
- laufende Wochennummer seit dem 01.01.2017. Die Woche, die am 01.01.2017 startet, bekommt die Nummer 0, die Woche die am 08.01.2017 startet die 1, usw. negative Zahlen sind für Wochen vor 2017 möglich.
- All Implemented Interfaces:
TimeRange<Week>
,Comparable<Week>
Diese Klasse repräsentiert eine beliebige laufende Kalenderwoche. Intern werden die Anzahl Wochen seit der Woche
gezählt, die am 01.01.2017 um 0:00 UTC startet. Dies ist ein Sonntag. Im Sinne dieses Programms starten Wochen immer Sonntags,
da so der Umschaltzeitpunkt von einer Woche auf die nächste auf das "ruhige" Wochenende gelegt werden kann.
Das Jahr 2017 wurde willkürlich gewählt, da es an einem Sonntag beginnt.
UTC und Sonntag sind fest einprogrammiert, um Probleme zu umgehen, die sich durch sich ändernde Systemeinstellungen oder Zeitzoneneinstellungen usw. ergeben könnten.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionint
final boolean
Indicates whether some other object is "equal to" this one.com.google.common.collect.Range<LocalDate>
Konvertiert den Zeitbereich in einen Bereich von Tagen.com.google.common.collect.Range<Long>
Konvertiert den Zeitbereich in eine Long-Range, die Epoch-Millisekunden repräsentiert.long
long
final int
hashCode()
Returns a hash code value for this object.long
Returns the value of theinternalWeekNumber
record component.next()
Gibt das nachfolgende Verzeichnis zurückprevious()
Gibt das zeitlich davorliegende Verzeichnis zurücklong
stepsUntil
(Week other) Gibt den Abstand zwischen diesem Zeitbereich und dem angegebenen Zeitbereich zurück.final String
toString()
Returns a string representation of this record class.
-
Constructor Details
-
Week
public Week(long internalWeekNumber) Erstellt eine neue Woche.- Parameters:
internalWeekNumber
- laufende Wochennummer
-
-
Method Details
-
compareTo
- Specified by:
compareTo
in interfaceComparable<Week>
-
getFirstDay
-
getLastDay
-
getDayRange
Description copied from interface:TimeRange
Konvertiert den Zeitbereich in einen Bereich von Tagen.- Specified by:
getDayRange
in interfaceTimeRange<Week>
- Returns:
- Zeitbereich asl Epoch Millis
-
getFirstEpochMillis
public long getFirstEpochMillis() -
getLastEpochMillis
public long getLastEpochMillis() -
getEpochMillisRange
Description copied from interface:TimeRange
Konvertiert den Zeitbereich in eine Long-Range, die Epoch-Millisekunden repräsentiert.- Specified by:
getEpochMillisRange
in interfaceTimeRange<Week>
- Returns:
- Zeitbereich asl Epoch Millis
-
next
Description copied from interface:TimeRange
Gibt das nachfolgende Verzeichnis zurück -
previous
Description copied from interface:TimeRange
Gibt das zeitlich davorliegende Verzeichnis zurück -
stepsUntil
Description copied from interface:TimeRange
Gibt den Abstand zwischen diesem Zeitbereich und dem angegebenen Zeitbereich zurück.Falls
other
gleichthis
ist, wird 0 zurückgegeben.Falls
other
gleichthis.next()
ist, wird 1 zurückgegeben.Falls
other
gleichthis.next().next()
ist, wird 2 zurückgegeben.Falls
other
gleichthis.previous()
ist, wird -1 zurückgegeben.und So weiter, d. h. diese Methode
other - this
wenn man annimmt, dass die Zeitbereiche in Richtung Zukunft laufend durchnummeriert werden.- Specified by:
stepsUntil
in interfaceTimeRange<Week>
- Parameters:
other
- Anderer Zeitbereich- Returns:
- Anzahl "Schritte" zwischen this und other
-
toString
Returns a string representation of this record class. The representation contains the name of the class, followed by the name and value of each of the record components. -
hashCode
public final int hashCode()Returns a hash code value for this object. The value is derived from the hash code of each of the record components. -
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared with '=='. -
internalWeekNumber
public long internalWeekNumber()Returns the value of theinternalWeekNumber
record component.- Returns:
- the value of the
internalWeekNumber
record component
-