Class used to retrieve a Tunable with id id
of type T
.
A TunableMap that can be updated via put
and clear
operations.
A TunableMap that can be updated via put
and clear
operations. Putting
a value for a given id
will update the current value for the id
, or create
a new Tunable if it does not exist. The type of the new value must match that of the
existing value, or a ClassCastException will be thrown.
apply
returns a Tunable for a given TunableMap.Key and creates it if does not already
exist. Updates to the TunableMap update the underlying Tunables; for example, a
Tunable returned from TunableMap.apply
will produce an updated value when
Tunable.apply()
is called if the TunableMap is updated. clear
clears the
underlying Tunable for a given TunableMap.Key but does not remove it from the map; this
has the effect that calling Tunable.apply()
on a previously retrieved Tunable produces
None
. This behavior is desirable because a Tunable's value may be cleared and re-set,
and we want Tunable applications to see those updates.
A TunableMap that forwards all calls to underlying
.
Get the component TunableMaps that make up tunableMap
.
Get the component TunableMaps that make up tunableMap
. For Composite TunableMaps,
this returns a Seq of the components. Otherwise, it returns a Seq of tunableMap
.
Used for testing.
Create a thread-safe map of Tunable.Mutables with the given source
Create a TunableMap out of the given TunableMaps.
Create a TunableMap out of the given TunableMaps.
If tunableMaps
is empty, NullTunableMap will be returned.