Package com.macrofocus.common.properties

# Interface MutableProperties<K>

All Superinterfaces:
  `Iterable<K>`, `Properties<K>`

All Known Implementing Classes:
  `EnumOverrideProperties`, `EnumProperties`, `OverrideProperties`, `SimpleProperties`

@JsType public interface MutableProperties<K> extends Properties<K>
Defines the requirements for a collection of properties that can change.

- ## Method Summary

  Modifier and Type
  Method
  Description
  `<T> MutableProperty<T>`
  `addProperty(K name, MutableProperty<T> property)`
  `<T> MutableProperty<T>`
  `createProperty(K name, T value)`
  `MutableProperty`
  `getProperty(K name)`
  `<T> MutableProperty<T>`
  `replaceProperty(K name, MutableProperty<T> property)`
  `void`
  `setValue(K name, Object value)`

  ### Methods inherited from interface java.lang.Iterable

  `forEach, spliterator`

  ### Methods inherited from interface com.macrofocus.common.properties.Properties

  `addPropertiesListener, addWeakPropertiesListener, getValue, iterator, removePropertiesListener`

- ## Method Details

  - ### createProperty

    <T> MutableProperty<T> createProperty(K name, T value)

  - ### addProperty

    <T> MutableProperty<T> addProperty(K name, MutableProperty<T> property)

  - ### replaceProperty

    <T> MutableProperty<T> replaceProperty(K name, MutableProperty<T> property)

  - ### setValue

    void setValue(K name, Object value)

  - ### getProperty

    MutableProperty getProperty(K name)
    Specified by:
      `getProperty` in interface `Properties<K>`