Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.joda.time
Interface ReadWritablePeriod

All Superinterfaces:
  ReadablePeriod

All Known Implementing Classes:
  MutablePeriod

    public interface ReadWritablePeriod

extends ReadablePeriod

Defines a duration of time that can be queried and modified using datetime fields.

The implementation of this interface will be mutable. It may provide more advanced methods than those in the interface.

Since:
  1.0
Author:
  Brian S O'Neill, Stephen Colebourne

Method Summary
`void` | `add(DurationFieldType field, int value)` Adds to the value of one of the fields.
`void` | `add(int years, int months, int weeks, int days, int hours, int minutes, int seconds, int millis)` Adds to each field of this period.
`void` | `add(ReadableInterval interval)` Adds an interval to this one by dividing the interval into fields and then adding each field in turn.
`void` | `add(ReadablePeriod period)` Adds a period to this one by adding each field in turn.
`void` | `addDays(int days)` Adds the specified days to the number of days in the period.
`void` | `addHours(int hours)` Adds the specified hours to the number of hours in the period.
`void` | `addMillis(int millis)` Adds the specified millis to the number of millis in the period.
`void` | `addMinutes(int minutes)` Adds the specified minutes to the number of minutes in the period.
`void` | `addMonths(int months)` Adds the specified months to the number of months in the period.
`void` | `addSeconds(int seconds)` Adds the specified seconds to the number of seconds in the period.
`void` | `addWeeks(int weeks)` Adds the specified weeks to the number of weeks in the period.
`void` | `addYears(int years)` Adds the specified years to the number of years in the period.
`void` | `clear()` Clears the period, setting all values back to zero.
`void` | `set(DurationFieldType field, int value)` Sets the value of one of the fields.
`void` | `setDays(int days)` Sets the number of days of the period.
`void` | `setHours(int hours)` Sets the number of hours of the period.
`void` | `setMillis(int millis)` Sets the number of millis of the period.
`void` | `setMinutes(int minutes)` Sets the number of minutes of the period.
`void` | `setMonths(int months)` Sets the number of months of the period.
`void` | `setPeriod(int years, int months, int weeks, int days, int hours, int minutes, int seconds, int millis)` Sets all the fields in one go.
`void` | `setPeriod(ReadableInterval interval)` Sets all the fields in one go from an interval dividing the fields using the period type.
`void` | `setPeriod(ReadablePeriod period)` Sets all the fields in one go from another ReadablePeriod.
`void` | `setSeconds(int seconds)` Sets the number of seconds of the period.
`void` | `setValue(int index, int value)` Sets the value of one of the fields by index.
`void` | `setWeeks(int weeks)` Sets the number of weeks of the period.
`void` | `setYears(int years)` Sets the number of years of the period.

Methods inherited from interface org.joda.time.ReadablePeriod
`equals, get, getFieldType, getPeriodType, getValue, hashCode, isSupported, size, toMutablePeriod, toPeriod, toString`

Method Detail

### clear

    void clear()

  Clears the period, setting all values back to zero.

### setValue

    void setValue(int index,
                  int value)

  Sets the value of one of the fields by index.

  Parameters:
    `index` - the field index
    `value` - the new value for the field
  Throws:
    `java.lang.IndexOutOfBoundsException` - if the index is invalid

### set

    void set(DurationFieldType field,
             int value)

  Sets the value of one of the fields.

  The field type specified must be one of those that is supported by the period.

  Parameters:
    `field` - a DurationFieldType instance that is supported by this period
    `value` - the new value for the field
  Throws:
    `java.lang.IllegalArgumentException` - if the field is null or not supported

### setPeriod

    void setPeriod(ReadablePeriod period)

  Sets all the fields in one go from another ReadablePeriod.

  Parameters:
    `period` - the period to set, null means zero length period
  Throws:
    `java.lang.IllegalArgumentException` - if an unsupported field's value is non-zero

### setPeriod

    void setPeriod(int years,
                   int months,
                   int weeks,
                   int days,
                   int hours,
                   int minutes,
                   int seconds,
                   int millis)

  Sets all the fields in one go.

  Parameters:
    `years` - amount of years in this period, which must be zero if unsupported
    `months` - amount of months in this period, which must be zero if unsupported
    `weeks` - amount of weeks in this period, which must be zero if unsupported
    `days` - amount of days in this period, which must be zero if unsupported
    `hours` - amount of hours in this period, which must be zero if unsupported
    `minutes` - amount of minutes in this period, which must be zero if unsupported
    `seconds` - amount of seconds in this period, which must be zero if unsupported
    `millis` - amount of milliseconds in this period, which must be zero if unsupported
  Throws:
    `java.lang.IllegalArgumentException` - if an unsupported field's value is non-zero

### setPeriod

    void setPeriod(ReadableInterval interval)

  Sets all the fields in one go from an interval dividing the fields using the period type.

  Parameters:
    `interval` - the interval to set, null means zero length

### add

    void add(DurationFieldType field,
             int value)

  Adds to the value of one of the fields.

  The field type specified must be one of those that is supported by the period.

  Parameters:
    `field` - a DurationFieldType instance that is supported by this period
    `value` - the value to add to the field
  Throws:
    `java.lang.IllegalArgumentException` - if the field is null or not supported

### add

    void add(ReadablePeriod period)

  Adds a period to this one by adding each field in turn.

  Parameters:
    `period` - the period to add, null means add nothing
  Throws:
    `java.lang.IllegalArgumentException` - if the period being added contains a field not supported by this period
    `java.lang.ArithmeticException` - if the addition exceeds the capacity of the period

