Package org.gudy.bouncycastle.asn1
Class ASN1Sequence
- java.lang.Object
-
- org.gudy.bouncycastle.asn1.ASN1Encodable
-
- org.gudy.bouncycastle.asn1.DERObject
-
- org.gudy.bouncycastle.asn1.ASN1Object
-
- org.gudy.bouncycastle.asn1.ASN1Sequence
-
- All Implemented Interfaces:
DEREncodable
,DERTags
- Direct Known Subclasses:
DERConstructedSequence
,DERSequence
public abstract class ASN1Sequence extends ASN1Object
-
-
Field Summary
Fields Modifier and Type Field Description private java.util.Vector
seq
-
Fields 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 Constructor Description ASN1Sequence()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected void
addObject(DEREncodable obj)
(package private) boolean
asn1Equals(DERObject o)
(package private) abstract void
encode(DEROutputStream out)
static ASN1Sequence
getInstance(java.lang.Object obj)
return an ASN1Sequence from the given object.static ASN1Sequence
getInstance(ASN1TaggedObject obj, boolean explicit)
Return an ASN1 sequence from a tagged object.DEREncodable
getObjectAt(int index)
return the object at the sequence postion indicated by index.java.util.Enumeration
getObjects()
int
hashCode()
ASN1SequenceParser
parser()
int
size()
return the number of objects in this sequence.java.lang.String
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
-
-
-
-
Method Detail
-
getInstance
public static ASN1Sequence getInstance(java.lang.Object obj)
return an ASN1Sequence from the given object.- Parameters:
obj
- the object we want converted.- Throws:
java.lang.IllegalArgumentException
- if the object cannot be converted.
-
getInstance
public static ASN1Sequence getInstance(ASN1TaggedObject obj, boolean explicit)
Return an ASN1 sequence 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 sequence - 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 sequences 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:
java.lang.IllegalArgumentException
- if the tagged object cannot be converted.
-
getObjects
public java.util.Enumeration getObjects()
-
parser
public ASN1SequenceParser parser()
-
getObjectAt
public DEREncodable getObjectAt(int index)
return the object at the sequence postion indicated by index.- Parameters:
index
- the sequence number (starting at zero) of the object- Returns:
- the object at the sequence postion indicated by index.
-
size
public int size()
return the number of objects in this sequence.- Returns:
- the number of objects in this sequence.
-
hashCode
public int hashCode()
- Specified by:
hashCode
in classASN1Object
-
asn1Equals
boolean asn1Equals(DERObject o)
- Specified by:
asn1Equals
in classASN1Object
-
addObject
protected void addObject(DEREncodable obj)
-
encode
abstract void encode(DEROutputStream out) throws java.io.IOException
- Specified by:
encode
in classASN1Object
- Throws:
java.io.IOException
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
-