iaik.asn1
Class SET
java.lang.Object
|
+--iaik.asn1.ASN1Object
|
+--iaik.asn1.ConstructedType
|
+--iaik.asn1.SET
- public class SET
- extends ConstructedType
This class implements the ASN.1 native type "SET".
SET is a structered ASN.1 type identified by the UNIVERSAL TAG number 17.
An ASN.1 SET object is composed of several unordered components. All the
components may have the same type or may have different types.
A SET object is DER encoded using the constructed encoding practice
by splitting it into separately encoded components. Therefore the SEQUENCE class is
extended to be a subclass of the ConstructedType
class. Each component can be added to the current SET object by using a proper
addComponent method of
the ConstructedType super class.
The constructed form can be recognized by bit 6 of the (first) identifier octet(s) of
the DER encoded bit stream, which is set to 1.
The following example creates a new SET object and adds an INTERGER, BOOLEAN, and
a PrintableString component:
SET set = new SET();
set.addComponent(new INTEGER(3));
set.addComponent(new BOOLEAN(true));
set.addComponent(new PrintableString("Test"));
Of course, sets may be nested meaning that one SET contains another
SET as one of its components. The nesting may be of any depth.
- See Also:
ASN1Object,
ASN,
ConstructedType,
ConstructedType.addComponent(iaik.asn1.ASN1Object)
|
Field Summary |
protected boolean |
sorted
|
|
Constructor Summary |
SET()
Creates a new SET. |
SET(boolean sorted)
Creates a new SET. |
|
Method Summary |
protected void |
encode(java.io.OutputStream os)
DER encodes this ASN1Object and writes the result to the supplied OutputStream. |
java.lang.String |
toString()
Returns a String that represents the value of this SET. |
| Methods inherited from class iaik.asn1.ConstructedType |
addComponent,
addComponent,
countComponents,
decode,
getComponentAt,
getComponents,
getValue,
removeComponent,
removeComponent,
setComponent,
setValue |
| Methods inherited from class java.lang.Object |
clone,
equals,
finalize,
getClass,
hashCode,
notify,
notifyAll,
wait,
wait,
wait |
sorted
protected boolean sorted
SET
public SET()
- Creates a new SET.
Components may be added by means of the addComponent method of the ConstructedType
super class.
SET
public SET(boolean sorted)
- Creates a new SET.
If the parameter
sorted is set to true the
components are sorted by their encodings. This constructor only shall
be used for creating SET OF structures where all components have the
same type. In this way, an application may prefer to call the createSetOf(ASN1Type[] array, boolean sorted) method of class
ASN for creating the SET OF.
- Parameters:
sorted - whether to sort the components by their encodings or not
toString
public java.lang.String toString()
- Returns a String that represents the value of this SET.
- Overrides:
- toString in class ASN1Object
- Returns:
- the String representation
- See Also:
ASN1Object.toString()
encode
protected void encode(java.io.OutputStream os)
throws java.io.IOException
- Description copied from class: ConstructedType
- DER encodes this ASN1Object and writes the result to the supplied OutputStream.
In stream mode the components are encoded in correct order and the indefinite
length encoding method is used, in normal mode the components are encoded in
reverse order to facilitate length determination. Indefinite length encoding
may be preferable when dealing with large objects where whole the data is not
known at beginning of the data transfer.
- Overrides:
- encode in class ConstructedType
- Tags copied from class: ConstructedType
- Parameters:
os - the output stream to which to write the data- Throws:
- java.io.IOException - if an error occurs while reading from the stream