Class ObjectNodeImpl

java.lang.Object
java.util.AbstractMap<String,ConfigNode>
io.helidon.config.ObjectNodeImpl
All Implemented Interfaces:
MergeableNode, ConfigNode, ConfigNode.ObjectNode, Map<String,ConfigNode>

public class ObjectNodeImpl extends AbstractMap<String,ConfigNode> implements ConfigNode.ObjectNode, MergeableNode
  • Method Details

    • wrap

      public static ObjectNodeImpl wrap(ConfigNode.ObjectNode objectNode)
      Wraps value node into mergeable value node.
      Parameters:
      objectNode - original node
      Returns:
      new instance of mergeable node or original node if already was mergeable.
    • wrap

      public static ObjectNodeImpl wrap(ConfigNode.ObjectNode objectNode, Function<String,String> resolveTokenFunction)
      Wraps value node into mergeable value node.
      Parameters:
      objectNode - original node
      resolveTokenFunction - a token resolver
      Returns:
      new instance of mergeable node or original node if already was mergeable.
    • entrySet

      public Set<Map.Entry<String,ConfigNode>> entrySet()
      Specified by:
      entrySet in interface Map<String,ConfigNode>
      Specified by:
      entrySet in class AbstractMap<String,ConfigNode>
    • merge

      public MergeableNode merge(MergeableNode node)
      Description copied from interface: MergeableNode
      Returns new instance mergeable node of same type of original one that merges also with specified node.
      Specified by:
      merge in interface MergeableNode
      Parameters:
      node - node to be used to merge with
      Returns:
      new instance of mergeable node that combines original node with specified one
    • toString

      public String toString()
      Overrides:
      toString in class AbstractMap<String,ConfigNode>
    • initDescription

      public ObjectNodeImpl initDescription(String description)
      Initialize diagnostics description of source of node instance.
      Parameters:
      description - diagnostics description
      Returns:
      this instance
    • description

      public String description()
      Description of this node.
      Returns:
      node description
    • hasValue

      public boolean hasValue()
      Description copied from interface: MergeableNode
      Each node may have a direct value, and in addition may be an object node or a list node. This method returns true for any node with direct value.
      Specified by:
      hasValue in interface MergeableNode
      Returns:
      true if this node contains a value
    • value

      public Optional<String> value()
      Description copied from interface: ConfigNode
      Get the direct value of this config node. Any node type can have a direct value.
      Specified by:
      value in interface ConfigNode
      Returns:
      a value if present, empty otherwise