org.mozilla.jss.asn1
Class SET
- ASN1Value
public class SET
extends java.lang.Object
An ASN.1 SET, which is an unordered collection of ASN.1 values.
It has an interface like a Java Vector, but the ordering is arbitrary.
Null entries may be added; they will be skipped when encoding.
static class | SET.OF_Template - A Template for decoding SET OF values.
|
static class | SET.Template - SET.Template
This class is used for decoding DER-encoded SETs.
|
void | BERencode(Tag implicitTag, OutputStream ostream) - Encodes this SET without re-ordering it.
|
void | addElement(ASN1Value v) - Adds an element to this SET.
|
void | addElement(Tag implicitTag, ASN1Value v) - Adds an element to this SET with the given implicit tag.
|
ASN1Value | elementAt(int index) - Returns the element at the given index in the SET.
|
ASN1Value | elementWithTag(Tag tag) - Returns the element with the given Tag, or null if no element exists
with the given tag.
|
void | encode(OutputStream ostream) - Writes the DER encoding to the given output stream.
|
void | encode(Tag implicitTag, OutputStream ostream) - Writes the DER encoding to the given output stream,
using the given implicit tag.
|
Tag | getTag()
|
void | insertElementAt(ASN1Value v, int index) - Inserts an element at the given index.
|
void | insertElementAt(Tag implicitTag, ASN1Value v, int index) - Inserts an element with the given implicit tag at the given index.
|
static void | main(args[] )
|
void | removeAllElements() - Removes all elements from this SET.
|
void | removeElementAt(int index) - Removes the element from the specified index.
|
int | size() - Returns the number of elements in this SET.
|
Tag | tagAt(int index) - Returns the tag of the element at the given index.
|
FORM
protected static final Form FORM
TAG
public static final Tag TAG
elements
protected Vector elements
BERencode
public void BERencode(Tag implicitTag,
OutputStream ostream)
throws IOException
Encodes this SET without re-ordering it. This may violate
DER, but it is within BER.
addElement
public void addElement(ASN1Value v)
Adds an element to this SET.
addElement
public void addElement(Tag implicitTag,
ASN1Value v)
Adds an element to this SET with the given implicit tag. For example,
if the ASN.1 were:
MyType ::= SET {
item [0] IMPLICIT INTEGER,
... }
then the "item" element could be added (with a sample value of 45)
to the SET with:
myTypeInstance.addElement( new Tag(0), new INTEGER(45) );
elementAt
public ASN1Value elementAt(int index)
Returns the element at the given index in the SET.
elementWithTag
public ASN1Value elementWithTag(Tag tag)
Returns the element with the given Tag, or null if no element exists
with the given tag.
encode
public void encode(OutputStream ostream)
throws IOException
Writes the DER encoding to the given output stream.
- encode in interface ASN1Value
encode
public void encode(Tag implicitTag,
OutputStream ostream)
throws IOException
Writes the DER encoding to the given output stream,
using the given implicit tag. To satisfy DER encoding rules,
the elements will be re-ordered either by tag or lexicographically.
- encode in interface ASN1Value
insertElementAt
public void insertElementAt(ASN1Value v,
int index)
Inserts an element at the given index.
insertElementAt
public void insertElementAt(Tag implicitTag,
ASN1Value v,
int index)
Inserts an element with the given implicit tag at the given index.
main
public static void main(args[] )
removeAllElements
public void removeAllElements()
Removes all elements from this SET.
removeElementAt
public void removeElementAt(int index)
Removes the element from the specified index.
size
public int size()
Returns the number of elements in this SET.
tagAt
public Tag tagAt(int index)
Returns the tag of the element at the given index. If the element
has an implicit tag, that is returned. Otherwise, the tag of the
underlying type is returned.