mirror of https://github.com/shred/acme4j
Cleanup certificate writer
parent
8d78553659
commit
0cae63e449
|
@ -79,9 +79,7 @@ public final class CertificateUtils {
|
||||||
* after use.
|
* after use.
|
||||||
*/
|
*/
|
||||||
public static void writeX509Certificate(X509Certificate cert, Writer w) throws IOException {
|
public static void writeX509Certificate(X509Certificate cert, Writer w) throws IOException {
|
||||||
try (JcaPEMWriter jw = new JcaPEMWriter(w)) {
|
writeX509Certificates(w, cert);
|
||||||
writeCertIfNotNull(jw, cert);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -101,12 +99,10 @@ public final class CertificateUtils {
|
||||||
@Deprecated
|
@Deprecated
|
||||||
public static void writeX509CertificateChain(Writer w, X509Certificate cert, X509Certificate... chain)
|
public static void writeX509CertificateChain(Writer w, X509Certificate cert, X509Certificate... chain)
|
||||||
throws IOException {
|
throws IOException {
|
||||||
try (JcaPEMWriter jw = new JcaPEMWriter(w)) {
|
X509Certificate[] certs = new X509Certificate[chain.length + 1];
|
||||||
writeCertIfNotNull(jw, cert);
|
certs[0] = cert;
|
||||||
for (X509Certificate c : chain) {
|
System.arraycopy(chain, 0, certs, 1, chain.length);
|
||||||
writeCertIfNotNull(jw, c);
|
writeX509Certificates(w, certs);
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -122,20 +118,12 @@ public final class CertificateUtils {
|
||||||
*/
|
*/
|
||||||
public static void writeX509Certificates(Writer w, X509Certificate... certs)
|
public static void writeX509Certificates(Writer w, X509Certificate... certs)
|
||||||
throws IOException {
|
throws IOException {
|
||||||
writeX509CertificateChain(w, null, certs);
|
try (JcaPEMWriter jw = new JcaPEMWriter(w)) {
|
||||||
}
|
for (X509Certificate c : certs) {
|
||||||
|
if (c != null) {
|
||||||
/**
|
jw.writeObject(c);
|
||||||
* Writes an {@link X509Certificate} unless it is {@code null}.
|
}
|
||||||
*
|
}
|
||||||
* @param jw
|
|
||||||
* {@link JcaPEMWriter} to write to
|
|
||||||
* @param cert
|
|
||||||
* {@link X509Certificate} to write, or {@code null}
|
|
||||||
*/
|
|
||||||
private static void writeCertIfNotNull(JcaPEMWriter jw, X509Certificate cert) throws IOException {
|
|
||||||
if (cert != null) {
|
|
||||||
jw.writeObject(cert);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -113,6 +113,12 @@ public class CertificateUtilsTest {
|
||||||
}
|
}
|
||||||
assertThat(countCertificates(out), is(3));
|
assertThat(countCertificates(out), is(3));
|
||||||
|
|
||||||
|
try (StringWriter w = new StringWriter()) {
|
||||||
|
CertificateUtils.writeX509Certificates(w);
|
||||||
|
out = w.toString();
|
||||||
|
}
|
||||||
|
assertThat(countCertificates(out), is(0));
|
||||||
|
|
||||||
try (StringWriter w = new StringWriter()) {
|
try (StringWriter w = new StringWriter()) {
|
||||||
CertificateUtils.writeX509Certificates(w, leaf);
|
CertificateUtils.writeX509Certificates(w, leaf);
|
||||||
out = w.toString();
|
out = w.toString();
|
||||||
|
|
Loading…
Reference in New Issue