Class IntervalHelper


  • public abstract class IntervalHelper
    extends java.lang.Object

    Klasse die statische Methoden zum Arbeiten mit Intervallen liefert.

    • Method Summary

      Modifier and Type Method Description
      static int getAnzahlIntervalle​(long from, long to, IntervalType intervalType)
      Berechnung die Anzahl Intervalle zwischen zwei Datum/Zeitangaben auf Basis der durch die Intervallart vorgegebenen Intervalllänge.
      static int getAnzahlIntervalle​(IntervalType intervalType, java.util.Calendar from, java.util.Calendar to)
      Berechnung die Anzahl Intervalle zwischen zwei Datum/Zeitangaben auf Basis der durch die Intervallart vorgegebenen Intervalllänge.
      static long getIntervalBegin​(IntervalType intervalType, long time)
      Liefert den Anfangszeitpunkt des Intervalles, in das der angegebene Zeitpunkt fällt.
      static java.util.Calendar getIntervalBegin​(IntervalType intervalType, java.util.Calendar cal)
      Liefert den Anfangszeitpunkt des Intervalles, in das der angegebene Zeitpunkt fällt.
      static java.util.Date getIntervalBegin​(IntervalType intervalType, java.util.Date date)
      Liefert den Anfangszeitpunkt des Intervalles, in das der angegebene Zeitpunkt fällt.
      static long getNextIntervalBegin​(IntervalType intervalType, long time)
      Berechnung des nächstfolgenden Intervallanfangs auf Basis des angegebenen Datums und der durch die Intervallart vorgegebenen Intervalllänge.
      static long getNextIntervalBegin​(IntervalType intervalType, long time, int cnt)
      Berechnung des nächstfolgenden Intervallanfangs auf Basis des angegebenen Datums und der durch die Intervallart vorgegebenen Intervalllänge sowie anzahl Intervalle.
      static java.util.Calendar getNextIntervalBegin​(IntervalType intervall, java.util.Calendar cal)
      Berechnung des nächstfolgenden Intervallanfangs auf Basis des angegebenen Datums und der durch die Intervallart vorgegebenen Intervalllänge.
      static java.util.Calendar getNextIntervalBegin​(IntervalType intervalType, java.util.Calendar cal, int cnt)
      Berechnung des nächstfolgenden Intervallanfangs auf Basis des angegebenen Datums und der durch die Intervallart vorgegebenen Intervalllänge.
      static boolean isValid​(IntervalType intervalType, long time)
      Bestimmt, ob die übergebene Zeit gültig für den angegebenen IntervallTyp ist.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • isValid

        public static boolean isValid​(IntervalType intervalType,
                                      long time)

        Bestimmt, ob die übergebene Zeit gültig für den angegebenen IntervallTyp ist.

        Parameters:
        intervalType - IntervalType
        time - long
        Returns:
        boolean
      • getIntervalBegin

        public static java.util.Calendar getIntervalBegin​(IntervalType intervalType,
                                                          java.util.Calendar cal)

        Liefert den Anfangszeitpunkt des Intervalles, in das der angegebene Zeitpunkt fällt.

        Parameters:
        intervalType - IntervalType
        cal - Calendar zu rundende Datum/Zeitangabe
        Returns:
        Calendar auf Intervallanfang gerundete Datum/Zeitangabe
      • getIntervalBegin

        public static java.util.Date getIntervalBegin​(IntervalType intervalType,
                                                      java.util.Date date)

        Liefert den Anfangszeitpunkt des Intervalles, in das der angegebene Zeitpunkt fällt.

        Parameters:
        intervalType - IntervalType
        date - Date zu rundendes Datum
        Returns:
        Date auf Intervallanfang gerundete Datum/Zeitangabe
      • getIntervalBegin

        public static long getIntervalBegin​(IntervalType intervalType,
                                            long time)

        Liefert den Anfangszeitpunkt des Intervalles, in das der angegebene Zeitpunkt fällt.

        Parameters:
        intervalType - IntervalType
        time - long zu rundendes Datum als UTC Angabe in ms
        Returns:
        long auf Intervallanfang gerundete Datum/Zeitangabe
      • getNextIntervalBegin

        public static java.util.Calendar getNextIntervalBegin​(IntervalType intervalType,
                                                              java.util.Calendar cal,
                                                              int cnt)

        Berechnung des nächstfolgenden Intervallanfangs auf Basis des angegebenen Datums und der durch die Intervallart vorgegebenen Intervalllänge.

        Zur Berechnung wird die Intervalllänge korrekt dazugerechnet und anschließend auf den Intervallbeginn gerundet. Um bei Intervallart Stunde auch zum Zeitpunkt der Sommerzeitumstellung korrekte Werte zu erhalten wird direkt über die Millisekunden gearbeitet. Ansonsten wird der Wechsel über die Intervallgrenzen mit Hilfe der Kalenderfunktionen korrekt ermittelt: bei Intervallart Calendar.MONTH und Date = 2004-02-01 00°° wird das nächste Intervall korrekt mit 2004-03-01 00°° berechnet.

        Parameters:
        intervalType - IntervalType Intervallart/-länge
        cal - Calendar Ausgangsdatum
        cnt - int Anzahl Intervalle
        Returns:
        Calendar Intervallbeginn des Folgeintervalls
      • getNextIntervalBegin

        public static java.util.Calendar getNextIntervalBegin​(IntervalType intervall,
                                                              java.util.Calendar cal)

        Berechnung des nächstfolgenden Intervallanfangs auf Basis des angegebenen Datums und der durch die Intervallart vorgegebenen Intervalllänge.

        Parameters:
        intervall - Intervallart/-länge
        cal - Ausgangsdatum
        Returns:
        Intervallbeginn des Folgeintervalls
      • getNextIntervalBegin

        public static long getNextIntervalBegin​(IntervalType intervalType,
                                                long time,
                                                int cnt)

        Berechnung des nächstfolgenden Intervallanfangs auf Basis des angegebenen Datums und der durch die Intervallart vorgegebenen Intervalllänge sowie anzahl Intervalle.

        Parameters:
        intervalType - IntervalType Intervallart/-länge
        time - Ausgangsdatum
        cnt - int anzahl Intervalle
        Returns:
        Calendar Intervallbeginn des Folgeintervalls
      • getNextIntervalBegin

        public static long getNextIntervalBegin​(IntervalType intervalType,
                                                long time)

        Berechnung des nächstfolgenden Intervallanfangs auf Basis des angegebenen Datums und der durch die Intervallart vorgegebenen Intervalllänge.

        Parameters:
        time - long Ausgangsdatum
        intervalType - IntervalType Intervallart/-länge
        Returns:
        long Intervallbeginn des Folgeintervalls
      • getAnzahlIntervalle

        public static int getAnzahlIntervalle​(IntervalType intervalType,
                                              java.util.Calendar from,
                                              java.util.Calendar to)

        Berechnung die Anzahl Intervalle zwischen zwei Datum/Zeitangaben auf Basis der durch die Intervallart vorgegebenen Intervalllänge.

        Parameters:
        from - Calendar Ausgangsdatum (von)
        to - Calendar Ausgangsdatum (bis)
        intervalType - IntervalType Intervallart/-länge
        Returns:
        Calendar Intervallbeginn des Folgeintervalls
      • getAnzahlIntervalle

        public static int getAnzahlIntervalle​(long from,
                                              long to,
                                              IntervalType intervalType)

        Berechnung die Anzahl Intervalle zwischen zwei Datum/Zeitangaben auf Basis der durch die Intervallart vorgegebenen Intervalllänge.

        Parameters:
        from - long Ausgangsdatum (von), (Calendar.getTimeInMillis())
        to - long Ausgangsdatum (bis), (Calendar.getTimeInMillis())
        intervalType - IntervalType Intervallart/-länge
        Returns:
        Calendar Intervallbeginn des Folgeintervalls