Package org.bouncycastle.asn1.x500.style
Class AbstractX500NameStyle
- java.lang.Object
-
- org.bouncycastle.asn1.x500.style.AbstractX500NameStyle
-
- All Implemented Interfaces:
X500NameStyle
- Direct Known Subclasses:
BCStyle,RFC4519Style
public abstract class AbstractX500NameStyle extends java.lang.Object implements X500NameStyle
This class provides some default behavior and common implementation for a X500NameStyle. It should be easily extendable to support implementing the desired X500NameStyle.
-
-
Constructor Summary
Constructors Constructor Description AbstractX500NameStyle()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanareEqual(X500Name name1, X500Name name2)Return true if the two names are equal.intcalculateHashCode(X500Name name)Calculate a hashCode for the passed in name.static java.util.HashtablecopyHashTable(java.util.Hashtable paramsMap)Tool function to shallow copy a Hashtable.protected ASN1EncodableencodeStringValue(ASN1ObjectIdentifier oid, java.lang.String value)Encoded every value into a UTF8String.protected booleanrdnAreEqual(RDN rdn1, RDN rdn2)ASN1EncodablestringToValue(ASN1ObjectIdentifier oid, java.lang.String value)For all string values starting with '#' is assumed, that these are already valid ASN.1 objects encoded in hex.-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.bouncycastle.asn1.x500.X500NameStyle
attrNameToOID, fromString, oidToAttrNames, oidToDisplayName, toString
-
-
-
-
Method Detail
-
copyHashTable
public static java.util.Hashtable copyHashTable(java.util.Hashtable paramsMap)
Tool function to shallow copy a Hashtable.- Parameters:
paramsMap- table to copy- Returns:
- the copy of the table
-
calculateHashCode
public int calculateHashCode(X500Name name)
Description copied from interface:X500NameStyleCalculate a hashCode for the passed in name.- Specified by:
calculateHashCodein interfaceX500NameStyle- Parameters:
name- the name the hashCode is required for.- Returns:
- the calculated hashCode.
-
stringToValue
public ASN1Encodable stringToValue(ASN1ObjectIdentifier oid, java.lang.String value)
For all string values starting with '#' is assumed, that these are already valid ASN.1 objects encoded in hex.All other string values are send to
Subclasses should overwriteencodeStringValue(ASN1ObjectIdentifier, String).encodeStringValue(ASN1ObjectIdentifier, String)to change the encoding of specific types.- Specified by:
stringToValuein interfaceX500NameStyle- Parameters:
oid- the DN name of the value.value- the String representation of the value.- Returns:
- the ASN.1 equivalent for the value.
-
encodeStringValue
protected ASN1Encodable encodeStringValue(ASN1ObjectIdentifier oid, java.lang.String value)
Encoded every value into a UTF8String.Subclasses should overwrite this method to change the encoding of specific types.
- Parameters:
oid- the DN oid of the valuevalue- the String representation of the value- Returns:
- a the value encoded into a ASN.1 object. Never returns
null.
-
areEqual
public boolean areEqual(X500Name name1, X500Name name2)
Description copied from interface:X500NameStyleReturn true if the two names are equal.- Specified by:
areEqualin interfaceX500NameStyle- Parameters:
name1- first name for comparison.name2- second name for comparison.- Returns:
- true if name1 = name 2, false otherwise.
-
-