in aws-acmpca-certificateauthority/src/main/java/software/amazon/acmpca/certificateauthority/AcmPcaClient.java [47:73]
public String createCertificateAuthority(final ResourceModel model) {
val subject = mapper.map(model.getSubject(), ASN1Subject.class);
val tags = getTags(model);
val certificateAuthorityConfiguration = new CertificateAuthorityConfiguration()
.withKeyAlgorithm(model.getKeyAlgorithm())
.withSigningAlgorithm(model.getSigningAlgorithm())
.withSubject(subject);
val createRequest = new CreateCertificateAuthorityRequest()
.withCertificateAuthorityType(model.getType())
.withCertificateAuthorityConfiguration(certificateAuthorityConfiguration)
.withIdempotencyToken(UUID.randomUUID().toString());
if (!isRevocationConfigurationEmpty(model)) {
val revocationConfiguration = mapper.map(model.getRevocationConfiguration(), RevocationConfiguration.class);
createRequest.setRevocationConfiguration(revocationConfiguration);
}
if (!tags.isEmpty()) {
createRequest.setTags(tags);
}
return clientProxy.injectCredentialsAndInvoke(createRequest, pcaClient::createCertificateAuthority)
.getCertificateAuthorityArn();
}