X500Principal.this

Creates an {@code X500Principal} from a string representation of an X.500 distinguished name (ex: "CN=Duke, OU=JavaSoft, O=Sun Microsystems, C=US"). The distinguished name must be specified using the grammar defined in RFC 1779 or RFC 2253 (either format is acceptable).

<p>This constructor recognizes the attribute type keywords defined in RFC 1779 and RFC 2253 (and listed in {@link #getName(string format) getName(string format)}), as well as the T, DNQ or DNQUALIFIER, SURNAME, GIVENNAME, INITIALS, GENERATION, EMAILADDRESS, and SERIALNUMBER keywords whose Object Identifiers (OIDs) are defined in RFC 3280 and its successor. Any other attribute type must be specified as an OID.

<p>This implementation enforces a more restrictive OID syntax than defined in RFC 1779 and 2253. It uses the more correct syntax defined in <a href="http://www.ietf.org/rfc/rfc4512.txt">RFC 4512</a>, which specifies that OIDs contain at least 2 digits:

<p>{@code numericoid = number 1*( DOT number ) }

@param name an X.500 distinguished name in RFC 1779 or RFC 2253 format @exception NullPointerException if the {@code name} is {@code null} @exception IllegalArgumentException if the {@code name} is improperly specified

Meta