diff options
author | Martin Polden <mpolden@mpolden.no> | 2023-07-05 15:43:32 +0200 |
---|---|---|
committer | Martin Polden <mpolden@mpolden.no> | 2023-07-06 13:56:42 +0200 |
commit | 05803b989353686394eca5c17cefdb2525f2fd1d (patch) | |
tree | 93f55c9e471e008fafbfab7688269cc03c6876c1 /controller-api | |
parent | e5b89c6a148d80cfef77baa52e383b642648e194 (diff) |
EndpointCertificateRequestMetadata -> EndpointCertificateRequest
Diffstat (limited to 'controller-api')
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 + '\'' + - '}'; - } -} |