Package com.vladsch.flexmark.util.data
Class MutableScopedDataSet
- java.lang.Object
-
- com.vladsch.flexmark.util.data.DataSet
-
- com.vladsch.flexmark.util.data.MutableDataSet
-
- com.vladsch.flexmark.util.data.MutableScopedDataSet
-
- All Implemented Interfaces:
DataHolder
,MutableDataHolder
,MutableDataSetter
public class MutableScopedDataSet extends MutableDataSet
-
-
Field Summary
Fields Modifier and Type Field Description protected DataHolder
parent
-
Fields inherited from interface com.vladsch.flexmark.util.data.DataHolder
NULL
-
-
Constructor Summary
Constructors Constructor Description MutableScopedDataSet(DataHolder parent)
MutableScopedDataSet(DataHolder parent, MutableDataHolder other)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
contains(DataKeyBase<?> key)
java.util.Map<? extends DataKeyBase<?>,java.lang.Object>
getAll()
java.util.Collection<? extends DataKeyBase<?>>
getKeys()
java.lang.Object
getOrCompute(DataKeyBase<?> key, DataValueFactory<?> factory)
Get key if it exists or compute using supplierDataHolder
getParent()
-
Methods inherited from class com.vladsch.flexmark.util.data.MutableDataSet
clear, merge, remove, set, set, setAll, setFrom, setIn, toDataSet, toImmutable, toMutable
-
Methods inherited from class com.vladsch.flexmark.util.data.DataSet
aggregate, aggregate, aggregateActions, equals, hashCode, registerDataKeyAggregator, toString
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface com.vladsch.flexmark.util.data.MutableDataHolder
get
-
-
-
-
Field Detail
-
parent
protected final DataHolder parent
-
-
Constructor Detail
-
MutableScopedDataSet
public MutableScopedDataSet(DataHolder parent)
-
MutableScopedDataSet
public MutableScopedDataSet(DataHolder parent, MutableDataHolder other)
-
-
Method Detail
-
getParent
public DataHolder getParent()
-
getAll
@NotNull public java.util.Map<? extends DataKeyBase<?>,java.lang.Object> getAll()
- Specified by:
getAll
in interfaceDataHolder
- Overrides:
getAll
in classDataSet
-
getKeys
@NotNull public java.util.Collection<? extends DataKeyBase<?>> getKeys()
- Specified by:
getKeys
in interfaceDataHolder
- Overrides:
getKeys
in classDataSet
-
contains
public boolean contains(@NotNull DataKeyBase<?> key)
- Specified by:
contains
in interfaceDataHolder
- Overrides:
contains
in classDataSet
-
getOrCompute
@Nullable public java.lang.Object getOrCompute(@NotNull DataKeyBase<?> key, @NotNull DataValueFactory<?> factory)
Description copied from interface:DataHolder
Get key if it exists or compute using supplierMethod used by DataKey classes to access data.
NOTE: MutableDataHolders will compute an absent key and add it to its dataSet. DataHolders will return computed value but not change contained dataSet because they are immutable. So value will be computed every time it is requested.
- Specified by:
getOrCompute
in interfaceDataHolder
- Specified by:
getOrCompute
in interfaceMutableDataHolder
- Overrides:
getOrCompute
in classMutableDataSet
- Parameters:
key
- data keyfactory
- factory taking this data holder and computing/providing default value- Returns:
- object value for the key
-
-