Class BaseInterval

    • Constructor Detail

      • BaseInterval

        protected BaseInterval​(long startInstant,
                               long endInstant,
                               Chronology chrono)
        Constructs an interval from a start and end instant.
        Parameters:
        startInstant - start of this interval, as milliseconds from 1970-01-01T00:00:00Z.
        endInstant - end of this interval, as milliseconds from 1970-01-01T00:00:00Z.
        chrono - the chronology to use, null is ISO default
        Throws:
        IllegalArgumentException - if the end is before the start
      • BaseInterval

        protected BaseInterval​(ReadableInstant start,
                               ReadableInstant end)
        Constructs an interval from a start and end instant.
        Parameters:
        start - start of this interval, null means now
        end - end of this interval, null means now
        Throws:
        IllegalArgumentException - if the end is before the start
      • BaseInterval

        protected BaseInterval​(ReadableInstant start,
                               ReadableDuration duration)
        Constructs an interval from a start instant and a duration.
        Parameters:
        start - start of this interval, null means now
        duration - the duration of this interval, null means zero length
        Throws:
        IllegalArgumentException - if the end is before the start
        ArithmeticException - if the end instant exceeds the capacity of a long
      • BaseInterval

        protected BaseInterval​(ReadableDuration duration,
                               ReadableInstant end)
        Constructs an interval from a millisecond duration and an end instant.
        Parameters:
        duration - the duration of this interval, null means zero length
        end - end of this interval, null means now
        Throws:
        IllegalArgumentException - if the end is before the start
        ArithmeticException - if the start instant exceeds the capacity of a long
      • BaseInterval

        protected BaseInterval​(ReadableInstant start,
                               ReadablePeriod period)
        Constructs an interval from a start instant and a time period.

        When forming the interval, the chronology from the instant is used if present, otherwise the chronology of the period is used.

        Parameters:
        start - start of this interval, null means now
        period - the period of this interval, null means zero length
        Throws:
        IllegalArgumentException - if the end is before the start
        ArithmeticException - if the end instant exceeds the capacity of a long
      • BaseInterval

        protected BaseInterval​(ReadablePeriod period,
                               ReadableInstant end)
        Constructs an interval from a time period and an end instant.

        When forming the interval, the chronology from the instant is used if present, otherwise the chronology of the period is used.

        Parameters:
        period - the period of this interval, null means zero length
        end - end of this interval, null means now
        Throws:
        IllegalArgumentException - if the end is before the start
        ArithmeticException - if the start instant exceeds the capacity of a long
      • BaseInterval

        protected BaseInterval​(Object interval,
                               Chronology chrono)
        Constructs a time interval converting or copying from another object that describes an interval.
        Parameters:
        interval - the time interval to copy
        chrono - the chronology to use, null means let converter decide
        Throws:
        IllegalArgumentException - if the interval is invalid
    • Method Detail

      • getStartMillis

        public long getStartMillis()
        Gets the start of this time interval which is inclusive.
        Specified by:
        getStartMillis in interface ReadableInterval
        Returns:
        the start of the time interval, millisecond instant from 1970-01-01T00:00:00Z
      • getEndMillis

        public long getEndMillis()
        Gets the end of this time interval which is exclusive.
        Specified by:
        getEndMillis in interface ReadableInterval
        Returns:
        the end of the time interval, millisecond instant from 1970-01-01T00:00:00Z
      • setInterval

        protected void setInterval​(long startInstant,
                                   long endInstant,
                                   Chronology chrono)
        Sets this interval from two millisecond instants and a chronology.
        Parameters:
        startInstant - the start of the time interval
        endInstant - the start of the time interval
        chrono - the chronology, not null
        Throws:
        IllegalArgumentException - if the end is before the start