diff options
author | Jon Marius Venstad <jvenstad@yahoo-inc.com> | 2018-10-05 09:38:33 +0200 |
---|---|---|
committer | Jon Marius Venstad <jvenstad@yahoo-inc.com> | 2018-10-05 09:38:33 +0200 |
commit | 5927c9f6c7ef6e00ec97335ebb2a4eef726cb304 (patch) | |
tree | 816f819cdd827cdb9f26c8510090fb936566f656 /controller-server | |
parent | 1baa05619cba213b7a869a36f9febe9b11f3196b (diff) |
Remove pointless Optional and clean up API response
Diffstat (limited to 'controller-server')
4 files changed, 19 insertions, 15 deletions
diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/RunLog.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/RunLog.java index 596249a762b..b5ee571a387 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/RunLog.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/deployment/RunLog.java @@ -31,7 +31,10 @@ public class RunLog { /** Creates a RunLog which contains a deep copy of the given log. */ public static RunLog of(Map<Step, List<LogEntry>> log) { ImmutableMap.Builder<Step, List<LogEntry>> builder = ImmutableMap.builder(); - log.forEach((step, entries) -> builder.put(step, ImmutableList.copyOf(entries))); + log.forEach((step, entries) -> { + if ( ! entries.isEmpty()) + builder.put(step, ImmutableList.copyOf(entries)); + }); OptionalLong lastId = log.values().stream() .flatMap(List::stream) .mapToLong(LogEntry::id) @@ -45,8 +48,8 @@ public class RunLog { } /** Returns the log entries for the given step, if any are recorded. */ - public Optional<List<LogEntry>> get(Step step) { - return Optional.ofNullable(log.get(step)); + public List<LogEntry> get(Step step) { + return log.getOrDefault(step, Collections.emptyList()); } /** Returns the id of the last log entry in this, if it has any. */ diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/JobControllerApiHandlerHelper.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/JobControllerApiHandlerHelper.java index df682490200..6140a2fa810 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/JobControllerApiHandlerHelper.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/application/JobControllerApiHandlerHelper.java @@ -371,7 +371,8 @@ class JobControllerApiHandlerHelper { Cursor logObject = detailsObject.setObject("log"); for (Step step : Step.values()) { - runLog.get(step).ifPresent(entries -> toSlime(logObject.setArray(step.name()), entries)); + if ( ! runLog.get(step).isEmpty()) + toSlime(logObject.setArray(step.name()), runLog.get(step)); } runLog.lastId().ifPresent(id -> detailsObject.setLong("lastId", id)); diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunnerTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunnerTest.java index f33f82b78e2..a61d6bee91a 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunnerTest.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunnerTest.java @@ -257,7 +257,7 @@ public class InternalStepRunnerTest { } private void assertTestLogEntries(RunId id, Step step, LogEntry... entries) { - assertEquals(Arrays.asList(entries), tester.jobs().details(id).get().get(step).get()); + assertEquals(Arrays.asList(entries), tester.jobs().details(id).get().get(step)); } @Test diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/persistence/BufferedLogStoreTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/persistence/BufferedLogStoreTest.java index 2409b973b4e..cf8962cc631 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/persistence/BufferedLogStoreTest.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/persistence/BufferedLogStoreTest.java @@ -43,23 +43,23 @@ public class BufferedLogStoreTest { logs.append(id.application(), id.type(), Step.deployReal, Collections.singletonList(entry)); assertEquals(Arrays.asList(entry0), - logs.readActive(id.application(), id.type(), -1).get(Step.deployReal).get()); + logs.readActive(id.application(), id.type(), -1).get(Step.deployReal)); assertEquals(RunLog.empty(), logs.readActive(id.application(), id.type(), 0)); logs.append(id.application(), id.type(), Step.deployReal, Collections.singletonList(entry)); assertEquals(Arrays.asList(entry0, entry1), - logs.readActive(id.application(), id.type(), -1).get(Step.deployReal).get()); + logs.readActive(id.application(), id.type(), -1).get(Step.deployReal)); assertEquals(Arrays.asList(entry1), - logs.readActive(id.application(), id.type(), 0).get(Step.deployReal).get()); + logs.readActive(id.application(), id.type(), 0).get(Step.deployReal)); assertEquals(RunLog.empty(), logs.readActive(id.application(), id.type(), 1)); logs.append(id.application(), id.type(), Step.deployReal, Collections.singletonList(entry)); assertEquals(Arrays.asList(entry0, entry1, entry2), - logs.readActive(id.application(), id.type(), -1).get(Step.deployReal).get()); + logs.readActive(id.application(), id.type(), -1).get(Step.deployReal)); assertEquals(Arrays.asList(entry1, entry2), - logs.readActive(id.application(), id.type(), 0).get(Step.deployReal).get()); + logs.readActive(id.application(), id.type(), 0).get(Step.deployReal)); assertEquals(Arrays.asList(entry2), - logs.readActive(id.application(), id.type(), 1).get(Step.deployReal).get()); + logs.readActive(id.application(), id.type(), 1).get(Step.deployReal)); assertEquals(RunLog.empty(), logs.readActive(id.application(), id.type(), 2)); // We should now have two chunks, with two and one entries. @@ -73,12 +73,12 @@ public class BufferedLogStoreTest { assertEquals(RunLog.empty(), logs.readActive(id.application(), id.type(), -1)); assertEquals(Arrays.asList(entry0, entry1, entry2), - logs.readFinished(id, -1).get().get(Step.deployReal).get()); + logs.readFinished(id, -1).get().get(Step.deployReal)); assertEquals(Arrays.asList(entry1, entry2), - logs.readFinished(id, 0).get().get(Step.deployReal).get()); + logs.readFinished(id, 0).get().get(Step.deployReal)); assertEquals(Arrays.asList(entry2), - logs.readFinished(id, 1).get().get(Step.deployReal).get()); - assertEquals(Collections.emptyList(), logs.readFinished(id, 2).get().get(Step.deployReal).get()); + logs.readFinished(id, 1).get().get(Step.deployReal)); + assertEquals(Collections.emptyList(), logs.readFinished(id, 2).get().get(Step.deployReal)); } } |