aboutsummaryrefslogtreecommitdiffstats
path: root/config-lib
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@gmail.com>2022-09-02 22:03:18 +0200
committerJon Bratseth <bratseth@gmail.com>2022-09-02 22:03:18 +0200
commitf519dbc42c68770bfbcff7d11cede53b11ad1751 (patch)
tree3a43b0d1d09052936497e0f7627ee13941db4e14 /config-lib
parent3072a5dcb6d68db03e31503ebcbf01d7dcce1d95 (diff)
Revert "Merge pull request #23910 from vespa-engine/revert-23907-bratseth/model-reference-cleanup"
This reverts commit 37f0d3a64511b0dd0d902053be3a6cffc21acee6, reversing changes made to c23bba0b2cd6ab7699ee2b0d6be34c023159ffb8.
Diffstat (limited to 'config-lib')
-rw-r--r--config-lib/src/main/java/com/yahoo/config/ModelNode.java4
-rw-r--r--config-lib/src/main/java/com/yahoo/config/ModelReference.java23
2 files changed, 10 insertions, 17 deletions
diff --git a/config-lib/src/main/java/com/yahoo/config/ModelNode.java b/config-lib/src/main/java/com/yahoo/config/ModelNode.java
index 2748ef8c7e9..67ea751d40e 100644
--- a/config-lib/src/main/java/com/yahoo/config/ModelNode.java
+++ b/config-lib/src/main/java/com/yahoo/config/ModelNode.java
@@ -23,13 +23,13 @@ public class ModelNode extends LeafNode<Path> {
public ModelNode(ModelReference modelReference) {
super(true);
- this.value = modelReference.value();
+ this.value = modelReference.value(); // The resolved value, or null if not resolved
this.reference = modelReference;
}
@Override
public String getValue() {
- return value.toString();
+ return reference.toString();
}
@Override
diff --git a/config-lib/src/main/java/com/yahoo/config/ModelReference.java b/config-lib/src/main/java/com/yahoo/config/ModelReference.java
index ba35812db4d..ecee42225db 100644
--- a/config-lib/src/main/java/com/yahoo/config/ModelReference.java
+++ b/config-lib/src/main/java/com/yahoo/config/ModelReference.java
@@ -1,7 +1,6 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.config;
-import java.io.File;
import java.nio.file.Path;
import java.util.Objects;
import java.util.Optional;
@@ -59,14 +58,7 @@ public class ModelReference {
/** Returns the path to the file containing this model, or null if not available. */
public Path value() {
- if (resolved != null)
- return resolved;
-
- if (url.isPresent() && new File(url.get().value()).exists())
- return Path.of(url.get().value());
- if (path.isPresent())
- return Path.of(path.get().value());
- return null;
+ return resolved;
}
@Override
@@ -86,9 +78,10 @@ public class ModelReference {
/** Returns this on the format accepted by valueOf */
@Override
public String toString() {
- return modelId.orElse("") + " " +
- url.map(v -> v.value()).orElse("") + " " +
- path.map(v -> v.value()).orElse("");
+ if (resolved != null) return resolved.toString();
+ return modelId.orElse("\"\"") + " " +
+ url.map(v -> v.value()).orElse("\"\"") + " " +
+ path.map(v -> v.value()).orElse("\"\"");
}
/** Creates a model reference having a model id only. */
@@ -121,9 +114,9 @@ public class ModelReference {
if (parts.length == 1)
return new ModelReference(Path.of(s));
else if (parts.length == 3)
- return new ModelReference(parts[0].equals("") ? Optional.empty() : Optional.of(parts[0]),
- parts[1].equals("") ? Optional.empty() : Optional.of(new UrlReference(parts[1])),
- parts[2].equals("") ? Optional.empty() : Optional.of(new FileReference(parts[2])));
+ return new ModelReference(parts[0].equals("\"\"") ? Optional.empty() : Optional.of(parts[0]),
+ parts[1].equals("\"\"") ? Optional.empty() : Optional.of(new UrlReference(parts[1])),
+ parts[2].equals("\"\"") ? Optional.empty() : Optional.of(new FileReference(parts[2])));
else
throw new IllegalArgumentException("Unexpected model string '" + s + "'");
}