Use Base64.encoder() in ODLKeyTool 24/97724/2
authorRobert Varga <robert.varga@pantheon.tech>
Sun, 3 Oct 2021 16:43:59 +0000 (18:43 +0200)
committerRobert Varga <robert.varga@pantheon.tech>
Sun, 3 Oct 2021 16:55:27 +0000 (18:55 +0200)
There is no point in depending on jaxb-api, just use the encoder from
java.util.

Change-Id: I67228d64beff56f41aaeafac1be285c5c5607f1f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
aaa-cert/pom.xml
aaa-cert/src/main/java/org/opendaylight/aaa/cert/impl/ODLKeyTool.java

index 866e55820ff68c5723a5030500b5c2ec4b9d9685..db63744248fd3c3e7b08edc616e7e1aa7d0f4deb 100644 (file)
@@ -33,10 +33,6 @@ and is available at http://www.eclipse.org/legal/epl-v10.html INTERNAL
       <groupId>org.apache.commons</groupId>
       <artifactId>commons-lang3</artifactId>
     </dependency>
-    <dependency>
-      <groupId>jakarta.xml.bind</groupId>
-      <artifactId>jakarta.xml.bind-api</artifactId>
-    </dependency>
 
     <!-- Bouncy Castle dependency -->
     <dependency>
index b09587d4cfb0c801a8507022e2dd2a8f683709fc..2097f61ac15dcfe5ee78c8afab0361fa6af26eb8 100644 (file)
@@ -30,7 +30,6 @@ import java.security.cert.CertificateFactory;
 import java.security.cert.X509Certificate;
 import java.util.Base64;
 import java.util.Date;
-import javax.xml.bind.DatatypeConverter;
 import org.apache.commons.lang3.StringUtils;
 import org.bouncycastle.asn1.x500.X500Name;
 import org.bouncycastle.asn1.x509.SubjectPublicKeyInfo;
@@ -267,17 +266,12 @@ public class ODLKeyTool {
                 final PKCS10CertificationRequestBuilder csrb = new PKCS10CertificationRequestBuilder(xName,
                         subPubKeyInfo);
                 final ContentSigner contSigner = new JcaContentSignerBuilder(signAlg).build(privKey);
-                final String certReq = DatatypeConverter.printBase64Binary(csrb.build(contSigner).getEncoded());
-                if (withTag) {
-                    final StringBuilder sb = new StringBuilder();
-                    sb.append(KeyStoreConstant.BEGIN_CERTIFICATE_REQUEST);
-                    sb.append("\n");
-                    sb.append(certReq);
-                    sb.append("\n");
-                    sb.append(KeyStoreConstant.END_CERTIFICATE_REQUEST);
-                    return sb.toString();
-                }
-                return certReq;
+                final String certReq = Base64.getEncoder().encodeToString(csrb.build(contSigner).getEncoded());
+                return !withTag ? certReq : new StringBuilder()
+                    .append(KeyStoreConstant.BEGIN_CERTIFICATE_REQUEST).append('\n')
+                    .append(certReq).append('\n')
+                    .append(KeyStoreConstant.END_CERTIFICATE_REQUEST)
+                    .toString();
             }
             LOG.info("KeyStore does not contain alias {}", keyAlias);
             return StringUtils.EMPTY;
@@ -303,17 +297,12 @@ public class ODLKeyTool {
         try {
             if (keyStore.containsAlias(certAlias)) {
                 final X509Certificate odlCert = (X509Certificate) keyStore.getCertificate(certAlias);
-                final String cert = DatatypeConverter.printBase64Binary(odlCert.getEncoded());
-                if (withTag) {
-                    final StringBuilder sb = new StringBuilder();
-                    sb.append(KeyStoreConstant.BEGIN_CERTIFICATE);
-                    sb.append("\n");
-                    sb.append(cert);
-                    sb.append("\n");
-                    sb.append(KeyStoreConstant.END_CERTIFICATE);
-                    return sb.toString();
-                }
-                return cert;
+                final String cert = Base64.getEncoder().encodeToString(odlCert.getEncoded());
+                return !withTag ? cert : new StringBuilder()
+                    .append(KeyStoreConstant.BEGIN_CERTIFICATE).append('\n')
+                    .append(cert).append('\n')
+                    .append(KeyStoreConstant.END_CERTIFICATE)
+                    .toString();
             }
             LOG.info("KeyStore does not contain alias {}", certAlias);
             return StringUtils.EMPTY;