Bouncy Castle Cryptography Library 1.65

org.bouncycastle.asn1
Class DERPrintableString

java.lang.Object
  extended byorg.bouncycastle.asn1.ASN1Object
      extended byorg.bouncycastle.asn1.ASN1Primitive
          extended byorg.bouncycastle.asn1.DERPrintableString
All Implemented Interfaces:
ASN1Encodable, ASN1String, Encodable

public class DERPrintableString
extends ASN1Primitive
implements ASN1String

DER PrintableString object.

X.680 section 37.4 defines PrintableString character codes as ASCII subset of following characters:

Latin capital letters: 'A' .. 'Z' Latin small letters: 'a' .. 'z' Digits: '0'..'9' Space Apostrophe: '\'' Left parenthesis: '(' Right parenthesis: ')' Plus sign: '+' Comma: ',' Hyphen-minus: '-' Full stop: '.' Solidus: '/' Colon: ':' Equals sign: '=' Question mark: '?'

Explicit character set escape sequences are not allowed.


Constructor Summary
DERPrintableString(java.lang.String string)
          Basic constructor - this does not validate the string
DERPrintableString(java.lang.String string, boolean validate)
          Constructor with optional validation.
 
Method Summary
static DERPrintableString getInstance(ASN1TaggedObject obj, boolean explicit)
          Return a Printable String from a tagged object.
static DERPrintableString getInstance(java.lang.Object obj)
          Return a printable string from the passed in object.
 byte[] getOctets()
           
 java.lang.String getString()
          Return a Java String representation of this STRING type's content.
 int hashCode()
           
static boolean isPrintableString(java.lang.String str)
          return true if the passed in String can be represented without loss as a PrintableString, false otherwise.
 java.lang.String toString()
           
 
Methods inherited from class org.bouncycastle.asn1.ASN1Primitive
encodeTo, encodeTo, equals, equals, equals, fromByteArray, toASN1Primitive
 
Methods inherited from class org.bouncycastle.asn1.ASN1Object
getEncoded, getEncoded, hasEncodedTagValue, toASN1Object
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

DERPrintableString

public DERPrintableString(java.lang.String string)
Basic constructor - this does not validate the string


DERPrintableString

public DERPrintableString(java.lang.String string,
                          boolean validate)
Constructor with optional validation.

Parameters:
string - the base string to wrap.
validate - whether or not to check the string.
Throws:
java.lang.IllegalArgumentException - if validate is true and the string contains characters that should not be in a PrintableString.
Method Detail

getInstance

public static DERPrintableString getInstance(java.lang.Object obj)
Return a printable string from the passed in object.

Parameters:
obj - a DERPrintableString or an object that can be converted into one.
Returns:
a DERPrintableString instance, or null.
Throws:
java.lang.IllegalArgumentException - if the object cannot be converted.

getInstance

public static DERPrintableString getInstance(ASN1TaggedObject obj,
                                             boolean explicit)
Return a Printable String from a tagged object.

Parameters:
obj - the tagged object holding the object we want
explicit - true if the object is meant to be explicitly tagged false otherwise.
Returns:
a DERPrintableString instance, or null.
Throws:
java.lang.IllegalArgumentException - if the tagged object cannot be converted.

getString

public java.lang.String getString()
Description copied from interface: ASN1String
Return a Java String representation of this STRING type's content.

Specified by:
getString in interface ASN1String
Returns:
a Java String representation of this STRING.

getOctets

public byte[] getOctets()

hashCode

public int hashCode()
Specified by:
hashCode in class ASN1Primitive

toString

public java.lang.String toString()

isPrintableString

public static boolean isPrintableString(java.lang.String str)
return true if the passed in String can be represented without loss as a PrintableString, false otherwise.

Returns:
true if in printable set, false otherwise.

Bouncy Castle Cryptography Library 1.65