summaryrefslogtreecommitdiffstats
path: root/controller-api
diff options
context:
space:
mode:
authorMartin Polden <mpolden@mpolden.no>2023-07-05 15:43:32 +0200
committerMartin Polden <mpolden@mpolden.no>2023-07-06 13:56:42 +0200
commit05803b989353686394eca5c17cefdb2525f2fd1d (patch)
tree93f55c9e471e008fafbfab7688269cc03c6876c1 /controller-api
parente5b89c6a148d80cfef77baa52e383b642648e194 (diff)
EndpointCertificateRequestMetadata -> EndpointCertificateRequest
Diffstat (limited to 'controller-api')
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/EndpointCertificateDetails.java4
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/EndpointCertificateProvider.java2
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/EndpointCertificateProviderMock.java47
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/EndpointCertificateRequest.java18
-rw-r--r--controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/EndpointCertificateRequestMetadata.java175
5 files changed, 44 insertions, 202 deletions
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/EndpointCertificateDetails.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/EndpointCertificateDetails.java
index 486a6f5b580..18565011d25 100644
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/EndpointCertificateDetails.java
+++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/EndpointCertificateDetails.java
@@ -4,7 +4,7 @@ package com.yahoo.vespa.hosted.controller.api.integration.certificates;
import java.util.List;
/**
- * This record is used when requesting additional metadata about an application's endpoint certificate from the provider.
+ * This record is used when requesting additional details about an application's endpoint certificate from the provider.
*
* @author andreer
*/
@@ -14,7 +14,7 @@ public record EndpointCertificateDetails(
String status,
String ticketId,
String athenzDomain,
- List<EndpointCertificateRequestMetadata.DnsNameStatus> dnsNames,
+ List<EndpointCertificateRequest.DnsNameStatus> dnsNames,
String durationSec,
String expiry,
String privateKeyKgname,
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/EndpointCertificateProvider.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/EndpointCertificateProvider.java
index cf86dcd2e4f..865abeac031 100644
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/EndpointCertificateProvider.java
+++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/EndpointCertificateProvider.java
@@ -13,7 +13,7 @@ public interface EndpointCertificateProvider {
EndpointCertificate requestCaSignedCertificate(String endpointCertificatePrefix, List<String> dnsNames, Optional<EndpointCertificate> currentCert, String algo, boolean useAlternativeProvider);
- List<EndpointCertificateRequestMetadata> listCertificates();
+ List<EndpointCertificateRequest> listCertificates();
void deleteCertificate(String requestId);
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/EndpointCertificateProviderMock.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/EndpointCertificateProviderMock.java
index 53a6bad2032..223eeb19a86 100644
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/EndpointCertificateProviderMock.java
+++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/EndpointCertificateProviderMock.java
@@ -38,24 +38,23 @@ public class EndpointCertificateProviderMock implements EndpointCertificateProvi
}
@Override
- public List<EndpointCertificateRequestMetadata> listCertificates() {
-
+ public List<EndpointCertificateRequest> listCertificates() {
return certificates.values().stream()
- .map(p -> new EndpointCertificateRequestMetadata(
- p.leafRequestId().orElse(p.rootRequestId()),
- "requestor",
- "ticketId",
- "athenzDomain",
- p.requestedDnsSans().stream()
- .map(san -> new EndpointCertificateRequestMetadata.DnsNameStatus(san, "done"))
- .toList(),
- 3600,
- "ok",
- "2021-09-28T00:14:31.946562037Z",
- p.expiry().orElseThrow(),
- p.issuer(),
- "rsa_2048"
- ))
+ .map(p -> new EndpointCertificateRequest(
+ p.leafRequestId().orElse(p.rootRequestId()),
+ "requestor",
+ "ticketId",
+ "athenzDomain",
+ p.requestedDnsSans().stream()
+ .map(san -> new EndpointCertificateRequest.DnsNameStatus(san, "done"))
+ .toList(),
+ 3600,
+ "ok",
+ "2021-09-28T00:14:31.946562037Z",
+ p.expiry().orElseThrow(),
+ p.issuer(),
+ "rsa_2048"
+ ))
.toList();
}
@@ -67,23 +66,23 @@ public class EndpointCertificateProviderMock implements EndpointCertificateProvi
@Override
public EndpointCertificateDetails certificateDetails(String requestId) {
- var metadata = certificates.get(requestId);
+ var request = certificates.get(requestId);
- if (metadata==null) throw new IllegalArgumentException("Unknown certificate request");
+ if (request == null) throw new IllegalArgumentException("Unknown certificate request");
return new EndpointCertificateDetails(requestId,
"requestor",
"ok",
"ticket_id",
"athenz_domain",
- metadata.requestedDnsSans().stream().map(name -> new EndpointCertificateRequestMetadata.DnsNameStatus(name, "done")).toList(),
+ request.requestedDnsSans().stream().map(name -> new EndpointCertificateRequest.DnsNameStatus(name, "done")).toList(),
"duration_sec",
"expiry",
- metadata.keyName(),
- metadata.keyName(),
+ request.keyName(),
+ request.keyName(),
"0",
- metadata.certName(),
- metadata.certName(),
+ request.certName(),
+ request.certName(),
"0",
"2021-09-28T00:14:31.946562037Z",
true,
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/EndpointCertificateRequest.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/EndpointCertificateRequest.java
new file mode 100644
index 00000000000..877f7ed64b0
--- /dev/null
+++ b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/EndpointCertificateRequest.java
@@ -0,0 +1,18 @@
+// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
+package com.yahoo.vespa.hosted.controller.api.integration.certificates;
+
+import java.util.List;
+
+/**
+ * This class is used for details about an application's endpoint certificate received from the certificate provider.
+ *
+ * @param createTime ISO 8601
+ * @author andreer
+ */
+public record EndpointCertificateRequest(String requestId, String requestor, String ticketId, String athenzDomain,
+ List<DnsNameStatus> dnsNames, long durationSec, String status,
+ String createTime, long expiry, String issuer, String publicKeyAlgo) {
+
+ public record DnsNameStatus(String dnsName, String status) {}
+
+}
diff --git a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/EndpointCertificateRequestMetadata.java b/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/EndpointCertificateRequestMetadata.java
deleted file mode 100644
index 339389105e6..00000000000
--- a/controller-api/src/main/java/com/yahoo/vespa/hosted/controller/api/integration/certificates/EndpointCertificateRequestMetadata.java
+++ /dev/null
@@ -1,175 +0,0 @@
-// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-package com.yahoo.vespa.hosted.controller.api.integration.certificates;
-
-import java.util.List;
-import java.util.Objects;
-
-/**
- * This class is used for metadata about an application's endpoint certificate received from the certificate provider.
- *
- * @author andreer
- */
-public class EndpointCertificateRequestMetadata {
-
- public EndpointCertificateRequestMetadata(String requestId,
- String requestor,
- String ticketId,
- String athenzDomain,
- List<DnsNameStatus> dnsNames,
- long durationSec,
- String status,
- String createTime,
- long expiry,
- String issuer,
- String publicKeyAlgo) {
- this.requestId = requestId;
- this.requestor = requestor;
- this.ticketId = ticketId;
- this.athenzDomain = athenzDomain;
- this.dnsNames = dnsNames;
- this.durationSec = durationSec;
- this.status = status;
- this.createTime = createTime;
- this.expiry = expiry;
- this.issuer = issuer;
- this.publicKeyAlgo = publicKeyAlgo;
- }
-
- public static class DnsNameStatus {
- public final String dnsName;
- public final String status;
-
- public DnsNameStatus(String dnsName, String status) {
- this.dnsName = dnsName;
- this.status = status;
- }
-
- @Override
- public boolean equals(Object o) {
- if (this == o) return true;
- if (o == null || getClass() != o.getClass()) return false;
- DnsNameStatus that = (DnsNameStatus) o;
- return dnsName.equals(that.dnsName) && status.equals(that.status);
- }
-
- @Override
- public int hashCode() {
- return Objects.hash(dnsName, status);
- }
-
- @Override
- public String toString() {
- return "DnsNameStatus{" +
- "dnsName='" + dnsName + '\'' +
- ", status='" + status + '\'' +
- '}';
- }
- }
-
- private final String requestId;
- private final String requestor;
- private final String ticketId;
- private final String athenzDomain;
- private final List<DnsNameStatus> dnsNames;
- private final long durationSec;
- private final String status;
- private final String createTime; // ISO 8601
- private final long expiry;
- private final String issuer;
- private final String publicKeyAlgo;
-
- public String requestId() {
- return requestId;
- }
-
- public String requestor() {
- return requestor;
- }
-
- public String ticketId() {
- return ticketId;
- }
-
- public String athenzDomain() {
- return athenzDomain;
- }
-
- public List<DnsNameStatus> dnsNames() {
- return dnsNames;
- }
-
- public long durationSec() {
- return durationSec;
- }
-
- public String status() {
- return status;
- }
-
- public String createTime() {
- return createTime;
- }
-
- public long expiry() {
- return expiry;
- }
-
- public String issuer() {
- return issuer;
- }
-
- public String publicKeyAlgo() {
- return publicKeyAlgo;
- }
-
- @Override
- public boolean equals(Object o) {
- if (this == o) return true;
- if (o == null || getClass() != o.getClass()) return false;
- EndpointCertificateRequestMetadata that = (EndpointCertificateRequestMetadata) o;
- return durationSec == that.durationSec &&
- expiry == that.expiry &&
- requestId.equals(that.requestId) &&
- requestor.equals(that.requestor) &&
- ticketId.equals(that.ticketId) &&
- athenzDomain.equals(that.athenzDomain) &&
- dnsNames.equals(that.dnsNames) &&
- status.equals(that.status) &&
- createTime.equals(that.createTime) &&
- issuer.equals(that.issuer) &&
- publicKeyAlgo.equals(that.publicKeyAlgo);
- }
-
- @Override
- public int hashCode() {
- return Objects.hash(
- requestId,
- requestor,
- ticketId,
- athenzDomain,
- dnsNames,
- durationSec,
- status,
- createTime,
- expiry,
- issuer,
- publicKeyAlgo);
- }
-
- @Override
- public String toString() {
- return "EndpointCertificateRequestMetadata{" +
- "requestId='" + requestId + '\'' +
- ", requestor='" + requestor + '\'' +
- ", ticketId='" + ticketId + '\'' +
- ", athenzDomain='" + athenzDomain + '\'' +
- ", dnsNames=" + dnsNames +
- ", durationSec=" + durationSec +
- ", status='" + status + '\'' +
- ", createTime='" + createTime + '\'' +
- ", expiry=" + expiry +
- ", issuer='" + issuer + '\'' +
- ", publicKeyAlgo='" + publicKeyAlgo + '\'' +
- '}';
- }
-}