Class TimeZoneRule

    • Constructor Summary

      Constructors 
      Constructor Description
      TimeZoneRule​(String name, int rawOffset, int dstSavings)
      Constructs a TimeZoneRule with the name, the GMT offset of its standard time and the amount of daylight saving offset adjustment.
    • Constructor Detail

      • TimeZoneRule

        public TimeZoneRule​(String name,
                            int rawOffset,
                            int dstSavings)
        Constructs a TimeZoneRule with the name, the GMT offset of its standard time and the amount of daylight saving offset adjustment.
        Parameters:
        name - The time zone name.
        rawOffset - The UTC offset of its standard time in milliseconds.
        dstSavings - The amount of daylight saving offset adjustment in milliseconds. If this is a rule for standard time, the value of this argument is 0.
    • Method Detail

      • getName

        public String getName()
        Gets the name of this time zone.
        Returns:
        The name of this time zone.
      • getRawOffset

        public int getRawOffset()
        Gets the standard time offset.
        Returns:
        The standard time offset from UTC in milliseconds.
      • getDSTSavings

        public int getDSTSavings()
        Gets the amount of daylight saving delta time from the standard time.
        Returns:
        The amount of daylight saving offset used by this rule in milliseconds.
      • isEquivalentTo

        public boolean isEquivalentTo​(TimeZoneRule other)
        Returns if this rule represents the same rule and offsets as another. When two TimeZoneRule objects differ only its names, this method returns true.
        Parameters:
        other - The TimeZoneRule object to be compared with.
        Returns:
        true if the other TimeZoneRule is the same as this one.
      • getFirstStart

        public abstract Date getFirstStart​(int prevRawOffset,
                                           int prevDSTSavings)
        Gets the very first time when this rule takes effect.
        Parameters:
        prevRawOffset - The standard time offset from UTC before this rule takes effect in milliseconds.
        prevDSTSavings - The amount of daylight saving offset from the standard time.
        Returns:
        The very first time when this rule takes effect.
      • getFinalStart

        public abstract Date getFinalStart​(int prevRawOffset,
                                           int prevDSTSavings)
        Gets the final time when this rule takes effect.
        Parameters:
        prevRawOffset - The standard time offset from UTC before this rule takes effect in milliseconds.
        prevDSTSavings - The amount of daylight saving offset from the standard time.
        Returns:
        The very last time when this rule takes effect, or null if this rule is applied for future dates infinitely.
      • getNextStart

        public abstract Date getNextStart​(long base,
                                          int prevRawOffset,
                                          int prevDSTSavings,
                                          boolean inclusive)
        Gets the first time when this rule takes effect after the specified time.
        Parameters:
        base - The first time after this time is returned.
        prevRawOffset - The standard time offset from UTC before this rule takes effect in milliseconds.
        prevDSTSavings - The amount of daylight saving offset from the standard time.
        inclusive - Whether the base time is inclusive or not.
        Returns:
        The first time when this rule takes effect after the specified time, or null when this rule never takes effect after the specified time.
      • getPreviousStart

        public abstract Date getPreviousStart​(long base,
                                              int prevRawOffset,
                                              int prevDSTSavings,
                                              boolean inclusive)
        Gets the most recent time when this rule takes effect before the specified time.
        Parameters:
        base - The most recent time when this rule takes effect before this time is returned.
        prevRawOffset - The standard time offset from UTC before this rule takes effect in milliseconds.
        prevDSTSavings - The amount of daylight saving offset from the standard time.
        inclusive - Whether the base time is inclusive or not.
        Returns:
        The most recent time when this rule takes effect before the specified time, or null when this rule never takes effect before the specified time.
      • isTransitionRule

        public abstract boolean isTransitionRule()
        Returns if this TimeZoneRule has one or more start times.
        Returns:
        true if this TimeZoneRule has one or more start times.
      • toString

        public String toString()
        Returns a String representation of this TimeZoneRule object. This method is used for debugging purpose only. The string representation can be changed in future version of ICU without any notice.
        Overrides:
        toString in class Object