Example usage for org.bouncycastle.asn1.x500.style IETFUtils appendTypeAndValue

List of usage examples for org.bouncycastle.asn1.x500.style IETFUtils appendTypeAndValue

Introduction

In this page you can find the example usage for org.bouncycastle.asn1.x500.style IETFUtils appendTypeAndValue.

Prototype

public static void appendTypeAndValue(StringBuffer buf, AttributeTypeAndValue typeAndValue,
            Hashtable oidSymbols) 

Source Link

Usage

From source file:net.sf.keystore_explorer.crypto.x509.KseX500NameStyle.java

License:Open Source License

@Override
public String toString(X500Name name) {
    // Convert in reverse
    StringBuffer buf = new StringBuffer();
    boolean first = true;

    RDN[] rdns = name.getRDNs();//w w  w.  j av a  2s. com

    for (int i = rdns.length - 1; i >= 0; i--) {
        if (first) {
            first = false;
        } else {
            buf.append(',');
        }

        if (rdns[i].isMultiValued()) {
            AttributeTypeAndValue[] atv = rdns[i].getTypesAndValues();
            boolean firstAtv = true;

            for (int j = 0; j != atv.length; j++) {
                if (firstAtv) {
                    firstAtv = false;
                } else {
                    buf.append('+');
                }

                IETFUtils.appendTypeAndValue(buf, atv[j], DefaultSymbols);
            }
        } else {
            IETFUtils.appendTypeAndValue(buf, rdns[i].getFirst(), DefaultSymbols);
        }
    }

    return buf.toString();
}

From source file:org.cesecore.util.CeSecoreNameStyle.java

License:Open Source License

/**
 * This method is intended to be used in toString() in BCStyle classes. It is
 * useful e.g. when the DefaultSymbols map is not the default inherited from
 * BCStyle. It is public so it can be re-used by other classes as well
 * (e.g. LdapNameStyle in EJBCA)./*from ww  w.  ja  v a 2s.  c o  m*/
 */
public static String buildString(Hashtable<ASN1ObjectIdentifier, String> defaultSymbols, X500Name name) {
    StringBuffer buf = new StringBuffer();
    boolean first = true;

    RDN[] rdns = name.getRDNs();

    for (int i = 0; i < rdns.length; i++) {
        if (first) {
            first = false;
        } else {
            buf.append(',');
        }

        if (rdns[i].isMultiValued()) {
            AttributeTypeAndValue[] atv = rdns[i].getTypesAndValues();
            boolean firstAtv = true;

            for (int j = 0; j != atv.length; j++) {
                if (firstAtv) {
                    firstAtv = false;
                } else {
                    buf.append('+');
                }

                IETFUtils.appendTypeAndValue(buf, atv[j], defaultSymbols);
            }
        } else {
            IETFUtils.appendTypeAndValue(buf, rdns[i].getFirst(), defaultSymbols);
        }
    }

    return buf.toString();
}