summaryrefslogtreecommitdiffstats
path: root/controller-api/src
diff options
context:
space:
mode:
authorValerij Fredriksen <valerijf@verizonmedia.com>2019-07-09 09:02:53 +0200
committerValerij Fredriksen <valerijf@verizonmedia.com>2019-07-09 15:31:49 +0200
commitc389e0c7e67410a6601cb80d77c80b3c1df3740b (patch)
tree2b739af38772da54fe7952cca3ad3a94de8badcc /controller-api/src
parentf1a9976c46aa77325dda5053f8d12fba3462c98e (diff)
Remove Jax-RS zone APIs definitions
Diffstat (limited to 'controller-api/src')
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/zone/v1/ZoneApi.java35
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/zone/v1/ZoneReference.java64
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/zone/v1/package-info.java5
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/zone/v2/ZoneApiV2.java302
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/zone/v2/ZoneReference.java27
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/zone/v2/ZoneReferences.java31
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/zone/v2/package-info.java5
7 files changed, 0 insertions, 469 deletions
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/zone/v1/ZoneApi.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/zone/v1/ZoneApi.java
deleted file mode 100644
index 7bb4bfc6467..00000000000
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/zone/v1/ZoneApi.java
+++ /dev/null
@@ -1,35 +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.controller.api.zone.v1;
-
-import javax.ws.rs.Consumes;
-import javax.ws.rs.GET;
-import javax.ws.rs.Path;
-import javax.ws.rs.PathParam;
-import javax.ws.rs.Produces;
-import javax.ws.rs.core.MediaType;
-import java.util.List;
-
-/**
- * Used by build system and command-line tool.
- *
- * @author smorgrav
- */
-@Produces(MediaType.APPLICATION_JSON)
-@Consumes(MediaType.APPLICATION_JSON)
-@Path(ZoneApi.API_VERSION)
-public interface ZoneApi {
-
- String API_VERSION = "v1";
-
- @GET
- @Path("")
- List<ZoneReference.Environment> listEnvironments();
-
- @GET
- @Path("/environment/{environment}")
- List<ZoneReference.Region> listRegions(@PathParam("environment") String env);
-
- @GET
- @Path("/environment/{environment}/default")
- ZoneReference.Region defaultRegion(@PathParam("environment") String env);
-}
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/zone/v1/ZoneReference.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/zone/v1/ZoneReference.java
deleted file mode 100644
index 82d03d72acd..00000000000
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/zone/v1/ZoneReference.java
+++ /dev/null
@@ -1,64 +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.controller.api.zone.v1;
-
-import com.fasterxml.jackson.annotation.JsonProperty;
-
-import java.net.URI;
-
-/**
- * @author smorgrav
- */
-public class ZoneReference {
-
- public static class Environment {
- @JsonProperty("name")
- private String name;
-
- @JsonProperty("url")
- private URI url;
-
- public String getName() {
- return name;
- }
-
- public Environment setName(String name) {
- this.name = name;
- return this;
- }
-
- public URI getUrl() {
- return url;
- }
-
- public Environment setUrl(URI url) {
- this.url = url;
- return this;
- }
- }
-
- public static class Region {
- @JsonProperty("name")
- private String name;
-
- @JsonProperty("url")
- private URI url;
-
- public String getName() {
- return name;
- }
-
- public Region setName(String name) {
- this.name = name;
- return this;
- }
-
- public URI getUrl() {
- return url;
- }
-
- public Region setUrl(URI url) {
- this.url = url;
- return this;
- }
- }
-}
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/zone/v1/package-info.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/zone/v1/package-info.java
deleted file mode 100644
index e3275ff35fa..00000000000
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/zone/v1/package-info.java
+++ /dev/null
@@ -1,5 +0,0 @@
-// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-@ExportPackage
-package com.yahoo.vespa.hosted.controller.api.zone.v1;
-
-import com.yahoo.osgi.annotation.ExportPackage;
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/zone/v2/ZoneApiV2.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/zone/v2/ZoneApiV2.java
deleted file mode 100644
index a6d7614e862..00000000000
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/zone/v2/ZoneApiV2.java
+++ /dev/null
@@ -1,302 +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.controller.api.zone.v2;
-
-import com.fasterxml.jackson.databind.JsonNode;
-import com.yahoo.vespa.hosted.controller.api.identifiers.ApplicationId;
-import com.yahoo.vespa.hosted.controller.api.identifiers.EnvironmentId;
-import com.yahoo.vespa.hosted.controller.api.identifiers.InstanceId;
-import com.yahoo.vespa.hosted.controller.api.identifiers.RegionId;
-import com.yahoo.vespa.hosted.controller.api.identifiers.TenantId;
-import com.yahoo.vespa.hosted.controller.api.integration.noderepository.MaintenanceJobList;
-import com.yahoo.vespa.hosted.controller.api.integration.noderepository.NodeList;
-import com.yahoo.vespa.hosted.controller.api.integration.noderepository.NodeRepositoryNode;
-import com.yahoo.vespa.hosted.controller.api.integration.noderepository.NodeState;
-import com.yahoo.vespa.hosted.controller.api.integration.routing.RotationStatus;
-import com.yahoo.vespa.hosted.controller.api.integration.routing.status.StatusReply;
-import com.yahoo.vespa.hosted.controller.api.integration.routing.status.ZoneStatusReply;
-
-import javax.ws.rs.Consumes;
-import javax.ws.rs.DELETE;
-import javax.ws.rs.GET;
-import javax.ws.rs.HeaderParam;
-import javax.ws.rs.POST;
-import javax.ws.rs.PUT;
-import javax.ws.rs.Path;
-import javax.ws.rs.PathParam;
-import javax.ws.rs.Produces;
-import javax.ws.rs.QueryParam;
-import javax.ws.rs.core.MediaType;
-import javax.ws.rs.core.Response;
-import java.util.Collection;
-import java.util.List;
-import java.util.Set;
-
-/**
- * Aka the controller proxy service.
- *
- * Proxies calls to correct config server with the additional feature of
- * retry and fail detection (ping).
- */
-@Path(ZoneApiV2.API_VERSION)
-@Produces(MediaType.APPLICATION_JSON)
-@Consumes(MediaType.APPLICATION_JSON)
-public interface ZoneApiV2 {
-
- String API_VERSION = "v2";
-
- @GET
- @Path("/")
- ZoneReferences listZones();
-
- @GET
- @Path("/{environment}/{region}/{proxy_request: .+}")
- Response proxyGet(
- @PathParam("environment") String env,
- @PathParam("region") String region,
- @PathParam("proxy_request") String proxyRequest);
-
- @POST
- @Path("/{environment}/{region}/{proxy_request: .+}")
- Response proxyPost(
- @PathParam("environment") String env,
- @PathParam("region") String region,
- @PathParam("proxy_request") String proxyRequest);
-
- @PUT
- @Path("/{environment}/{region}/{proxy_request: .+}")
- Response proxyPut(
- @PathParam("environment") String env,
- @PathParam("region") String region,
- @PathParam("proxy_request") String proxyRequest);
-
- @DELETE
- @Path("/{environment}/{region}/{proxy_request: .+}")
- Response proxyDelete(
- @PathParam("environment") String env,
- @PathParam("region") String region,
- @PathParam("proxy_request") String proxyRequest);
-
- // Explicit mappings of some proxy requests (to enable creation of proxy clients with javax.ws.rs)
-
- @GET
- @Path("/{environmentId}/{regionId}/application/v2/tenant/{tenantId}/application/{applicationId}/environment/{environmentId}/region/{regionId}/instance/{instanceId}/serviceconverge")
- Response waitForConfigConvergeV2(@PathParam("tenantId") TenantId tenantId,
- @PathParam("applicationId") ApplicationId applicationId,
- @PathParam("environmentId") EnvironmentId environmentId,
- @PathParam("regionId") RegionId regionId,
- @PathParam("instanceId") InstanceId instanceId,
- @QueryParam("timeout") long timeoutInSeconds);
- @GET
- @Path("/{environmentId}/{regionId}/application/v2/tenant/{tenantId}/application/{applicationId}/environment/{environmentId}/region/{regionId}/instance/{instanceId}/serviceconverge/{host}")
- Response waitForConfigConvergeV2(@PathParam("tenantId") TenantId tenantId,
- @PathParam("applicationId") ApplicationId applicationId,
- @PathParam("environmentId") EnvironmentId environmentId,
- @PathParam("regionId") RegionId regionId,
- @PathParam("instanceId") InstanceId instanceId,
- @PathParam("host") String host,
- @QueryParam("timeout") long timeoutInSeconds);
-
- @GET
- @Path("/{environmentId}/{regionId}/config/v2/tenant/{tenantId}/application/{applicationId}/prelude.fastsearch.documentdb-info/{clusterid}/search/cluster.{clusterid}")
- JsonNode getConfigWithDocumentTypes(@PathParam("tenantId") TenantId tenantId,
- @PathParam("applicationId") ApplicationId applicationId,
- @PathParam("environmentId") EnvironmentId environmentId,
- @PathParam("regionId") RegionId regionId,
- @PathParam("clusterid") String clusterid,
- @QueryParam("timeout") long timeoutInSeconds);
-
- @GET
- @Path("/{environmentId}/{regionId}/config/v2/tenant/{tenantId}/application/{applicationId}/environment/{environmentId}/region/{regionId}/instance/{instanceId}/cloud.config.cluster-list")
- JsonNode getVespaConfigClusterList(@PathParam("tenantId") TenantId tenantId,
- @PathParam("applicationId") ApplicationId applicationId,
- @PathParam("instanceId") InstanceId instanceId,
- @PathParam("environmentId") EnvironmentId environmentId,
- @PathParam("regionId") RegionId regionId,
- @QueryParam("timeout") long timeoutInSeconds);
-
-
- @POST
- @Path("/{environmentId}/{regionId}/nodes/v2/node")
- String addNodes(@PathParam("environmentId") EnvironmentId environmentId,
- @PathParam("regionId") RegionId regionId,
- Collection<NodeRepositoryNode> node);
-
- @DELETE
- @Path("/{environmentId}/{regionId}/nodes/v2/node/{hostname}")
- String deleteNode(@PathParam("environmentId") EnvironmentId environmentId,
- @PathParam("regionId") RegionId regionId,
- @PathParam("hostname") String hostname);
-
- @GET
- @Path("/{environmentId}/{regionId}/nodes/v2/node/{hostname}")
- NodeRepositoryNode getNode(@PathParam("environmentId") EnvironmentId environmentId,
- @PathParam("regionId") RegionId regionId,
- @PathParam("hostname") String hostname);
-
- @POST
- @Path("/{environmentId}/{regionId}/nodes/v2/node/{hostname}")
- String patchNode(@PathParam("environmentId") EnvironmentId environmentId,
- @PathParam("regionId") RegionId regionId,
- @PathParam("hostname") String hostname,
- NodeRepositoryNode patchValues,
- @HeaderParam("X-HTTP-Method-Override") String patchOverride);
-
- @GET
- @Path("/{environmentId}/{regionId}/nodes/v2/node/")
- NodeList listNodes(@PathParam("environmentId") EnvironmentId environmentId,
- @PathParam("regionId") RegionId regionId,
- @QueryParam("recursive") boolean recursive);
-
- @GET
- @Path("/{environmentId}/{regionId}/nodes/v2/node/")
- NodeList listNodes(@PathParam("environmentId") EnvironmentId environmentId,
- @PathParam("regionId") RegionId regionId,
- @QueryParam("application") String applicationString,
- @QueryParam("recursive") boolean recursive);
-
- @PUT
- @Path("/{environmentId}/{regionId}/nodes/v2/state/{state}/{hostname}")
- String setNodeState(@PathParam("environmentId") EnvironmentId environmentId,
- @PathParam("regionId") RegionId regionId,
- @PathParam("state") NodeState state,
- @PathParam("hostname") String hostname);
-
- @POST
- @Path("/{environmentId}/{regionId}/nodes/v2/command/reboot")
- String rebootNode(@PathParam("environmentId") EnvironmentId environmentId,
- @PathParam("regionId") RegionId regionId,
- @QueryParam("hostname") String hostname);
-
- @POST
- @Path("/{environmentId}/{regionId}/nodes/v2/command/restart")
- String restartNode(@PathParam("environmentId") EnvironmentId environmentId,
- @PathParam("regionId") RegionId regionId,
- @QueryParam("hostname") String hostname);
-
- @GET
- @Path("/{environmentId}/{regionId}/nodes/v2/maintenance/")
- MaintenanceJobList listMaintenanceJobs(@PathParam("environmentId") EnvironmentId environmentId,
- @PathParam("regionId") RegionId regionId);
-
- @POST
- @Path("/{environmentId}/{regionId}/nodes/v2/maintenance/inactive/{jobname}")
- String disableMaintenanceJob(@PathParam("environmentId") EnvironmentId environmentId,
- @PathParam("regionId") RegionId regionId,
- @PathParam("jobname") String jobname);
-
- @DELETE
- @Path("/{environmentId}/{regionId}/nodes/v2/maintenance/inactive/{jobname}")
- String enableMaintenanceJob(@PathParam("environmentId") EnvironmentId environmentId,
- @PathParam("regionId") RegionId regionId,
- @PathParam("jobname") String jobname);
-
-
- @GET
- @Path("/{environmentId}/{regionId}/orchestrator/v1/suspensions/applications")
- Set<String> getApplications(@PathParam("environmentId") EnvironmentId environmentId,
- @PathParam("regionId") RegionId regionId);
-
- @GET
- @Path("/{environmentId}/{regionId}/orchestrator/v1/suspensions/applications/{application}")
- void getApplication(@PathParam("environmentId") EnvironmentId environmentId,
- @PathParam("regionId") RegionId regionId,
- @PathParam("application") String applicationIdString);
-
- @POST
- @Path("/{environmentId}/{regionId}/orchestrator/v1/suspensions/applications")
- void suspendApplication(@PathParam("environmentId") EnvironmentId environmentId,
- @PathParam("regionId") RegionId regionId,
- String applicationIdString);
-
- @DELETE
- @Path("/{environmentId}/{regionId}/orchestrator/v1/suspensions/applications/{application}")
- void resumeApplication(@PathParam("environmentId") EnvironmentId environmentId,
- @PathParam("regionId") RegionId regionId,
- @PathParam("application") String applicationIdString);
-
- /**
- * Get names of all rotations with the status OUT
- *
- * @return List of rotation names.
- */
- @GET
- @Produces(MediaType.APPLICATION_JSON)
- @Path("/{environmentId}/{regionId}/routing/v1/status")
- List<String> listRotations(@PathParam("environmentId") EnvironmentId environmentId,
- @PathParam("regionId") RegionId regionId);
-
- /**
- * Get the status of a rotation
- *
- * @param rotation The name of a rotation.
- * @return The current status of the rotation, wrapped into a {@link StatusReply} object. The value is {@link
- * RotationStatus#IN} for any rotation that has not been explicitly set to {@link RotationStatus#OUT} using {@link
- * #setRotationStatus(EnvironmentId, RegionId, String, StatusReply)}.
- */
- @GET
- @Path("/{environmentId}/{regionId}/routing/v1/status/{rotation}")
- @Produces(MediaType.APPLICATION_JSON)
- StatusReply getRotationStatus(@PathParam("environmentId") EnvironmentId environmentId,
- @PathParam("regionId") RegionId regionId,
- @PathParam("rotation") String rotation);
-
- /**
- * Set or modify rotation status according to payload
- *
- * @param rotation The rotation (endpoint) to modify
- * @param payload The name/status/agent/reason to set
- * @return The updated status of the rotation wrapped into a {@link StatusReply} object.
- */
- @PUT
- @Path("/{environmentId}/{regionId}/routing/v1/status/{rotation}")
- @Produces(MediaType.APPLICATION_JSON)
- @Consumes(MediaType.APPLICATION_JSON)
- StatusReply setRotationStatus(@PathParam("environmentId") EnvironmentId environmentId,
- @PathParam("regionId") RegionId regionId,
- @PathParam("rotation") String rotation,
- StatusReply payload);
-
- /**
- * Set the status of a rotation to IN
- *
- * @param rotation The name of a rotation.
- * @return The updated status of the rotation wrapped into a {@link StatusReply} object.
- */
- @DELETE
- @Path("/{environmentId}/{regionId}/routing/v1/status/{rotation}")
- @Produces(MediaType.APPLICATION_JSON)
- @Deprecated
- StatusReply unsetRotation(@PathParam("environmentId") EnvironmentId environmentId,
- @PathParam("regionId") RegionId regionId,
- @PathParam("rotation") String rotation);
-
- /**
- * Set the status of the zone to OUT
- * @return The updated status of the zone wrapped into a {@link ZoneStatusReply} object.
- */
- @PUT
- @Path("/{environmentId}/{regionId}/routing/v1/status/zone")
- @Produces(MediaType.APPLICATION_JSON)
- ZoneStatusReply setZoneRotationInactive(@PathParam("environmentId") EnvironmentId environmentId,
- @PathParam("regionId") RegionId regionId);
-
- /**
- * Clears the status of the zone. The routing check will fall back to check individual rotations.
- * @return The updated status of the zone wrapped into a {@link ZoneStatusReply} object.
- */
- @DELETE
- @Path("/{environmentId}/{regionId}/routing/v1/status/zone")
- @Produces(MediaType.APPLICATION_JSON)
- ZoneStatusReply unsetZoneRotationInactive(@PathParam("environmentId") EnvironmentId environmentId,
- @PathParam("regionId") RegionId regionId);
-
- /**
- * Get the status of the zone
- * @return The status of the zone wrapped into a {@link ZoneStatusReply} object.
- */
- @GET
- @Path("/{environmentId}/{regionId}/routing/v1/status/zone")
- @Produces(MediaType.APPLICATION_JSON)
- ZoneStatusReply getZoneRotationStatus(@PathParam("environmentId") EnvironmentId environmentId,
- @PathParam("regionId") RegionId regionId);
-}
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/zone/v2/ZoneReference.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/zone/v2/ZoneReference.java
deleted file mode 100644
index 95dc1c2ee7c..00000000000
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/zone/v2/ZoneReference.java
+++ /dev/null
@@ -1,27 +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.controller.api.zone.v2;
-
-import com.fasterxml.jackson.annotation.JsonCreator;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.yahoo.vespa.hosted.controller.api.configserver.Environment;
-import com.yahoo.vespa.hosted.controller.api.configserver.Region;
-
-/**
- * @author mpolden
- */
-@JsonIgnoreProperties(ignoreUnknown = true)
-public class ZoneReference {
-
- @JsonProperty("environment")
- public final Environment environment;
- @JsonProperty("region")
- public final Region region;
-
- @JsonCreator
- public ZoneReference(@JsonProperty("environment") Environment environment, @JsonProperty("region") Region region) {
- this.environment = environment;
- this.region = region;
- }
-
-}
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/zone/v2/ZoneReferences.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/zone/v2/ZoneReferences.java
deleted file mode 100644
index 3a219afa0a6..00000000000
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/zone/v2/ZoneReferences.java
+++ /dev/null
@@ -1,31 +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.controller.api.zone.v2;
-
-import com.fasterxml.jackson.annotation.JsonCreator;
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonProperty;
-
-import java.util.Collections;
-import java.util.List;
-
-/**
- * Wire format for listing the controller URIs for all the available zones
- *
- * @author smorgrav
- */
-@JsonIgnoreProperties(ignoreUnknown = true)
-public class ZoneReferences {
-
- @JsonProperty("uris")
- public final List<String> uris;
-
- @JsonProperty("zones")
- public final List<ZoneReference> zones;
-
- @JsonCreator
- public ZoneReferences(@JsonProperty("uris") List<String> uris, @JsonProperty("zones") List<ZoneReference> zones) {
- this.uris = Collections.unmodifiableList(uris);
- this.zones = Collections.unmodifiableList(zones);
- }
-
-}
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/zone/v2/package-info.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/zone/v2/package-info.java
deleted file mode 100644
index 5d4b1310981..00000000000
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/zone/v2/package-info.java
+++ /dev/null
@@ -1,5 +0,0 @@
-// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-@ExportPackage
-package com.yahoo.vespa.hosted.controller.api.zone.v2;
-
-import com.yahoo.osgi.annotation.ExportPackage;