diff options
author | Valerij Fredriksen <valerijf@verizonmedia.com> | 2021-03-01 16:32:21 +0100 |
---|---|---|
committer | Valerij Fredriksen <valerijf@verizonmedia.com> | 2021-03-01 16:32:21 +0100 |
commit | ebba721206b988a86e50b0f85339bf89709dbd36 (patch) | |
tree | 613708a8c6c673e0b730e721cbf24ab88f47748d /controller-api | |
parent | 4410995dd4db3c617788a857da16fb1c787b586c (diff) |
Add bindings for archive methods
Diffstat (limited to 'controller-api')
2 files changed, 37 insertions, 0 deletions
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/noderepository/ArchiveList.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/noderepository/ArchiveList.java new file mode 100644 index 00000000000..562316cc771 --- /dev/null +++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/noderepository/ArchiveList.java @@ -0,0 +1,22 @@ +// Copyright Verizon Media. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. +package com.yahoo.vespa.hosted.controller.api.integration.noderepository; + +import com.fasterxml.jackson.annotation.JsonIgnoreProperties; +import com.fasterxml.jackson.annotation.JsonProperty; + +import java.util.ArrayList; +import java.util.List; + +@JsonIgnoreProperties(ignoreUnknown = true) +public class ArchiveList { + @JsonProperty("archives") + public List<Archive> archives = new ArrayList<>(); + + public static class Archive { + @JsonProperty("tenant") + public String tenant; + + @JsonProperty("uri") + public String uri; + } +} diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/noderepository/ProvisionResource.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/noderepository/ProvisionResource.java index 337b193a332..b5f86a46e87 100644 --- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/noderepository/ProvisionResource.java +++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/noderepository/ProvisionResource.java @@ -1,6 +1,8 @@ // Copyright 2018 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.integration.noderepository; +import com.yahoo.config.provision.TenantName; + import javax.ws.rs.Consumes; import javax.ws.rs.DELETE; import javax.ws.rs.GET; @@ -11,6 +13,7 @@ import javax.ws.rs.Path; import javax.ws.rs.PathParam; import javax.ws.rs.QueryParam; import javax.ws.rs.core.MediaType; +import java.net.URI; import java.util.Collection; /** @@ -107,5 +110,17 @@ public interface ProvisionResource { @Path("/upgrade/firmware") String cancelFirmwareChecks(); + @GET + @Path("/archive") + ArchiveList listArchives(); + + @POST + @Path("/archive/{tenant}") + String patchArchiveUri(@PathParam("tenant") TenantName tenant, URI uri, + @HeaderParam("X-HTTP-Method-Override") String patchOverride); + + @DELETE + @Path("/archive/{tenant}") + String removeArchiveUri(@PathParam("tenant") TenantName tenant); } |