Class DirStrConverter
java.lang.Object
org.mozilla.jss.netscape.security.x509.DirStrConverter
- All Implemented Interfaces:
AVAValueConverter
A DirStrConverter converts a string to a DerValue of ASN.1 Directory String,
which is a CHOICE of Printable (subset of ASCII), T.61 (Teletex) or
Universal String (UCS-4), and vice versa.
The string to DerValue conversion is done as follows. If the string has only PrintableString characters it is converted to a ASN.1 Printable String using the PrintableString encoder from the global default ASN1CharStrConvMap. If it has only characters covered in the PrintableString or T.61 character set it is converted to a ASN.1 T.61 string using the T.61 encoder from the ASN1CharStrCovnMap. Otherwise it is converted to a ASN.1 UniversalString (UCS-4 character set) which covers all characters.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static byte[]
Converts a string to a DER encoded ASN1 Directory String, which is a CHOICE of PrintableString, T.61String or UniversalString. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiongetAsString
(DerValue avaValue) Converts a DerValue to a string.getValue
(byte[] berByteStream) Creates a DerValue from a BER encoded value, obtained from for example a attribute value in octothorpe form of a Ldap DN string.Converts a string to a DER encoded attribute value.Like getValue(String) with specified DER tags as encoding order.static void
setDefEncodingOrder
(byte[] defEncodingOrder)
-
Field Details
-
DefEncodingOrder
private static byte[] DefEncodingOrderConverts a string to a DER encoded ASN1 Directory String, which is a CHOICE of PrintableString, T.61String or UniversalString. The string is taken as is i.e. should not be in Ldap DN string syntax.
-
-
Constructor Details
-
DirStrConverter
public DirStrConverter()Constructs a DirStrConverter.
-
-
Method Details
-
setDefEncodingOrder
public static void setDefEncodingOrder(byte[] defEncodingOrder) -
getValue
Description copied from interface:AVAValueConverter
Converts a string to a DER encoded attribute value.- Specified by:
getValue
in interfaceAVAValueConverter
- Parameters:
ds
- An AVA value string not encoded in any form.- Returns:
- A DerValue object.
- Throws:
IOException
- if an error occurs during the conversion.
-
getValue
Like getValue(String) with specified DER tags as encoding order.- Specified by:
getValue
in interfaceAVAValueConverter
- Parameters:
valueString
- An AVA value string not encoded in any form.- Returns:
- A DerValue object.
- Throws:
IOException
- if an error occurs during the conversion.
-
getValue
Creates a DerValue from a BER encoded value, obtained from for example a attribute value in octothorpe form of a Ldap DN string. Checks if the BER encoded value is legal for a DirectoryString. NOTE: currently only supports DER encoding for the BER encoded value.- Specified by:
getValue
in interfaceAVAValueConverter
- Parameters:
berByteStream
- Byte array of a BER encoded value.- Returns:
- DerValue object.
- Throws:
IOException
- If the BER value cannot be converted to a valid Directory String DER value.
-
getAsString
Converts a DerValue to a string. The string is not in any syntax, such as RFC1779 string syntax.- Specified by:
getAsString
in interfaceAVAValueConverter
- Parameters:
avaValue
- a DerValue- Returns:
- a string if the value can be converted.
- Throws:
IOException
- if a decoder needed for the conversion is not available.
-