summaryrefslogtreecommitdiffstats
path: root/config-lib/src/main/java/com/yahoo/config/LeafNodeVector.java
diff options
context:
space:
mode:
Diffstat (limited to 'config-lib/src/main/java/com/yahoo/config/LeafNodeVector.java')
-rw-r--r--config-lib/src/main/java/com/yahoo/config/LeafNodeVector.java8
1 files changed, 8 insertions, 0 deletions
diff --git a/config-lib/src/main/java/com/yahoo/config/LeafNodeVector.java b/config-lib/src/main/java/com/yahoo/config/LeafNodeVector.java
index a4fea95088d..cfb8cd4eebd 100644
--- a/config-lib/src/main/java/com/yahoo/config/LeafNodeVector.java
+++ b/config-lib/src/main/java/com/yahoo/config/LeafNodeVector.java
@@ -8,6 +8,7 @@ import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
+import java.util.Optional;
/**
* A vector of leaf nodes.
@@ -71,6 +72,13 @@ public class LeafNodeVector<REAL, NODE extends LeafNode<REAL>> extends NodeVecto
return new LeafNodeVector<>(paths, new PathNode());
}
+ public static LeafNodeVector<Optional<Path>, OptionalPathNode> createOptionalPathNodeVector(Collection<Optional<FileReference>> values) {
+ List<Optional<Path>> paths = new ArrayList<>();
+ for (Optional<FileReference> fileReference : values)
+ paths.add(fileReference.map(reference -> Paths.get(reference.value())));
+ return new LeafNodeVector<>(paths, new OptionalPathNode());
+ }
+
public static LeafNodeVector<File, UrlNode> createUrlNodeVector(Collection<UrlReference> values) {
List<File> files = new ArrayList<>();
for (UrlReference urlReference : values)