summaryrefslogtreecommitdiffstats
path: root/node-repository
diff options
context:
space:
mode:
authorMartin Polden <mpolden@mpolden.no>2019-09-30 12:40:32 +0200
committerMartin Polden <mpolden@mpolden.no>2019-09-30 12:44:30 +0200
commite2735128a9e93a7649a917422a149649ec0efc0a (patch)
treec610203f0bf1741f7049e8debcfa4ba84d892088 /node-repository
parentf2bb48968d209e0567330bdeb11ea10aedf6a55c (diff)
Use response classes from container-core
Diffstat (limited to 'node-repository')
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/ErrorResponse.java75
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/HostCapacityResponse.java4
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/LoadBalancersApiHandler.java1
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/MessageResponse.java33
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/NodesApiHandler.java2
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/ResourcesResponse.java6
6 files changed, 11 insertions, 110 deletions
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/ErrorResponse.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/ErrorResponse.java
deleted file mode 100644
index 5d7d720a1e2..00000000000
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/ErrorResponse.java
+++ /dev/null
@@ -1,75 +0,0 @@
-// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-package com.yahoo.vespa.hosted.provision.restapi.v2;
-
-import com.yahoo.container.jdisc.HttpResponse;
-import com.yahoo.slime.Cursor;
-import com.yahoo.slime.Slime;
-import com.yahoo.slime.JsonFormat;
-
-import java.io.IOException;
-import java.io.OutputStream;
-
-import static com.yahoo.jdisc.Response.Status.*;
-
-/**
- * Error responses with JSON bodies
- *
- * @author bratseth
- */
-public class ErrorResponse extends HttpResponse {
-
- private final Slime slime = new Slime();
- private final String message;
-
- public enum ErrorCode {
- FORBIDDEN,
- UNAUTHORIZED,
- NOT_FOUND,
- BAD_REQUEST,
- METHOD_NOT_ALLOWED,
- INTERNAL_SERVER_ERROR
- }
-
- private ErrorResponse(int code, ErrorCode errorCode, String message) {
- super(code);
- this.message = message;
- Cursor root = slime.setObject();
- root.setString("error-code", errorCode.name());
- root.setString("message", message);
- }
-
- public String message() { return message; }
-
- public static ErrorResponse notFoundError(String message) {
- return new ErrorResponse(NOT_FOUND, ErrorCode.NOT_FOUND, message);
- }
-
- public static ErrorResponse internalServerError(String message) {
- return new ErrorResponse(INTERNAL_SERVER_ERROR, ErrorCode.INTERNAL_SERVER_ERROR, message);
- }
-
- public static ErrorResponse badRequest(String message) {
- return new ErrorResponse(BAD_REQUEST, ErrorCode.BAD_REQUEST, message);
- }
-
- public static ErrorResponse methodNotAllowed(String message) {
- return new ErrorResponse(METHOD_NOT_ALLOWED, ErrorCode.METHOD_NOT_ALLOWED, message);
- }
-
- public static ErrorResponse unauthorized(String message) {
- return new ErrorResponse(UNAUTHORIZED, ErrorCode.UNAUTHORIZED, message);
- }
-
- public static ErrorResponse forbidden(String message) {
- return new ErrorResponse(FORBIDDEN, ErrorCode.FORBIDDEN, message);
- }
-
- @Override
- public void render(OutputStream stream) throws IOException {
- new JsonFormat(true).encode(stream, slime);
- }
-
- @Override
- public String getContentType() { return "application/json"; }
-
-}
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/HostCapacityResponse.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/HostCapacityResponse.java
index 7b0eb38b628..5402c22498a 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/HostCapacityResponse.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/HostCapacityResponse.java
@@ -1,6 +1,5 @@
package com.yahoo.vespa.hosted.provision.restapi.v2;
-import com.fasterxml.jackson.databind.ObjectMapper;
import com.yahoo.container.jdisc.HttpRequest;
import com.yahoo.container.jdisc.HttpResponse;
import com.yahoo.slime.Cursor;
@@ -16,6 +15,9 @@ import java.util.Arrays;
import java.util.List;
import java.util.Optional;
+/**
+ * @author mgimle
+ */
public class HostCapacityResponse extends HttpResponse {
private final StringBuilder text;
private final Slime slime;
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/LoadBalancersApiHandler.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/LoadBalancersApiHandler.java
index 6ffac2c0fbc..24aa1fe0b25 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/LoadBalancersApiHandler.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/LoadBalancersApiHandler.java
@@ -4,6 +4,7 @@ package com.yahoo.vespa.hosted.provision.restapi.v2;
import com.yahoo.container.jdisc.HttpRequest;
import com.yahoo.container.jdisc.HttpResponse;
import com.yahoo.container.jdisc.LoggingRequestHandler;
+import com.yahoo.restapi.ErrorResponse;
import com.yahoo.vespa.hosted.provision.NoSuchNodeException;
import com.yahoo.vespa.hosted.provision.NodeRepository;
import com.yahoo.yolean.Exceptions;
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/MessageResponse.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/MessageResponse.java
deleted file mode 100644
index 51b1eebf55f..00000000000
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/MessageResponse.java
+++ /dev/null
@@ -1,33 +0,0 @@
-// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-package com.yahoo.vespa.hosted.provision.restapi.v2;
-
-import com.yahoo.container.jdisc.HttpResponse;
-import com.yahoo.slime.JsonFormat;
-import com.yahoo.slime.Slime;
-
-import java.io.IOException;
-import java.io.OutputStream;
-
-/**
- * A 200 ok response with a message in JSON
- *
- * @author bratseth
- */
-public class MessageResponse extends HttpResponse {
-
- private final Slime slime = new Slime();
-
- public MessageResponse(String message) {
- super(200);
- slime.setObject().setString("message", message);
- }
-
- @Override
- public void render(OutputStream stream) throws IOException {
- new JsonFormat(true).encode(stream, slime);
- }
-
- @Override
- public String getContentType() { return "application/json"; }
-
-}
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/NodesApiHandler.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/NodesApiHandler.java
index a2ebcc29078..95893730af9 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/NodesApiHandler.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/NodesApiHandler.java
@@ -12,6 +12,8 @@ import com.yahoo.container.jdisc.HttpRequest;
import com.yahoo.container.jdisc.HttpResponse;
import com.yahoo.container.jdisc.LoggingRequestHandler;
import com.yahoo.io.IOUtils;
+import com.yahoo.restapi.ErrorResponse;
+import com.yahoo.restapi.MessageResponse;
import com.yahoo.restapi.Path;
import com.yahoo.slime.ArrayTraverser;
import com.yahoo.slime.Inspector;
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/ResourcesResponse.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/ResourcesResponse.java
index 3cc9a24dce3..ceb95ce53e0 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/ResourcesResponse.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/restapi/v2/ResourcesResponse.java
@@ -10,7 +10,11 @@ import java.io.IOException;
import java.io.OutputStream;
import java.net.URI;
-/** A response which lists a set of subresources as full urls */
+/**
+ * A response which lists a set of subresources as full urls
+ *
+ * @author bratseth
+ */
public class ResourcesResponse extends HttpResponse {
private final URI parentUrl;