mirror of https://github.com/shred/acme4j
Add method to get a list of alternate certificates
parent
7ecf12f6cb
commit
3cf73e9f5c
|
@ -24,6 +24,7 @@ import java.security.cert.X509Certificate;
|
|||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import edu.umd.cs.findbugs.annotations.Nullable;
|
||||
import org.shredzone.acme4j.connector.Connection;
|
||||
|
@ -110,6 +111,19 @@ public class Certificate extends AcmeResource {
|
|||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns alternate certificate chains, if available.
|
||||
*
|
||||
* @return Alternate certificate chains, or empty if there are none.
|
||||
* @since 2.11
|
||||
*/
|
||||
public List<Certificate> getAlternateCertificates() {
|
||||
Login login = getLogin();
|
||||
return getAlternates().stream()
|
||||
.map(login::bindCertificate)
|
||||
.collect(Collectors.toList());
|
||||
}
|
||||
|
||||
/**
|
||||
* Writes the certificate to the given writer. It is written in PEM format, with the
|
||||
* end-entity cert coming first, followed by the intermediate ceritificates.
|
||||
|
|
|
@ -113,6 +113,11 @@ public class CertificateTest {
|
|||
assertThat(cert.getAlternates().get(0), is(url("https://example.com/acme/alt-cert/1")));
|
||||
assertThat(cert.getAlternates().get(1), is(url("https://example.com/acme/alt-cert/2")));
|
||||
|
||||
assertThat(cert.getAlternateCertificates(), is(notNullValue()));
|
||||
assertThat(cert.getAlternateCertificates().size(), is(2));
|
||||
assertThat(cert.getAlternateCertificates().get(0).getLocation(), is(url("https://example.com/acme/alt-cert/1")));
|
||||
assertThat(cert.getAlternateCertificates().get(1).getLocation(), is(url("https://example.com/acme/alt-cert/2")));
|
||||
|
||||
provider.close();
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue