Class CHOICE

java.lang.Object
org.mozilla.jss.asn1.CHOICE
All Implemented Interfaces:
ASN1Value

public class CHOICE extends Object implements ASN1Value
Objects of this class are generated by CHOICE.Template.decode(). It is not necessary to use them to encode a CHOICE. Since the encoding of a CHOICE is simply the encoding of the chosen element, it is easier to just write out the chosen element.
  • Field Details

  • Constructor Details

    • CHOICE

      public CHOICE(Tag implicitTag, ASN1Value val)
      Create a CHOICE whose chosen element has an implicit tag.
      Parameters:
      implicitTag - Implicit tag.
      val - The value.
    • CHOICE

      public CHOICE(ASN1Value val)
      Create a CHOICE whose chosen element has no implicit tag.
      Parameters:
      val - The value.
  • Method Details

    • getTag

      public Tag getTag()
      Returns the tag that the chosen element is encoded with, which is either the underlying tag of the element or an implicit tag.
      Specified by:
      getTag in interface ASN1Value
      Returns:
      Base tag.
    • getValue

      public ASN1Value getValue()
      Returns:
      The chosen value.
    • getTemplate

      public static CHOICE.Template getTemplate()
    • encode

      public void encode(OutputStream ostream) throws IOException
      Encodes this CHOICE. This merely consists of encoding the chosen element with an implicit tag, if one was given in the constructor, or with its own underlying tag.
      Specified by:
      encode in interface ASN1Value
      Parameters:
      ostream - Output stream.
      Throws:
      IOException - If an error occurred.
    • encode

      public void encode(Tag implicitTag, OutputStream ostream) throws IOException
      Encodes this CHOICE. This merely consists of encoding the chosen element with an implicit tag, if one was given in the constructor, or with its own underlying tag.
      Specified by:
      encode in interface ASN1Value
      Parameters:
      implicitTag - This value is ignored. The tag of a CHOICE is merely the tag of the chosen element of the CHOICE. A CHOICE cannot itself have an implicit tag.
      ostream - Output stream.
      Throws:
      IOException - If an error occurred.