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 TypeMethodDescriptionintfinal booleanIndicates 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.longlongfinal inthashCode()Returns a hash code value for this object.longReturns the value of theinternalWeekNumberrecord component.next()Gibt das nachfolgende Verzeichnis zurückprevious()Gibt das zeitlich davorliegende Verzeichnis zurücklongstepsUntil(Week other) Gibt den Abstand zwischen diesem Zeitbereich und dem angegebenen Zeitbereich zurück.final StringtoString()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:
compareToin interfaceComparable<Week>
-
getFirstDay
-
getLastDay
-
getDayRange
Description copied from interface:TimeRangeKonvertiert den Zeitbereich in einen Bereich von Tagen.- Specified by:
getDayRangein interfaceTimeRange<Week>- Returns:
- Zeitbereich asl Epoch Millis
-
getFirstEpochMillis
public long getFirstEpochMillis() -
getLastEpochMillis
public long getLastEpochMillis() -
getEpochMillisRange
Description copied from interface:TimeRangeKonvertiert den Zeitbereich in eine Long-Range, die Epoch-Millisekunden repräsentiert.- Specified by:
getEpochMillisRangein interfaceTimeRange<Week>- Returns:
- Zeitbereich asl Epoch Millis
-
next
Description copied from interface:TimeRangeGibt das nachfolgende Verzeichnis zurück -
previous
Description copied from interface:TimeRangeGibt das zeitlich davorliegende Verzeichnis zurück -
stepsUntil
Description copied from interface:TimeRangeGibt den Abstand zwischen diesem Zeitbereich und dem angegebenen Zeitbereich zurück.Falls
othergleichthisist, wird 0 zurückgegeben.Falls
othergleichthis.next()ist, wird 1 zurückgegeben.Falls
othergleichthis.next().next()ist, wird 2 zurückgegeben.Falls
othergleichthis.previous()ist, wird -1 zurückgegeben.und So weiter, d. h. diese Methode
other - thiswenn man annimmt, dass die Zeitbereiche in Richtung Zukunft laufend durchnummeriert werden.- Specified by:
stepsUntilin 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 theinternalWeekNumberrecord component.- Returns:
- the value of the
internalWeekNumberrecord component
-