Search in sources :

Example 1 with GetCertificateResponse

use of software.amazon.awssdk.services.acm.model.GetCertificateResponse in project data-prepper by opensearch-project.

the class ACMCertificateProvider method getCertificate.

public Certificate getCertificate() {
    GetCertificateResponse getCertificateResponse = null;
    long timeSlept = 0L;
    while (getCertificateResponse == null && timeSlept < totalTimeout) {
        try {
            GetCertificateRequest getCertificateRequest = GetCertificateRequest.builder().certificateArn(acmArn).build();
            getCertificateResponse = acmClient.getCertificate(getCertificateRequest);
        } catch (final RequestInProgressException ex) {
            try {
                Thread.sleep(SLEEP_INTERVAL);
            } catch (InterruptedException iex) {
                throw new RuntimeException(iex);
            }
        } catch (final ResourceNotFoundException | InvalidArnException ex) {
            LOG.error("Exception retrieving the certificate with arn: {}", acmArn, ex);
            throw ex;
        }
        timeSlept += SLEEP_INTERVAL;
    }
    if (getCertificateResponse != null) {
        return new Certificate(getCertificateResponse.certificate());
    } else {
        throw new IllegalStateException(String.format("Exception retrieving certificate results. Time spent retrieving certificate is %d ms and total time out set is %d ms.", timeSlept, totalTimeout));
    }
}
Also used : GetCertificateRequest(software.amazon.awssdk.services.acm.model.GetCertificateRequest) RequestInProgressException(software.amazon.awssdk.services.acm.model.RequestInProgressException) GetCertificateResponse(software.amazon.awssdk.services.acm.model.GetCertificateResponse) InvalidArnException(software.amazon.awssdk.services.acm.model.InvalidArnException) ResourceNotFoundException(software.amazon.awssdk.services.acm.model.ResourceNotFoundException) Certificate(com.amazon.dataprepper.plugins.prepper.peerforwarder.certificate.model.Certificate)

Aggregations

Certificate (com.amazon.dataprepper.plugins.prepper.peerforwarder.certificate.model.Certificate)1 GetCertificateRequest (software.amazon.awssdk.services.acm.model.GetCertificateRequest)1 GetCertificateResponse (software.amazon.awssdk.services.acm.model.GetCertificateResponse)1 InvalidArnException (software.amazon.awssdk.services.acm.model.InvalidArnException)1 RequestInProgressException (software.amazon.awssdk.services.acm.model.RequestInProgressException)1 ResourceNotFoundException (software.amazon.awssdk.services.acm.model.ResourceNotFoundException)1