summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--orchestrator-restapi/src/main/java/com/yahoo/vespa/orchestrator/restapi/wire/BatchHostSuspendRequest.java13
-rw-r--r--orchestrator/src/main/java/com/yahoo/vespa/orchestrator/resources/HostSuspensionResource.java14
2 files changed, 14 insertions, 13 deletions
diff --git a/orchestrator-restapi/src/main/java/com/yahoo/vespa/orchestrator/restapi/wire/BatchHostSuspendRequest.java b/orchestrator-restapi/src/main/java/com/yahoo/vespa/orchestrator/restapi/wire/BatchHostSuspendRequest.java
index eca9e10f3b7..8311967e1bb 100644
--- a/orchestrator-restapi/src/main/java/com/yahoo/vespa/orchestrator/restapi/wire/BatchHostSuspendRequest.java
+++ b/orchestrator-restapi/src/main/java/com/yahoo/vespa/orchestrator/restapi/wire/BatchHostSuspendRequest.java
@@ -7,34 +7,33 @@ import com.fasterxml.jackson.annotation.JsonProperty;
import javax.annotation.concurrent.Immutable;
import java.util.Collections;
import java.util.List;
-import java.util.Optional;
@Immutable
public class BatchHostSuspendRequest {
public static final String PARENT_HOSTNAME_FIELD = "parentHostname";
public static final String HOSTNAMES_FIELD = "hostnames";
- public final Optional<String> parentHostname;
- public final Optional<List<String>> hostnames;
+ public final String parentHostname;
+ public final List<String> hostnames;
@JsonCreator
public BatchHostSuspendRequest(
@JsonProperty(PARENT_HOSTNAME_FIELD) String parentHostname,
@JsonProperty(HOSTNAMES_FIELD) List<String> hostnames) {
- this.parentHostname = Optional.ofNullable(parentHostname);
- this.hostnames = Optional.ofNullable(hostnames).map(Collections::unmodifiableList);
+ this.parentHostname = parentHostname;
+ this.hostnames = Collections.unmodifiableList(hostnames);
}
/**
* @return The hostname of the parent of the hostnames, if applicable, which can be used for debugging.
*/
@JsonProperty(PARENT_HOSTNAME_FIELD)
- public Optional<String> getParentHostname() {
+ public String getParentHostname() {
return parentHostname;
}
@JsonProperty(HOSTNAMES_FIELD)
- public Optional<List<String>> getHostnames() {
+ public List<String> getHostnames() {
return hostnames;
}
diff --git a/orchestrator/src/main/java/com/yahoo/vespa/orchestrator/resources/HostSuspensionResource.java b/orchestrator/src/main/java/com/yahoo/vespa/orchestrator/resources/HostSuspensionResource.java
index 855217c298a..9719c602a22 100644
--- a/orchestrator/src/main/java/com/yahoo/vespa/orchestrator/resources/HostSuspensionResource.java
+++ b/orchestrator/src/main/java/com/yahoo/vespa/orchestrator/resources/HostSuspensionResource.java
@@ -34,19 +34,21 @@ public class HostSuspensionResource implements HostSuspensionApi {
@Override
public BatchOperationResult suspendAll(BatchHostSuspendRequest request) throws WebApplicationException {
- if (!request.getParentHostname().isPresent()) {
- String message = "parentHostname missing in request: " + request;
+ final String ph = request.getParentHostname();
+ if (ph == null || ph.isEmpty()) {
+ String message = "parentHostname missing or empty in request: " + request;
log.log(LogLevel.DEBUG, message);
throw createWebApplicationException(message, Response.Status.BAD_REQUEST);
}
- HostName parentHostname = new HostName(request.getParentHostname().get());
-
- if (!request.getHostnames().isPresent()) {
+ final List<String> h = request.getHostnames();
+ if (h == null || h.isEmpty()) {
String message = "hostnames missing in request: " + request;
log.log(LogLevel.DEBUG, message);
throw createWebApplicationException(message, Response.Status.BAD_REQUEST);
}
- List<HostName> hostNames = request.getHostnames().get().stream().map(HostName::new).collect(Collectors.toList());
+
+ HostName parentHostname = new HostName(ph);
+ List<HostName> hostNames = request.getHostnames().stream().map(HostName::new).collect(Collectors.toList());
try {
orchestrator.suspendAll(parentHostname, hostNames);