T - The type of the value.public interface DynamicValue<T>
A accessor for a single configured value. This can be used to support values that may change during runtime,
reconfigured or final. Hereby external code (could be Tamaya configuration listners or client code), can set a
new value. Depending on the UpdatePolicy the new value is immedeately active or it requires an active commit
by client code. Similarly an instance also can ignore all later changes to the value.
Types of this interface can be used as injection targets in injected beans or as template resiult on configuration templates.
| Modifier and Type | Method and Description |
|---|---|
void |
addListener(PropertyChangeListener l)
Add a listener to be called as weak reference, when this value has been changed.
|
void |
commit()
Commits a new value that has not been committed yet, make it the new value of the instance.
|
T |
commitAndGet()
Performs a commit, if necessary, and returns the current value.
|
T |
evaluateValue()
Evaluates the current value dynamically from the underlying configuration.
|
T |
get()
If a value is present in this
DynamicValue, returns the value,
otherwise throws ConfigException. |
T |
getNewValue()
Access a new value that has not yet been committed.
|
UpdatePolicy |
getUpdatePolicy()
Access the
UpdatePolicy used for updating this value. |
boolean |
isPresent()
Return
true if there is a value present, otherwise false. |
T |
orElse(T other)
Return the value if present, otherwise return
other. |
T |
orElseGet(ConfiguredItemSupplier<? extends T> other)
Return the value if present, otherwise invoke
other and return
the result of that invocation. |
<X extends Throwable> |
orElseThrow(ConfiguredItemSupplier<? extends X> exceptionSupplier)
Return the contained value, if present, otherwise throw an exception
to be created by the provided supplier.
|
void |
removeListener(PropertyChangeListener l)
Removes a listener to be called, when this value has been changed.
|
void |
setUpdatePolicy(UpdatePolicy updatePolicy)
Sets a new
UpdatePolicy. |
boolean |
updateValue()
Method to check for and apply a new value.
|
T commitAndGet()
DynamicValueorg.apache.tamaya.ConfigException - if there is no value presentisPresent()void commit()
UpdatePolicy getUpdatePolicy()
UpdatePolicy used for updating this value.void addListener(PropertyChangeListener l)
l - the listener, not nullvoid removeListener(PropertyChangeListener l)
l - the listner to be removed, not nullT get()
DynamicValue, returns the value,
otherwise throws ConfigException.Optionalorg.apache.tamaya.ConfigException - if there is no value presentisPresent()boolean updateValue()
UpdatePolicy
the value is immediately or deferred visible (or it may even be ignored completely).UpdatePolicy in place.T evaluateValue()
void setUpdatePolicy(UpdatePolicy updatePolicy)
UpdatePolicy.updatePolicy - the new policy, not null.T getNewValue()
boolean isPresent()
true if there is a value present, otherwise false.true if there is a value present, otherwise falseT orElse(T other)
other.other - the value to be returned if there is no value present, may
be nullotherT orElseGet(ConfiguredItemSupplier<? extends T> other)
other and return
the result of that invocation.other - a ConfiguredItemSupplier whose result is returned if no value
is presentother.get()NullPointerException - if value is not present and other is
null<X extends Throwable> T orElseThrow(ConfiguredItemSupplier<? extends X> exceptionSupplier) throws X extends Throwable
IllegalStateException::newX - Type of the exception to be thrownexceptionSupplier - The supplier which will return the exception to
be thrownX - if there is no value presentNullPointerException - if no value is present and
exceptionSupplier is nullX extends ThrowableCopyright © 2014–2016 Apache Software Foundation. All rights reserved.