diff --git a/jenkins-client/src/main/java/com/offbytwo/jenkins/model/BuildWithDetails.java b/jenkins-client/src/main/java/com/offbytwo/jenkins/model/BuildWithDetails.java index d3ce5842..5fce4a5c 100644 --- a/jenkins-client/src/main/java/com/offbytwo/jenkins/model/BuildWithDetails.java +++ b/jenkins-client/src/main/java/com/offbytwo/jenkins/model/BuildWithDetails.java @@ -109,7 +109,7 @@ public BuildResult getResult() { }; - private List>>> actions; // TODO: Should be improved. + private List> actions; // TODO: Should be improved. private boolean building; private String description; private String displayName; @@ -162,10 +162,8 @@ public boolean isBuilding() { public List getCauses() { return actions.stream() - .filter(item -> item.containsKey("causes")) - .flatMap(item -> item.entrySet().stream()) - .flatMap(sub -> sub.getValue().stream()) - .map(item -> convertToBuildCause(item)) + .flatMap(item -> ((List>) item.getOrDefault("causes", List.of())).stream()) + .map(this::convertToBuildCause) .collect(toList()); } @@ -348,9 +346,7 @@ public List getActions() { public Map getParameters() { Map parameters = actions.stream() - .filter(item -> item.containsKey("parameters")) - .flatMap(item -> item.entrySet().stream()) - .flatMap(sub -> sub.getValue().stream()) + .flatMap(item -> ((List>) item.getOrDefault("parameters", List.of())).stream()) .collect(toMap(k -> (String) k.get("name"), v -> v.get("value"))); return parameters;