### add

    void add(int years,
             int months,
             int weeks,
             int days,
             int hours,
             int minutes,
             int seconds,
             int millis)

  Adds to each field of this period.

  Parameters:
    `years` - amount of years to add to this period, which must be zero if unsupported
    `months` - amount of months to add to this period, which must be zero if unsupported
    `weeks` - amount of weeks to add to this period, which must be zero if unsupported
    `days` - amount of days to add to this period, which must be zero if unsupported
    `hours` - amount of hours to add to this period, which must be zero if unsupported
    `minutes` - amount of minutes to add to this period, which must be zero if unsupported
    `seconds` - amount of seconds to add to this period, which must be zero if unsupported
    `millis` - amount of milliseconds to add to this period, which must be zero if unsupported
  Throws:
    `java.lang.IllegalArgumentException` - if the period being added contains a field not supported by this period
    `java.lang.ArithmeticException` - if the addition exceeds the capacity of the period

### add

    void add(ReadableInterval interval)

  Adds an interval to this one by dividing the interval into fields and then adding each field in turn.

  Parameters:
    `interval` - the interval to add, null means add nothing
  Throws:
    `java.lang.ArithmeticException` - if the addition exceeds the capacity of the period

### setYears

    void setYears(int years)

  Sets the number of years of the period.

  Parameters:
    `years` - the number of years
  Throws:
    `java.lang.IllegalArgumentException` - if field is not supported and the value is non-zero

### addYears

    void addYears(int years)

  Adds the specified years to the number of years in the period.

  Parameters:
    `years` - the number of years
  Throws:
    `java.lang.IllegalArgumentException` - if field is not supported and the value is non-zero
    `java.lang.ArithmeticException` - if the addition exceeds the capacity of the period

### setMonths

    void setMonths(int months)

  Sets the number of months of the period.

  Parameters:
    `months` - the number of months
  Throws:
    `java.lang.IllegalArgumentException` - if field is not supported and the value is non-zero

### addMonths

    void addMonths(int months)

  Adds the specified months to the number of months in the period.

  Parameters:
    `months` - the number of months
  Throws:
    `java.lang.IllegalArgumentException` - if field is not supported and the value is non-zero
    `java.lang.ArithmeticException` - if the addition exceeds the capacity of the period

### setWeeks

    void setWeeks(int weeks)

  Sets the number of weeks of the period.

  Parameters:
    `weeks` - the number of weeks
  Throws:
    `java.lang.IllegalArgumentException` - if field is not supported and the value is non-zero

### addWeeks

    void addWeeks(int weeks)

  Adds the specified weeks to the number of weeks in the period.

  Parameters:
    `weeks` - the number of weeks
  Throws:
    `java.lang.IllegalArgumentException` - if field is not supported and the value is non-zero
    `java.lang.ArithmeticException` - if the addition exceeds the capacity of the period

### setDays

    void setDays(int days)

  Sets the number of days of the period.

  Parameters:
    `days` - the number of days
  Throws:
    `java.lang.IllegalArgumentException` - if field is not supported and the value is non-zero

### addDays

    void addDays(int days)

  Adds the specified days to the number of days in the period.

  Parameters:
    `days` - the number of days
  Throws:
    `java.lang.IllegalArgumentException` - if field is not supported and the value is non-zero
    `java.lang.ArithmeticException` - if the addition exceeds the capacity of the period

### setHours

    void setHours(int hours)

  Sets the number of hours of the period.

  Parameters:
    `hours` - the number of hours
  Throws:
    `java.lang.IllegalArgumentException` - if field is not supported and the value is non-zero

### addHours

    void addHours(int hours)

  Adds the specified hours to the number of hours in the period.

  Parameters:
    `hours` - the number of hours
  Throws:
    `java.lang.IllegalArgumentException` - if field is not supported and the value is non-zero
    `java.lang.ArithmeticException` - if the addition exceeds the capacity of the period

### setMinutes

    void setMinutes(int minutes)

  Sets the number of minutes of the period.

  Parameters:
    `minutes` - the number of minutes
  Throws:
    `java.lang.IllegalArgumentException` - if field is not supported and the value is non-zero

### addMinutes

    void addMinutes(int minutes)

  Adds the specified minutes to the number of minutes in the period.

  Parameters:
    `minutes` - the number of minutes
  Throws:
    `java.lang.IllegalArgumentException` - if field is not supported and the value is non-zero
    `java.lang.ArithmeticException` - if the addition exceeds the capacity of the period

### setSeconds

    void setSeconds(int seconds)

  Sets the number of seconds of the period.

  Parameters:
    `seconds` - the number of seconds
  Throws:
    `java.lang.IllegalArgumentException` - if field is not supported and the value is non-zero

### addSeconds

    void addSeconds(int seconds)

  Adds the specified seconds to the number of seconds in the period.

  Parameters:
    `seconds` - the number of seconds
  Throws:
    `java.lang.IllegalArgumentException` - if field is not supported and the value is non-zero
    `java.lang.ArithmeticException` - if the addition exceeds the capacity of the period

### setMillis

    void setMillis(int millis)

  Sets the number of millis of the period.

  Parameters:
    `millis` - the number of millis
  Throws:
    `java.lang.IllegalArgumentException` - if field is not supported and the value is non-zero

### addMillis

    void addMillis(int millis)

  Adds the specified millis to the number of millis in the period.

  Parameters:
    `millis` - the number of millis
  Throws:
    `java.lang.IllegalArgumentException` - if field is not supported and the value is non-zero
    `java.lang.ArithmeticException` - if the addition exceeds the capacity of the period

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD