Class

java.time.zone

ZoneRulesBuilder

Related Doc: package zone

Permalink

class ZoneRulesBuilder extends AnyRef

A mutable builder used to create all the rules for a historic time-zone.

The rules of a time-zone describe how the offset changes over time. The rules are created by building windows on the time-line within which the different rules apply. The rules may be one of two kinds:

Specification for implementors

This class is a mutable builder used to create zone instances. It must only be used from a single thread. The created instances are immutable and thread-safe.

Constructs an instance of the builder that can be used to create zone rules.

The builder is used by adding one or more windows representing portions of the time-line. The standard offset from UTC/Greenwich will be constant within a window, although two adjacent windows can have the same standard offset.

Within each window, there can either be a fixed savings amount or a list of rules.

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ZoneRulesBuilder
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ZoneRulesBuilder()

    Permalink

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. def addRuleToWindow(startYear: Int, endYear: Int, month: Month, dayOfMonthIndicator: Int, dayOfWeek: DayOfWeek, time: LocalTime, timeEndOfDay: Boolean, timeDefinition: TimeDefinition, savingAmountSecs: Int): ZoneRulesBuilder

    Permalink

    Adds a multi-year transition rule to the current window.

    Adds a multi-year transition rule to the current window.

    This adds a rule such that the offset, expressed as a daylight savings amount, changes at the specified date-time for each year in the range.

    startYear

    the start year of the rule, from MIN_VALUE to MAX_VALUE

    endYear

    the end year of the rule, from MIN_VALUE to MAX_VALUE

    month

    the month of the transition, not null

    dayOfMonthIndicator

    the day-of-month of the transition, adjusted by dayOfWeek, from 1 to 31 adjusted later, or -1 to -28 adjusted earlier from the last day of the month

    dayOfWeek

    the day-of-week to adjust to, null if day-of-month should not be adjusted

    time

    the time that the transition occurs as defined by timeDefintion, not null

    timeEndOfDay

    whether midnight is at the end of day

    timeDefinition

    the definition of how to convert local to actual time, not null

    savingAmountSecs

    the amount of saving from the standard offset after the transition in seconds

    returns

    this, for chaining

    Exceptions thrown

    DateTimeException if a date-time field is out of range

    IllegalArgumentException if the end of day midnight flag does not match the time

    IllegalStateException if the window has reached the maximum capacity of 2000 rules

  5. def addRuleToWindow(year: Int, month: Month, dayOfMonthIndicator: Int, time: LocalTime, timeEndOfDay: Boolean, timeDefinition: TimeDefinition, savingAmountSecs: Int): ZoneRulesBuilder

    Permalink

    Adds a single transition rule to the current window.

    Adds a single transition rule to the current window.

    This adds a rule such that the offset, expressed as a daylight savings amount, changes at the specified date-time.

    year

    the year of the transition, from MIN_VALUE to MAX_VALUE

    month

    the month of the transition, not null

    dayOfMonthIndicator

    the day-of-month of the transition, adjusted by dayOfWeek, from 1 to 31 adjusted later, or -1 to -28 adjusted earlier from the last day of the month

    time

    the time that the transition occurs as defined by timeDefintion, not null

    timeEndOfDay

    whether midnight is at the end of day

    timeDefinition

    the definition of how to convert local to actual time, not null

    savingAmountSecs

    the amount of saving from the standard offset after the transition in seconds

    returns

    this, for chaining

    Exceptions thrown

    DateTimeException if a date-time field is out of range

    IllegalStateException if the window has reached the maximum capacity of 2000 rules

  6. def addRuleToWindow(transitionDateTime: LocalDateTime, timeDefinition: TimeDefinition, savingAmountSecs: Int): ZoneRulesBuilder

    Permalink

    Adds a single transition rule to the current window.

    Adds a single transition rule to the current window.

    This adds a rule such that the offset, expressed as a daylight savings amount, changes at the specified date-time.

    transitionDateTime

    the date-time that the transition occurs as defined by timeDefintion, not null

    timeDefinition

    the definition of how to convert local to actual time, not null

    savingAmountSecs

    the amount of saving from the standard offset after the transition in seconds

    returns

    this, for chaining

    Exceptions thrown

    IllegalStateException if the window has reached the maximum capacity of 2000 rules

  7. def addWindow(standardOffset: ZoneOffset, until: LocalDateTime, untilDefinition: TimeDefinition): ZoneRulesBuilder

    Permalink

    Adds a window to the builder that can be used to filter a set of rules.

    Adds a window to the builder that can be used to filter a set of rules.

    This method defines and adds a window to the zone where the standard offset is specified. The window limits the effect of subsequent additions of transition rules or fixed savings. If neither rules or fixed savings are added to the window then the window will default to no savings.

    Each window must be added sequentially, as the start instant of the window is derived from the until instant of the previous window.

    standardOffset

    the standard offset, not null

    until

    the date-time that the offset applies until, not null

    untilDefinition

    the time type for the until date-time, not null

    returns

    this, for chaining

    Exceptions thrown

    IllegalStateException if the window order is invalid

  8. def addWindowForever(standardOffset: ZoneOffset): ZoneRulesBuilder

    Permalink

    Adds a window that applies until the end of time to the builder that can be used to filter a set of rules.

    Adds a window that applies until the end of time to the builder that can be used to filter a set of rules.

    This method defines and adds a window to the zone where the standard offset is specified. The window limits the effect of subsequent additions of transition rules or fixed savings. If neither rules or fixed savings are added to the window then the window will default to no savings.

    This must be added after all other windows. No more windows can be added after this one.

    standardOffset

    the standard offset, not null

    returns

    this, for chaining

    Exceptions thrown

    IllegalStateException if a forever window has already been added

  9. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  10. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  11. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  12. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  13. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  14. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  15. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  16. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  17. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  18. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  19. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  20. def setFixedSavingsToWindow(fixedSavingAmountSecs: Int): ZoneRulesBuilder

    Permalink

    Sets the previously added window to have fixed savings.

    Sets the previously added window to have fixed savings.

    Setting a window to have fixed savings simply means that a single daylight savings amount applies throughout the window. The window could be small, such as a single summer, or large, such as a multi-year daylight savings.

    A window can either have fixed savings or rules but not both.

    fixedSavingAmountSecs

    the amount of saving to use for the whole window, not null

    returns

    this, for chaining

    Exceptions thrown

    IllegalStateException if the window already has rules

  21. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  22. def toRules(zoneId: String): ZoneRules

    Permalink

    Completes the build converting the builder to a set of time-zone rules.

    Completes the build converting the builder to a set of time-zone rules.

    Calling this method alters the state of the builder. Further rules should not be added to this builder once this method is called.

    zoneId

    the time-zone ID, not null

    returns

    the zone rules, not null

    Exceptions thrown

    IllegalStateException if there is only one rule defined as being forever for any given window

  23. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  24. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  25. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  26. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from AnyRef

Inherited from Any

Ungrouped