com.lowagie.bc.asn1

Class ASN1Set

Implemented Interfaces:
DEREncodable, DERTags
Known Direct Subclasses:
DERConstructedSet, DERSet

public abstract class ASN1Set
extends DERObject

Field Summary

protected Vector
set

Fields inherited from interface com.lowagie.bc.asn1.DERTags

APPLICATION, BIT_STRING, BMP_STRING, BOOLEAN, CONSTRUCTED, ENUMERATED, EXTERNAL, GENERALIZED_TIME, GENERAL_STRING, GRAPHIC_STRING, IA5_STRING, INTEGER, NULL, NUMERIC_STRING, OBJECT_IDENTIFIER, OCTET_STRING, PRINTABLE_STRING, SEQUENCE, SEQUENCE_OF, SET, SET_OF, T61_STRING, TAGGED, UNIVERSAL_STRING, UTC_TIME, UTF8_STRING, VIDEOTEX_STRING, VISIBLE_STRING

Constructor Summary

ASN1Set()

Method Summary

protected void
addObject(DEREncodable obj)
(package private) abstract void
encode(DEROutputStream out)
boolean
equals(Object o)
static ASN1Set
getInstance(Object obj)
return an ASN1Set from the given object.
static ASN1Set
getInstance(ASN1TaggedObject obj, boolean explicit)
Return an ASN1 set from a tagged object.
DEREncodable
getObjectAt(int index)
return the object at the set postion indicated by index.
Enumeration
getObjects()
int
hashCode()
int
size()
return the number of objects in this set.

Methods inherited from class com.lowagie.bc.asn1.DERObject

encode, getDERObject

Field Details

set

protected Vector set

Constructor Details

ASN1Set

public ASN1Set()

Method Details

addObject

protected void addObject(DEREncodable obj)

encode

(package private)  abstract void encode(DEROutputStream out)
            throws IOException
Overrides:
encode in interface DERObject

equals

public boolean equals(Object o)

getInstance

public static ASN1Set getInstance(Object obj)
return an ASN1Set from the given object.
Parameters:
obj - the object we want converted.

getInstance

public static ASN1Set getInstance(ASN1TaggedObject obj,
                                  boolean explicit)
Return an ASN1 set from a tagged object. There is a special case here, if an object appears to have been explicitly tagged on reading but we were expecting it to be implictly tagged in the normal course of events it indicates that we lost the surrounding set - so we need to add it back (this will happen if the tagged object is a sequence that contains other sequences). If you are dealing with implicitly tagged sets you really should be using this method.
Parameters:
obj - the tagged object.
explicit - true if the object is meant to be explicitly tagged false otherwise.

getObjectAt

public DEREncodable getObjectAt(int index)
return the object at the set postion indicated by index.
Parameters:
index - the set number (starting at zero) of the object
Returns:
the object at the set postion indicated by index.

getObjects

public Enumeration getObjects()

hashCode

public int hashCode()

size

public int size()
return the number of objects in this set.
Returns:
the number of objects in this set.