Class SEQUENCE.OF_Template

java.lang.Object
org.mozilla.jss.asn1.SEQUENCE.OF_Template
All Implemented Interfaces:
ASN1Template
Enclosing class:
SEQUENCE

public static class SEQUENCE.OF_Template extends Object implements ASN1Template
A Template for decoding SEQUENCE OF values. The main difference between a SEQUENCE.Template and a SEQUENCE.OF_Template is that a regular template specifies the exact ordering, number, and type of elements of the sequence, while an OF_Template has an indefinite number of elements, all the same type. For example, given:
 MyType ::= SEQUENCE OF Extension
 
a MyType could be decoded with:
  SEQUENCE.OF_Template myTypeTemplate = new SEQUENCE.OF_Template( new
      Extension.Template) );
  SEQUENCE seq = (SEQUENCE) myTypeTemplate.decode(someInputStream);
 
The number of Extensions actually decoded could be found with seq.size().
  • Field Details

  • Constructor Details

    • OF_Template

      private OF_Template()
    • OF_Template

      public OF_Template(ASN1Template type)
  • Method Details

    • makeOutputlessOFTemplate

      public static SEQUENCE.OF_Template makeOutputlessOFTemplate(ASN1Template type)
    • 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(InputStream istream) throws IOException, InvalidBERException
      Decodes a SEQUENCE OF from an input stream.
      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:
      IOException - If other error occurred.
      InvalidBERException - If there is an invalid BER encoding.
    • decode

      public ASN1Value decode(Tag implicitTag, InputStream istream) throws IOException, InvalidBERException
      Decodes a SEQUENCE OF with an implicit tag from an input stream.
      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:
      IOException - If other error occurred.
      InvalidBERException - If there is an invalid BER encoding.