public class LazyContainerAndKeyValue<TContainer,TValue> extends java.lang.Object implements ConfigValueAtContainer<TContainer,TValue>
Constructor and Description |
---|
LazyContainerAndKeyValue(ConfigKey<TValue> key,
TContainer container,
<any> lookupResolutionFunction,
<any> conversionFunction) |
Modifier and Type | Method and Description |
---|---|
Maybe<TValue> |
asMaybe()
Absent if no value can be found, typically meaning no default value, but in raw value lookups it may ignore default values.
|
TValue |
get()
Returns the value for this key, or null.
|
TContainer |
getContainer()
The container where the value was found (possibly an ancestor of the queried object).
|
Maybe<TValue> |
getDefaultValue()
The default value on the key, if available and permitted,
possibly coerced or resolved in the scope of
ConfigValueAtContainer.getContainer() ,
and possibly absent e.g. |
ConfigKey<TValue> |
getKey()
The key whose value is being held here.
|
boolean |
isValueExplicitlySet()
If false, any contents of
ConfigValueAtContainer.get() will have come from ConfigValueAtContainer.getDefaultValue() . |
java.lang.String |
toString() |
public LazyContainerAndKeyValue(@Nullable ConfigKey<TValue> key, @Nullable TContainer container, <any> lookupResolutionFunction, <any> conversionFunction)
public TContainer getContainer()
ConfigValueAtContainer
getContainer
in interface ConfigValueAtContainer<TContainer,TValue>
public TValue get()
ConfigValueAtContainer
ConfigValueAtContainer.asMaybe()
or null.get
in interface ConfigValueAtContainer<TContainer,TValue>
public Maybe<TValue> asMaybe()
ConfigValueAtContainer
asMaybe
in interface ConfigValueAtContainer<TContainer,TValue>
public boolean isValueExplicitlySet()
ConfigValueAtContainer
ConfigValueAtContainer.get()
will have come from ConfigValueAtContainer.getDefaultValue()
.isValueExplicitlySet
in interface ConfigValueAtContainer<TContainer,TValue>
public ConfigKey<TValue> getKey()
ConfigValueAtContainer
This may be null when working in a context where the query key is widely known to indicate that no key was defined at this container.
getKey
in interface ConfigValueAtContainer<TContainer,TValue>
public Maybe<TValue> getDefaultValue()
ConfigValueAtContainer
ConfigValueAtContainer.getContainer()
,
and possibly absent e.g. in raw value lookupsgetDefaultValue
in interface ConfigValueAtContainer<TContainer,TValue>
public java.lang.String toString()
toString
in class java.lang.Object