metadata method

NodeInfoBuilder metadata(
  1. Map<String, Object> metadata
)

Adds all entries in metadata to TreeNodeInfo.metadata.

Throws StateError if TreeNodeInfo.metadata already contains a key that is in metadata.

Implementation

NodeInfoBuilder metadata(Map<String, Object> metadata) {
  for (var pair in metadata.entries) {
    if (_metadata.containsKey(pair.key)) {
      throw StateError(
          'Node "${nodeBuildInfo.key}" already has metadata with key "${pair.key}"');
    }
    _metadata[pair.key] = pair.value;
  }

  return this;
}