summaryrefslogtreecommitdiffstats
path: root/config-lib
diff options
context:
space:
mode:
authorLester Solbakken <lesters@users.noreply.github.com>2022-04-19 11:35:02 +0200
committerGitHub <noreply@github.com>2022-04-19 11:35:02 +0200
commita0cf7298d39421400ee83dc4e6231465f115659a (patch)
tree4825eced6a81f83cb325e332cc51da700e713af6 /config-lib
parent814e8a415dee0ce0735a988932db80b20301b897 (diff)
parent0040e513d9ebf634130615dde62b2908c4aa9aa1 (diff)
Merge pull request #21982 from vespa-engine/lesters/default-url-config
Accept default values for URL types in config
Diffstat (limited to 'config-lib')
-rw-r--r--config-lib/abi-spec.json2
-rw-r--r--config-lib/src/main/java/com/yahoo/config/UrlNode.java14
-rwxr-xr-xconfig-lib/src/main/java/com/yahoo/config/UrlReference.java4
3 files changed, 20 insertions, 0 deletions
diff --git a/config-lib/abi-spec.json b/config-lib/abi-spec.json
index 8a1cfa9834e..dd4cf995f64 100644
--- a/config-lib/abi-spec.json
+++ b/config-lib/abi-spec.json
@@ -468,6 +468,7 @@
"methods": [
"public void <init>()",
"public void <init>(com.yahoo.config.UrlReference)",
+ "public void <init>(java.lang.String)",
"public java.io.File value()",
"public java.lang.String toString()",
"public java.lang.String getValue()",
@@ -489,6 +490,7 @@
"methods": [
"public void <init>(java.lang.String)",
"public java.lang.String value()",
+ "public static com.yahoo.config.UrlReference valueOf(java.lang.String)",
"public int hashCode()",
"public boolean equals(java.lang.Object)",
"public java.lang.String toString()"
diff --git a/config-lib/src/main/java/com/yahoo/config/UrlNode.java b/config-lib/src/main/java/com/yahoo/config/UrlNode.java
index d71439ebb9a..ace94f561ff 100644
--- a/config-lib/src/main/java/com/yahoo/config/UrlNode.java
+++ b/config-lib/src/main/java/com/yahoo/config/UrlNode.java
@@ -28,6 +28,10 @@ public class UrlNode extends LeafNode<File> {
this.value = new File(url.value());
}
+ public UrlNode(String url) {
+ this(new UrlReference(url));
+ }
+
public File value() {
return value;
}
@@ -60,4 +64,14 @@ public class UrlNode extends LeafNode<File> {
Collectors.toMap(Map.Entry::getKey, e -> e.getValue().getUrlReference()));
}
+ @Override
+ void serialize(String name, Serializer serializer) {
+ serializer.serialize(name, url.value());
+ }
+
+ @Override
+ void serialize(Serializer serializer) {
+ serializer.serialize(url.value());
+ }
+
}
diff --git a/config-lib/src/main/java/com/yahoo/config/UrlReference.java b/config-lib/src/main/java/com/yahoo/config/UrlReference.java
index 470828c7d0c..1adab8aaa53 100755
--- a/config-lib/src/main/java/com/yahoo/config/UrlReference.java
+++ b/config-lib/src/main/java/com/yahoo/config/UrlReference.java
@@ -21,6 +21,10 @@ public final class UrlReference {
return value;
}
+ public static UrlReference valueOf(String value) {
+ return new UrlReference(value);
+ }
+
@Override
public int hashCode() {
return value.hashCode();