code: public PKCS10CertificationRequest decodeSigningRequest(String csr) {
          logger.entry();
          try (StringReader sreader = new StringReader(csr); PemReader preader = new PemReader(sreader)) {
              byte[] requestBytes = preader.readPemObject().getContent();
              PKCS10CertificationRequest result = new PKCS10CertificationRequest(requestBytes);
              logger.exit();
              return result;
          } catch (IOException e) {
              RuntimeException exception = new RuntimeException("An unexpected exception occurred while attempting to decode a certificate signing request.", e);
              logger.error(exception.toString());
              throw exception;
          }
      }
docs: This method decodes a certificate signing request (CSR) from a string.  This is a convenience
  method that really should be part of the <code>CertificateManagement</code> interface except
  that it depends on a Bouncy Castle class in the signature.  The java security framework does
  not have a similar class so it has been left out of the interface.
  
  @param csr The encoded certificate signing request.
  @return The decoded certificate signing request.