Package org.gudy.bouncycastle.asn1
Class ASN1Set
java.lang.Object
org.gudy.bouncycastle.asn1.ASN1Encodable
org.gudy.bouncycastle.asn1.DERObject
org.gudy.bouncycastle.asn1.ASN1Object
org.gudy.bouncycastle.asn1.ASN1Set
- All Implemented Interfaces:
DEREncodable
,DERTags
- Direct Known Subclasses:
DERConstructedSet
,DERSet
-
Field Summary
FieldsFields inherited from class org.gudy.bouncycastle.asn1.ASN1Encodable
BER, DER
Fields inherited from interface org.gudy.bouncycastle.asn1.DERTags
APPLICATION, BIT_STRING, BMP_STRING, BOOLEAN, CONSTRUCTED, ENUMERATED, EXTERNAL, GENERAL_STRING, GENERALIZED_TIME, 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
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected void
addObject
(DEREncodable obj) (package private) boolean
(package private) abstract void
encode
(DEROutputStream out) private byte[]
getEncoded
(DEREncodable obj) 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.getObjectAt
(int index) return the object at the set postion indicated by index.int
hashCode()
private boolean
lessThanOrEqual
(byte[] a, byte[] b) return true if a <= b (arrays are assumed padded with zeros).parser()
int
size()
return the number of objects in this set.protected void
sort()
toString()
Methods inherited from class org.gudy.bouncycastle.asn1.ASN1Object
equals, fromByteArray
Methods inherited from class org.gudy.bouncycastle.asn1.DERObject
toASN1Object
Methods inherited from class org.gudy.bouncycastle.asn1.ASN1Encodable
getDEREncoded, getDERObject, getEncoded, getEncoded
-
Field Details
-
set
-
-
Constructor Details
-
ASN1Set
public ASN1Set()
-
-
Method Details
-
getInstance
return an ASN1Set from the given object.- Parameters:
obj
- the object we want converted.- Throws:
IllegalArgumentException
- if the object cannot be converted.
-
getInstance
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.- Throws:
IllegalArgumentException
- if the tagged object cannot be converted.
-
getObjects
-
getObjectAt
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.
-
size
public int size()return the number of objects in this set.- Returns:
- the number of objects in this set.
-
parser
-
hashCode
public int hashCode()- Specified by:
hashCode
in classASN1Object
-
asn1Equals
- Specified by:
asn1Equals
in classASN1Object
-
lessThanOrEqual
private boolean lessThanOrEqual(byte[] a, byte[] b) return true if a <= b (arrays are assumed padded with zeros). -
getEncoded
-
sort
protected void sort() -
addObject
-
encode
- Specified by:
encode
in classASN1Object
- Throws:
IOException
-
toString
-