java.lang.Object | |
↳ | org.joda.time.base.AbstractInterval |
Known Direct Subclasses |
Known Indirect Subclasses |
AbstractInterval provides the common behaviour for time intervals.
This class should generally not be used directly by API users. The
ReadableInterval
interface should be used when different
kinds of intervals are to be referenced.
AbstractInterval subclasses may be mutable and not thread-safe.
Protected Constructors | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Constructor.
|
Public Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Does this time interval contain the specified millisecond instant.
| |||||||||||
Does this time interval contain the specified instant.
| |||||||||||
Does this time interval contain the specified time interval.
| |||||||||||
Does this time interval contain the current instant.
| |||||||||||
Compares this object with the specified object for equality based
on start and end millis plus the chronology.
| |||||||||||
Gets the end of this time interval, which is exclusive, as a DateTime.
| |||||||||||
Gets the start of this time interval, which is inclusive, as a DateTime.
| |||||||||||
Hashcode compatible with equals method.
| |||||||||||
Is this time interval after the specified millisecond instant.
| |||||||||||
Is this time interval after the specified instant.
| |||||||||||
Is this time interval entirely after the specified interval.
| |||||||||||
Is this time interval after the current instant.
| |||||||||||
Is this time interval before the specified millisecond instant.
| |||||||||||
Is this time interval before the specified instant.
| |||||||||||
Is this time interval entirely before the specified instant.
| |||||||||||
Is this time interval before the current instant.
| |||||||||||
Does this time interval overlap the specified time interval.
| |||||||||||
Gets the duration of this time interval.
| |||||||||||
Gets the duration of this time interval in milliseconds.
| |||||||||||
Get this interval as an immutable
Interval object. | |||||||||||
Get this time interval as a
MutableInterval . | |||||||||||
Converts the duration of the interval to a
Period using the
specified period type. | |||||||||||
Converts the duration of the interval to a
Period using the
All period type. | |||||||||||
Output a string in ISO8601 interval format.
|
Protected Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Validates an interval.
|
[Expand]
Inherited Methods | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
From class
java.lang.Object
| |||||||||||
From interface
org.joda.time.ReadableInterval
|
Constructor.
Does this time interval contain the specified millisecond instant.
Non-zero duration intervals are inclusive of the start instant and exclusive of the end. A zero duration interval cannot contain anything.
millisInstant | the instant to compare to, millisecond instant from 1970-01-01T00:00:00Z |
---|
Does this time interval contain the specified instant.
Non-zero duration intervals are inclusive of the start instant and exclusive of the end. A zero duration interval cannot contain anything.
For example:
[09:00 to 10:00) contains 08:59 = false (before start) [09:00 to 10:00) contains 09:00 = true [09:00 to 10:00) contains 09:59 = true [09:00 to 10:00) contains 10:00 = false (equals end) [09:00 to 10:00) contains 10:01 = false (after end) [14:00 to 14:00) contains 14:00 = false (zero duration contains nothing)Passing in a
null
parameter will have the same effect as
calling containsNow()
.instant | the instant, null means now |
---|
Does this time interval contain the specified time interval.
Non-zero duration intervals are inclusive of the start instant and exclusive of the end. The other interval is contained if this interval wholly contains, starts, finishes or equals it. A zero duration interval cannot contain anything.
When two intervals are compared the result is one of three states:
(a) they abut, (b) there is a gap between them, (c) they overlap.
The contains
method is not related to these states.
In particular, a zero duration interval is contained at the start of
a larger interval, but does not overlap (it abuts instead).
For example:
[09:00 to 10:00) contains [09:00 to 10:00) = true [09:00 to 10:00) contains [09:00 to 09:30) = true [09:00 to 10:00) contains [09:30 to 10:00) = true [09:00 to 10:00) contains [09:15 to 09:45) = true [09:00 to 10:00) contains [09:00 to 09:00) = true [09:00 to 10:00) contains [08:59 to 10:00) = false (otherStart before thisStart) [09:00 to 10:00) contains [09:00 to 10:01) = false (otherEnd after thisEnd) [09:00 to 10:00) contains [10:00 to 10:00) = false (otherStart equals thisEnd) [14:00 to 14:00) contains [14:00 to 14:00) = false (zero duration contains nothing)Passing in a
null
parameter will have the same effect as
calling containsNow()
.interval | the time interval to compare to, null means a zero duration interval now |
---|
Does this time interval contain the current instant.
Non-zero duration intervals are inclusive of the start instant and exclusive of the end. A zero duration interval cannot contain anything.
Compares this object with the specified object for equality based on start and end millis plus the chronology. All ReadableInterval instances are accepted.
To compare the duration of two time intervals, use toDuration()
to get the durations and compare those.
readableInterval | a readable interval to check against |
---|
Gets the end of this time interval, which is exclusive, as a DateTime.
Gets the start of this time interval, which is inclusive, as a DateTime.
Hashcode compatible with equals method.
Is this time interval after the specified millisecond instant.
Intervals are inclusive of the start instant and exclusive of the end.
millisInstant | the instant to compare to, millisecond instant from 1970-01-01T00:00:00Z |
---|
Is this time interval after the specified instant.
Intervals are inclusive of the start instant and exclusive of the end.
instant | the instant to compare to, null means now |
---|
Is this time interval entirely after the specified interval.
Intervals are inclusive of the start instant and exclusive of the end. Only the end time of the specified interval is used in the comparison.
interval | the interval to compare to, null means now |
---|
Is this time interval after the current instant.
Intervals are inclusive of the start instant and exclusive of the end.
Is this time interval before the specified millisecond instant.
Intervals are inclusive of the start instant and exclusive of the end.
millisInstant | the instant to compare to, millisecond instant from 1970-01-01T00:00:00Z |
---|
Is this time interval before the specified instant.
Intervals are inclusive of the start instant and exclusive of the end.
instant | the instant to compare to, null means now |
---|
Is this time interval entirely before the specified instant.
Intervals are inclusive of the start instant and exclusive of the end.
interval | the interval to compare to, null means now |
---|
Is this time interval before the current instant.
Intervals are inclusive of the start instant and exclusive of the end.
Does this time interval overlap the specified time interval.
Intervals are inclusive of the start instant and exclusive of the end. An interval overlaps another if it shares some common part of the datetime continuum.
When two intervals are compared the result is one of three states: (a) they abut, (b) there is a gap between them, (c) they overlap. The abuts state takes precedence over the other two, thus a zero duration interval at the start of a larger interval abuts and does not overlap.
For example:
[09:00 to 10:00) overlaps [08:00 to 08:30) = false (completely before) [09:00 to 10:00) overlaps [08:00 to 09:00) = false (abuts before) [09:00 to 10:00) overlaps [08:00 to 09:30) = true [09:00 to 10:00) overlaps [08:00 to 10:00) = true [09:00 to 10:00) overlaps [08:00 to 11:00) = true [09:00 to 10:00) overlaps [09:00 to 09:00) = false (abuts before) [09:00 to 10:00) overlaps [09:00 to 09:30) = true [09:00 to 10:00) overlaps [09:00 to 10:00) = true [09:00 to 10:00) overlaps [09:00 to 11:00) = true [09:00 to 10:00) overlaps [09:30 to 09:30) = true [09:00 to 10:00) overlaps [09:30 to 10:00) = true [09:00 to 10:00) overlaps [09:30 to 11:00) = true [09:00 to 10:00) overlaps [10:00 to 10:00) = false (abuts after) [09:00 to 10:00) overlaps [10:00 to 11:00) = false (abuts after) [09:00 to 10:00) overlaps [10:30 to 11:00) = false (completely after) [14:00 to 14:00) overlaps [14:00 to 14:00) = false (abuts before and after) [14:00 to 14:00) overlaps [13:00 to 15:00) = true
interval | the time interval to compare to, null means a zero length interval now |
---|
Gets the duration of this time interval.
The duration is equal to the end millis minus the start millis.
ArithmeticException | if the duration exceeds the capacity of a long |
---|
Gets the duration of this time interval in milliseconds.
The duration is equal to the end millis minus the start millis.
ArithmeticException | if the duration exceeds the capacity of a long |
---|
Get this interval as an immutable Interval
object.
Get this time interval as a MutableInterval
.
This will always return a new MutableInterval
with the same interval.
Converts the duration of the interval to a Period
using the
specified period type.
This method should be used to exract the field values describing the difference between the start and end instants.
type | the requested type of the duration, null means AllType |
---|
Converts the duration of the interval to a Period
using the
All period type.
This method should be used to exract the field values describing the difference between the start and end instants.
Validates an interval.
start | the start instant in milliseconds |
---|---|
end | the end instant in milliseconds |
IllegalArgumentException | if the interval is invalid |
---|