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 specified in {@link #X500Principal(string)} and also recognizes additional keywords that have entries in the {@code keywordMap} parameter. Keyword entries in the keywordMap take precedence over the default keywords recognized by {@code X500Principal(string)}. Keywords MUST be specified in all upper-case, otherwise they will be ignored. Improperly specified keywords are ignored; however if a keyword in the name maps to an improperly specified Object Identifier (OID), an {@code IllegalArgumentException} is thrown. It is permissible to have 2 different keywords that map to the same 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 @param keywordMap an attribute type keyword map, where each key is a keyword string that maps to a corresponding object identifier in string form (a sequence of nonnegative integers separated by periods). The map may be empty but never {@code null}. @exception NullPointerException if {@code name} or {@code keywordMap} is {@code null} @exception IllegalArgumentException if the {@code name} is improperly specified or a keyword in the {@code name} maps to an OID that is not in the correct form @since 1.6

  1. this(X500Name x500Name)
  2. this(string name)
  3. this(string name, Map!(string, string) keywordMap)
    class X500Principal
    this
    (
    string name
    ,
    Map!(string, string) keywordMap
    )
  4. this(byte[] name)

Meta