Class EXPLICIT.Template

  • All Implemented Interfaces:
    ASN1Template
    Enclosing class:
    EXPLICIT

    public static class EXPLICIT.Template
    extends java.lang.Object
    implements ASN1Template
    A template for decoding an object wrapped in an EXPLICIT tag.
    • Constructor Summary

      Constructors 
      Constructor Description
      Template​(Tag tag, ASN1Template content)
      Creates a template for unwrapping an object wrapped in an explicit tag.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      ASN1Value decode​(java.io.InputStream istream)
      Decodes an ASN1Value from the InputStream without an implicit tag.
      ASN1Value decode​(Tag implicitTag, java.io.InputStream istream)
      Decodes an ASN1Value from the InputStream with the given implicit tag.
      boolean tagMatch​(Tag tag)
      Determines whether the given tag will satisfy this template.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • Template

        public Template​(Tag tag,
                        ASN1Template content)
        Creates a template for unwrapping an object wrapped in an explicit tag. For example, to decode:
         MyValue ::= [3] EXPLICIT INTEGER
         
        use:
         EXPLICIT.Template myTemplate = new EXPLICIT.Template( new Tag(3),
              new INTEGER.Template() );
         
        Parameters:
        tag - The tag value of the EXPLICIT tag.
        content - The template for decoding the object that is wrapped in the explicit tag.
    • Method Detail

      • tagMatch

        public boolean tagMatch​(Tag tag)
        Description copied from interface: ASN1Template
        Determines whether the given tag will satisfy this template.
        Specified by:
        tagMatch in interface ASN1Template
        Parameters:
        tag - Tag.
        Returns:
        True if the given tag will satisfy this template.
      • decode

        public ASN1Value decode​(java.io.InputStream istream)
                         throws java.io.IOException,
                                InvalidBERException
        Description copied from interface: ASN1Template
        Decodes an ASN1Value from the InputStream without an implicit tag.
        Specified by:
        decode in interface ASN1Template
        Parameters:
        istream - Must support marking (markSupported() == true). For example, ByteArrayInputStream and BufferedInputStream support marking, but FileInputStream does not. If your source does not support marking, you can wrap it in a BufferedInputStream.
        Returns:
        ASN.1 value.
        Throws:
        java.io.IOException - If other error occurred.
        InvalidBERException - If there is an invalid BER encoding.
      • decode

        public ASN1Value decode​(Tag implicitTag,
                                java.io.InputStream istream)
                         throws java.io.IOException,
                                InvalidBERException
        Description copied from interface: ASN1Template
        Decodes an ASN1Value from the InputStream with the given implicit tag.
        Specified by:
        decode in interface ASN1Template
        Parameters:
        implicitTag - Implicit tag.
        istream - Must support marking (markSupported() == true). For example, ByteArrayInputStream and BufferedInputStream support marking, but FileInputStream does not. If your source does not support marking, you can wrap it in a BufferedInputStream.
        Returns:
        ASN.1 value.
        Throws:
        java.io.IOException - If other error occurred.
        InvalidBERException - If there is an invalid BER encoding.