diff options
Diffstat (limited to 'controller-api')
-rw-r--r-- | controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/ConfigServerException.java | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/ConfigServerException.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/ConfigServerException.java index 780969206a2..4240b0d9fa6 100644 --- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/ConfigServerException.java +++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/configserver/ConfigServerException.java @@ -2,6 +2,7 @@ package com.yahoo.vespa.hosted.controller.api.integration.configserver; import java.net.URI; +import java.util.Objects; /** * @author Tony Vaagenes @@ -10,11 +11,13 @@ public class ConfigServerException extends RuntimeException { private final URI serverUri; private final ErrorCode errorCode; + private final String serverMessage; - public ConfigServerException(URI serverUri, String message, ErrorCode errorCode, Throwable cause) { - super(message, cause); - this.serverUri = serverUri; - this.errorCode = errorCode; + public ConfigServerException(URI serverUri, String context, String serverMessage, ErrorCode errorCode, Throwable cause) { + super(context + ": " + serverMessage, cause); + this.serverUri = Objects.requireNonNull(serverUri); + this.errorCode = Objects.requireNonNull(errorCode); + this.serverMessage = Objects.requireNonNull(serverMessage); } public ErrorCode getErrorCode() { @@ -25,6 +28,10 @@ public class ConfigServerException extends RuntimeException { return serverUri; } + public String getServerMessage() { + return serverMessage; + } + // TODO: Copied from Vespa. Expose these in Vespa and use them here public enum ErrorCode { APPLICATION_LOCK_FAILURE, |