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.