aboutsummaryrefslogtreecommitdiffstats
path: root/vespajlib/src
diff options
context:
space:
mode:
authorJon Marius Venstad <jonmv@users.noreply.github.com>2023-05-31 08:42:55 +0200
committerGitHub <noreply@github.com>2023-05-31 08:42:55 +0200
commitaf827dc5256e1372033ada8de82f3858f9db7dc0 (patch)
tree4e85cfb9e6ccf30a6672ea54857c501679e399de /vespajlib/src
parent8714d5cdce3f9e6f7a995688deb3f6432c35356d (diff)
parent64ef5c1850f07d3a5569f485b2c3777bbb3daaf4 (diff)
Merge pull request #27214 from vespa-engine/jonmv/custom-host-ttl
Jonmv/custom host ttl
Diffstat (limited to 'vespajlib/src')
-rw-r--r--vespajlib/src/main/java/com/yahoo/slime/SlimeUtils.java12
1 files changed, 8 insertions, 4 deletions
diff --git a/vespajlib/src/main/java/com/yahoo/slime/SlimeUtils.java b/vespajlib/src/main/java/com/yahoo/slime/SlimeUtils.java
index 6acd0679da2..b08346f7cec 100644
--- a/vespajlib/src/main/java/com/yahoo/slime/SlimeUtils.java
+++ b/vespajlib/src/main/java/com/yahoo/slime/SlimeUtils.java
@@ -126,20 +126,24 @@ public class SlimeUtils {
return Duration.ofMillis(field.asLong());
}
+ public static boolean isPresent(Inspector field) {
+ return field.valid() && field.type() != Type.NIX;
+ }
+
public static Optional<String> optionalString(Inspector inspector) {
- return Optional.of(inspector.asString()).filter(s -> !s.isEmpty());
+ return Optional.of(inspector).filter(SlimeUtils::isPresent).map(Inspector::asString);
}
public static OptionalLong optionalLong(Inspector field) {
- return field.valid() ? OptionalLong.of(field.asLong()) : OptionalLong.empty();
+ return isPresent(field) ? OptionalLong.of(field.asLong()) : OptionalLong.empty();
}
public static OptionalInt optionalInteger(Inspector field) {
- return field.valid() ? OptionalInt.of((int) field.asLong()) : OptionalInt.empty();
+ return isPresent(field) ? OptionalInt.of((int) field.asLong()) : OptionalInt.empty();
}
public static OptionalDouble optionalDouble(Inspector field) {
- return field.valid() ? OptionalDouble.of(field.asDouble()) : OptionalDouble.empty();
+ return isPresent(field) ? OptionalDouble.of(field.asDouble()) : OptionalDouble.empty();
}
public static Optional<Instant> optionalInstant(Inspector field) {