Package org.opensaml.security.x509
Interface X500DNHandler
-
- All Known Implementing Classes:
InternalX500DNHandler
public interface X500DNHandler
Interface for implementations which handle parsing and serialization of X.500 names represented byX500Principal
.
-
-
Field Summary
Fields Modifier and Type Field Description static String
FORMAT_RFC1779
Specifies the string format specified in RFC 1779.static String
FORMAT_RFC2253
Specifies the string format specified in RFC 2253.
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description X500DNHandler
clone()
Clone the handler.byte[]
getEncoded(X500Principal principal)
Returns the distinguished name in ASN.1 DER encoded form.String
getName(X500Principal principal)
Returns a string representation of the X.500 distinguished name using the default format as defined in the underlying implementation.String
getName(X500Principal principal, String format)
Returns a string representation of the X.500 distinguished name using the specified format.X500Principal
parse(byte[] name)
Parse the ASN.1 DER encoding representation of a name and build a new principal instance.X500Principal
parse(String name)
Parse the string representation of a name and build a new principal instance.
-
-
-
Field Detail
-
FORMAT_RFC1779
static final String FORMAT_RFC1779
Specifies the string format specified in RFC 1779.- See Also:
- Constant Field Values
-
FORMAT_RFC2253
static final String FORMAT_RFC2253
Specifies the string format specified in RFC 2253.- See Also:
- Constant Field Values
-
-
Method Detail
-
parse
@Nonnull X500Principal parse(@Nonnull String name)
Parse the string representation of a name and build a new principal instance.- Parameters:
name
- the name string to parse- Returns:
- a new principal instance
- Throws:
IllegalArgumentException
- if the name value can not be parsed by the implementation
-
parse
@Nonnull X500Principal parse(@Nonnull byte[] name)
Parse the ASN.1 DER encoding representation of a name and build a new principal instance.- Parameters:
name
- a distinguished name in ASN.1 DER encoded form- Returns:
- a new principal instance
- Throws:
IllegalArgumentException
- if the name value can not be parsed by the implementation
-
getName
@Nonnull String getName(@Nonnull X500Principal principal)
Returns a string representation of the X.500 distinguished name using the default format as defined in the underlying implementation.- Parameters:
principal
- the principal name instance to serialize- Returns:
- the serialized string name
-
getName
@Nonnull String getName(@Nonnull X500Principal principal, @Nonnull String format)
Returns a string representation of the X.500 distinguished name using the specified format. The values and meanings of the format specifier are implementation dependent. Constants for two common standard formats are provided here asFORMAT_RFC1779
andFORMAT_RFC2253
;- Parameters:
principal
- the principal name instance to serializeformat
- the format specifier of the resulting serialized string name- Returns:
- the serialized string name
- Throws:
IllegalArgumentException
- if the specified format is not understood by the implementation
-
getEncoded
@Nonnull byte[] getEncoded(@Nonnull X500Principal principal)
Returns the distinguished name in ASN.1 DER encoded form.- Parameters:
principal
- the principal name instance to serialize- Returns:
- the serialized name in ASN.1 DER encoded form
-
clone
@Nonnull X500DNHandler clone()
Clone the handler. Implementations which maintain instance-specific configuration data, etc, should implement this appropriately, possibly also implementingCloneable
.- Returns:
- the cloned handler
-
-