diff options
author | jonmv <venstad@gmail.com> | 2023-11-08 17:07:03 +0100 |
---|---|---|
committer | jonmv <venstad@gmail.com> | 2023-11-08 17:07:03 +0100 |
commit | 033d5f765fa2d17d9309c89d7e62ce64d0be7d58 (patch) | |
tree | 682e258c8faf95c7030148036b4543c437c3886c /vespajlib/src/main/java/com/yahoo/slime/SlimeUtils.java | |
parent | 59ecf3b33f29ab82a61bd888b1a4f1dc60d60027 (diff) |
Support an ID seed for LB resource ID hashes
Diffstat (limited to 'vespajlib/src/main/java/com/yahoo/slime/SlimeUtils.java')
-rw-r--r-- | vespajlib/src/main/java/com/yahoo/slime/SlimeUtils.java | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/vespajlib/src/main/java/com/yahoo/slime/SlimeUtils.java b/vespajlib/src/main/java/com/yahoo/slime/SlimeUtils.java index 56ef0c76408..11299814274 100644 --- a/vespajlib/src/main/java/com/yahoo/slime/SlimeUtils.java +++ b/vespajlib/src/main/java/com/yahoo/slime/SlimeUtils.java @@ -131,7 +131,7 @@ public class SlimeUtils { } public static Optional<String> optionalString(Inspector inspector) { - return Optional.of(inspector).filter(SlimeUtils::isPresent).map(Inspector::asString); + return isPresent(inspector) ? Optional.of(inspector.asString()) : Optional.empty(); } public static OptionalLong optionalLong(Inspector field) { @@ -147,11 +147,11 @@ public class SlimeUtils { } public static Optional<Instant> optionalInstant(Inspector field) { - return optionalLong(field).stream().mapToObj(Instant::ofEpochMilli).findFirst(); + return isPresent(field) ? Optional.of(Instant.ofEpochMilli(field.asLong())) : Optional.empty(); } public static Optional<Duration> optionalDuration(Inspector field) { - return optionalLong(field).stream().mapToObj(Duration::ofMillis).findFirst(); + return isPresent(field) ? Optional.of(Duration.ofMillis(field.asLong())) : Optional.empty(); } public static Iterator<Inspector> entriesIterator(Inspector inspector) { @@ -165,8 +165,9 @@ public class SlimeUtils { /** Returns stream of entries for given inspector. If the inspector is not an array, empty stream is returned */ public static Stream<Inspector> entriesStream(Inspector inspector) { int characteristics = Spliterator.NONNULL | Spliterator.SIZED | Spliterator.ORDERED; - return StreamSupport.stream(Spliterators.spliteratorUnknownSize(entriesIterator(inspector), - characteristics), + return StreamSupport.stream(Spliterators.spliterator(entriesIterator(inspector), + inspector.entries(), + characteristics), false); } |