public interface

ReadWritableInstant

implements ReadableInstant
org.joda.time.ReadWritableInstant
Known Indirect Subclasses

Class Overview

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.

Summary

Public Methods
abstract void add(ReadableDuration duration, int scalar)
Adds a duration to this instant specifying how many times to add.
abstract void add(long duration)
Adds a millisecond duration to this instant.
abstract void add(ReadablePeriod period)
Adds a period to this instant.
abstract void add(ReadableDuration duration)
Adds a duration to this instant.
abstract void add(ReadablePeriod period, int scalar)
Adds a period to this instant specifying how many times to add.
abstract void add(DurationFieldType type, int amount)
Adds to the instant specifying the duration and multiple to add.
abstract void set(DateTimeFieldType type, int value)
Sets the value of one of the fields of the instant, such as hourOfDay.
abstract void setChronology(Chronology chronology)
Sets the chronology of the datetime, which has no effect if not applicable.
abstract void setMillis(long instant)
Sets the value as the number of milliseconds since the epoch, 1970-01-01T00:00:00Z.
abstract void setMillis(ReadableInstant instant)
Sets the millisecond instant of this instant from another.
abstract void setZone(DateTimeZone zone)
Sets the time zone of the datetime, changing the chronology and field values.
abstract void setZoneRetainFields(DateTimeZone zone)
Sets the time zone of the datetime, changing the chronology and millisecond.
[Expand]
Inherited Methods
From interface java.lang.Comparable
From interface org.joda.time.ReadableInstant

Public Methods

public abstract 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 zero
scalar direction and amount to add, which may be negative
Throws
ArithmeticException if the result exceeds the capacity of the instant

public abstract 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
IllegalArgumentException if the value is invalid

public abstract 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
ArithmeticException if the result exceeds the capacity of the instant

public abstract 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
ArithmeticException if the result exceeds the capacity of the instant

public abstract 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 zero
scalar direction and amount to add, which may be negative
Throws
ArithmeticException if the result exceeds the capacity of the instant

public abstract 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 ignored
amount the amount to add of this duration
Throws
ArithmeticException if the result exceeds the capacity of the instant

public abstract 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 ignored
value the value to set the field to
Throws
IllegalArgumentException if the value is invalid

public abstract 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
IllegalArgumentException if the value is invalid

public abstract 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
IllegalArgumentException if the value is invalid

public abstract 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

public abstract 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

public abstract 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