Class ASN1PrintableString

  • All Implemented Interfaces:
    ASN1Encodable, ASN1String, Encodable
    Direct Known Subclasses:
    DERPrintableString

    public abstract class ASN1PrintableString
    extends ASN1Primitive
    implements ASN1String
    ASN.1 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.

    • Method Detail

      • getInstance

        public static ASN1PrintableString getInstance​(java.lang.Object obj)
        Return a printable string from the passed in object.
        Parameters:
        obj - an ASN1PrintableString or an object that can be converted into one.
        Returns:
        an ASN1PrintableString instance, or null.
        Throws:
        java.lang.IllegalArgumentException - if the object cannot be converted.
      • getInstance

        public static ASN1PrintableString getInstance​(ASN1TaggedObject taggedObject,
                                                      boolean explicit)
        Return a Printable String from a tagged object.
        Parameters:
        taggedObject - the tagged object holding the object we want
        explicit - true if the object is meant to be explicitly tagged false otherwise.
        Returns:
        an ASN1PrintableString instance, or null.
        Throws:
        java.lang.IllegalArgumentException - if the tagged object cannot be converted.
      • getString

        public final 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 final byte[] getOctets()
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • 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.