public interface MergingStrategy
An algorithm for combining multiple
ConfigNode.ObjectNode
root nodes
into a single ConfigNode.ObjectNode
root node.- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionstatic MergingStrategy
fallback()
Returns an implementation ofMergingStrategy
in which nodes from a root earlier in the list have higher priority than nodes from a root later in the list.merge
(List<ConfigNode.ObjectNode> rootNodes) Merges an ordered list ofConfigNode.ObjectNode
s into a single instance.
-
Method Details
-
merge
Merges an ordered list ofConfigNode.ObjectNode
s into a single instance.Typically nodes (object, list or value) from a root earlier in the list are considered to have a higher priority than nodes from a root that appears later in the list, but this is not required and is entirely up to each
MergingStrategy
implementation.- Parameters:
rootNodes
- list of root nodes to combine- Returns:
- ObjectNode root node resulting from the merge
-
fallback
Returns an implementation ofMergingStrategy
in which nodes from a root earlier in the list have higher priority than nodes from a root later in the list.The merged behavior is as if the resulting merged
Config
, when resolving a value of a key, consults theConfig
roots in the order they were passed tomerge
. As soon as it finds aConfig
tree containing a value for the key is it immediately returns that value, disregarding other later config roots.- Returns:
- new instance of fallback merging strategy
-