Interface ReadWritableInstant
-
- All Superinterfaces:
java.lang.Comparable<ReadableInstant>
,ReadableInstant
- All Known Subinterfaces:
ReadWritableDateTime
- All Known Implementing Classes:
MutableDateTime
public interface ReadWritableInstant extends ReadableInstant
Defines an instant in the datetime continuum that can be queried and modified. This interface expresses the datetime as milliseconds from 1970-01-01T00:00:00Z.The implementation of this interface will be mutable. It may provide more advanced methods than those in the interface.
- Since:
- 1.0
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
add(long duration)
Adds a millisecond duration to this instant.void
add(DurationFieldType type, int amount)
Adds to the instant specifying the duration and multiple to add.void
add(ReadableDuration duration)
Adds a duration to this instant.void
add(ReadableDuration duration, int scalar)
Adds a duration to this instant specifying how many times to add.void
add(ReadablePeriod period)
Adds a period to this instant.void
add(ReadablePeriod period, int scalar)
Adds a period to this instant specifying how many times to add.void
set(DateTimeFieldType type, int value)
Sets the value of one of the fields of the instant, such as hourOfDay.void
setChronology(Chronology chronology)
Sets the chronology of the datetime, which has no effect if not applicable.void
setMillis(long instant)
Sets the value as the number of milliseconds since the epoch, 1970-01-01T00:00:00Z.void
setMillis(ReadableInstant instant)
Sets the millisecond instant of this instant from another.void
setZone(DateTimeZone zone)
Sets the time zone of the datetime, changing the chronology and field values.void
setZoneRetainFields(DateTimeZone zone)
Sets the time zone of the datetime, changing the chronology and millisecond.-
Methods inherited from interface org.joda.time.ReadableInstant
equals, get, getChronology, getMillis, getZone, hashCode, isAfter, isBefore, isEqual, isSupported, toInstant, toString
-
-
-
-
Method Detail
-
setMillis
void setMillis(long instant)
Sets the value as the number of milliseconds since the epoch, 1970-01-01T00:00:00Z.- Parameters:
instant
- the milliseconds since 1970-01-01T00:00:00Z to set the instant to- Throws:
java.lang.IllegalArgumentException
- if the value is invalid
-
setMillis
void setMillis(ReadableInstant instant)
Sets the millisecond instant of this instant from another.This method does not change the chronology of this instant, just the millisecond instant.
- Parameters:
instant
- the instant to use, null means now
-
setChronology
void setChronology(Chronology chronology)
Sets the chronology of the datetime, which has no effect if not applicable.- Parameters:
chronology
- the chronology to use, null means ISOChronology in default zone- Throws:
java.lang.IllegalArgumentException
- if the value is invalid
-
setZone
void setZone(DateTimeZone zone)
Sets the time zone of the datetime, changing the chronology and field values.Changing the zone using this method retains the millisecond instant. The millisecond instant is adjusted in the new zone to compensate. chronology. Setting the time zone does not affect the millisecond value of this instant.
If the chronology already has this time zone, no change occurs.
- Parameters:
zone
- the time zone to use, null means default zone- See Also:
setZoneRetainFields(org.joda.time.DateTimeZone)
-
setZoneRetainFields
void setZoneRetainFields(DateTimeZone zone)
Sets the time zone of the datetime, changing the chronology and millisecond.Changing the zone using this method retains the field values. The millisecond instant is adjusted in the new zone to compensate.
If the chronology already has this time zone, no change occurs.
- Parameters:
zone
- the time zone to use, null means default zone- See Also:
setZone(org.joda.time.DateTimeZone)
-
add
void add(long duration)
Adds a millisecond duration to this instant.This will typically change the value of ost fields.
- Parameters:
duration
- the millis to add- Throws:
java.lang.IllegalArgumentException
- if the value is invalid
-
add
void add(ReadableDuration duration)
Adds a duration to this instant.This will typically change the value of most fields.
- Parameters:
duration
- the duration to add, null means add zero- Throws:
java.lang.ArithmeticException
- if the result exceeds the capacity of the instant
-
add
void add(ReadableDuration duration, int scalar)
Adds a duration to this instant specifying how many times to add.This will typically change the value of most fields.
- Parameters:
duration
- the duration to add, null means add zeroscalar
- direction and amount to add, which may be negative- Throws:
java.lang.ArithmeticException
- if the result exceeds the capacity of the instant
-
add
void add(ReadablePeriod period)
Adds a period to this instant.This will typically change the value of most fields.
- Parameters:
period
- the period to add, null means add zero- Throws:
java.lang.ArithmeticException
- if the result exceeds the capacity of the instant
-
add
void add(ReadablePeriod period, int scalar)
Adds a period to this instant specifying how many times to add.This will typically change the value of most fields.
- Parameters:
period
- the period to add, null means add zeroscalar
- direction and amount to add, which may be negative- Throws:
java.lang.ArithmeticException
- if the result exceeds the capacity of the instant
-
set
void set(DateTimeFieldType type, int value)
Sets the value of one of the fields of the instant, such as hourOfDay.- Parameters:
type
- a field type, usually obtained from DateTimeFieldType, null ignoredvalue
- the value to set the field to- Throws:
java.lang.IllegalArgumentException
- if the value is invalid
-
add
void add(DurationFieldType type, int amount)
Adds to the instant specifying the duration and multiple to add.- Parameters:
type
- a field type, usually obtained from DateTimeFieldType, null ignoredamount
- the amount to add of this duration- Throws:
java.lang.ArithmeticException
- if the result exceeds the capacity of the instant
-
-