diff options
author | Valerij Fredriksen <valerijf@verizonmedia.com> | 2019-12-06 12:45:22 +0100 |
---|---|---|
committer | Valerij Fredriksen <valerijf@verizonmedia.com> | 2019-12-06 12:45:22 +0100 |
commit | 2714d1971c8c9ba748bfc03d272f45a9c2e0f191 (patch) | |
tree | c7beaf673ae0c0e6416ddb7dbbdfb94ac2f5b929 | |
parent | 9853a5e5473c662713806d679245c7679977eea5 (diff) |
Add optional /api prefix to /deployment/v1 API
2 files changed, 7 insertions, 7 deletions
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/role/PathGroup.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/role/PathGroup.java index 26bf189dd3d..665a023b7d2 100644 --- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/role/PathGroup.java +++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/role/PathGroup.java @@ -174,13 +174,13 @@ enum PathGroup { /** Paths which contain (not very strictly) classified information about, e.g., customers. */ classifiedInfo("/cost/v1/{*}", - "/deployment/v1/{*}", "/", "/d/{*}", "/statuspage/v1/{*}"), /** Same as classifiedInfo, but with optional /api prefix */ classifiedApiInfo(Optional.of("/api"), + "/deployment/v1/{*}", "/user/v1/user"), /** Paths providing public information. */ diff --git a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/deployment/DeploymentApiHandler.java b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/deployment/DeploymentApiHandler.java index e33f6f0963b..126579263a9 100644 --- a/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/deployment/DeploymentApiHandler.java +++ b/controller-server/src/main/java/com/yahoo/vespa/hosted/controller/restapi/deployment/DeploymentApiHandler.java @@ -8,14 +8,14 @@ import com.yahoo.config.provision.HostName; 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.restapi.Path; +import com.yahoo.restapi.SlimeJsonResponse; +import com.yahoo.restapi.Uri; import com.yahoo.slime.Cursor; import com.yahoo.slime.Slime; import com.yahoo.vespa.hosted.controller.Controller; import com.yahoo.vespa.hosted.controller.application.ApplicationList; -import com.yahoo.restapi.ErrorResponse; -import com.yahoo.restapi.SlimeJsonResponse; -import com.yahoo.restapi.Uri; import com.yahoo.vespa.hosted.controller.application.TenantAndApplicationId; import com.yahoo.vespa.hosted.controller.deployment.JobList; import com.yahoo.vespa.hosted.controller.deployment.Run; @@ -31,8 +31,6 @@ import java.util.Optional; import java.util.logging.Level; import java.util.stream.Collectors; -import static java.util.Comparator.comparing; - /** * This implements the deployment/v1 API which provides information about the status of Vespa platform and * application deployments. @@ -42,6 +40,8 @@ import static java.util.Comparator.comparing; @SuppressWarnings("unused") // Injected public class DeploymentApiHandler extends LoggingRequestHandler { + private static final String OPTIONAL_PREFIX = "/api"; + private final Controller controller; public DeploymentApiHandler(LoggingRequestHandler.Context parentCtx, Controller controller) { @@ -68,7 +68,7 @@ public class DeploymentApiHandler extends LoggingRequestHandler { } private HttpResponse handleGET(HttpRequest request) { - Path path = new Path(request.getUri()); + Path path = new Path(request.getUri(), OPTIONAL_PREFIX); if (path.matches("/deployment/v1/")) return root(request); return ErrorResponse.notFoundError("Nothing at " + path); } |