Class SET.OF_Template

  • All Implemented Interfaces:
    ASN1Template
    Enclosing class:
    SET

    public static class SET.OF_Template
    extends java.lang.Object
    implements ASN1Template
    A Template for decoding SET OF values. Use this if you have a SIZE qualifier on your SET OF. The SET will consume as many instances of type as it can, rather than stopping after the first one. This is equivalent to SIZE (0..MAX). If you need something more restrictive, you can look at what gets parsed and decide whether it's OK or not yourself.
    • Constructor Summary

      Constructors 
      Constructor Description
      OF_Template​(ASN1Template type)
      Creates an OF_Template with the given type.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      ASN1Value decode​(java.io.InputStream istream)
      Decodes a SET OF from its BER encoding.
      ASN1Value decode​(Tag implicitTag, java.io.InputStream istream)
      Decodes a SET OF with an implicit tag from its BER encoding.
      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

      • OF_Template

        public OF_Template​(ASN1Template type)
        Creates an OF_Template with the given type. For example:
         MySet ::= SET OF INTEGER;
         
        A MySet template would be constructed with:
         SET.OF_Template mySetTemplate = new SET.OF_Template( new
                                                  INTEGER.Template() );
         
        Parameters:
        type - Type.
    • 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
        Decodes a SET OF from its BER encoding.
        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
        Decodes a SET OF with an implicit tag from its BER encoding.
        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.