Interface NodeMetaDataHandler

    • Method Detail

      • getNodeMetaData

        default <T> T getNodeMetaData​(Object key)
        Gets the node meta data.
        Parameters:
        key - the meta data key
        Returns:
        the node meta data value for this key
      • getNodeMetaData

        default <T> T getNodeMetaData​(Object key,
                                      Function<?,​? extends T> valFn)
        Gets the node meta data.
        Parameters:
        key - the meta data key
        valFn - the meta data value supplier
        Returns:
        the node meta data value for this key
      • copyNodeMetaData

        default void copyNodeMetaData​(NodeMetaDataHandler other)
        Copies all node meta data from the other node to this one
        Parameters:
        other - the other node
      • setNodeMetaData

        default void setNodeMetaData​(Object key,
                                     Object value)
        Sets the node meta data.
        Parameters:
        key - the meta data key
        value - the meta data value
        Throws:
        GroovyBugError - if key is null or there is already meta data under that key
      • putNodeMetaData

        default Object putNodeMetaData​(Object key,
                                       Object value)
        Sets the node meta data but allows overwriting values.
        Parameters:
        key - the meta data key
        value - the meta data value
        Returns:
        the old node meta data value for this key
        Throws:
        GroovyBugError - if key is null
      • removeNodeMetaData

        default void removeNodeMetaData​(Object key)
        Removes a node meta data entry.
        Parameters:
        key - the meta data key
        Throws:
        GroovyBugError - if the key is null
      • getNodeMetaData

        default Map<?,​?> getNodeMetaData()
        Returns an unmodifiable view of the current node metadata.
        Returns:
        the node metadata. Always not null.
      • getMetaDataMap

        Map<?,​?> getMetaDataMap()
      • setMetaDataMap

        void setMetaDataMap​(Map<?,​?> metaDataMap)