org.bouncycastle.asn1.x509
public abstract class X509NameEntryConverter extends Object
An example of an encoder look like below:
public class X509DirEntryConverter extends X509NameEntryConverter { public DERObject getConvertedValue( DERObjectIdentifier oid, String value) { if (str.length() != 0 && str.charAt(0) == '#') { return convertHexEncoded(str, 1); } if (oid.equals(EmailAddress)) { return new DERIA5String(str); } else if (canBePrintable(str)) { return new DERPrintableString(str); } else if (canBeUTF8(str)) { return new DERUTF8String(str); } else { return new DERBMPString(str); } } }
Method Summary | |
---|---|
protected boolean | canBePrintable(String str)
return true if the passed in String can be represented without
loss as a PrintableString, false otherwise. |
protected DERObject | convertHexEncoded(String str, int off)
Convert an inline encoded hex string rendition of an ASN.1
object back into its corresponding ASN.1 object.
|
abstract DERObject | getConvertedValue(DERObjectIdentifier oid, String value)
Convert the passed in String value into the appropriate ASN.1
encoded object.
|
Parameters: str the hex encoded object off the index at which the encoding starts
Returns: the decoded object
Parameters: oid the oid associated with the value in the DN. value the value of the particular DN component.
Returns: the ASN.1 equivalent for the value.