Attributes.java revision e6bf3e8dfa2804891a82075cb469b736321b4827
1package org.bouncycastle.asn1.cms;
2
3import org.bouncycastle.asn1.ASN1EncodableVector;
4import org.bouncycastle.asn1.ASN1Object;
5import org.bouncycastle.asn1.ASN1Primitive;
6import org.bouncycastle.asn1.ASN1Set;
7import org.bouncycastle.asn1.BERSet;
8
9public class Attributes
10    extends ASN1Object
11{
12    private ASN1Set attributes;
13
14    private Attributes(ASN1Set set)
15    {
16        attributes = set;
17    }
18
19    public Attributes(ASN1EncodableVector v)
20    {
21        attributes = new BERSet(v);
22    }
23
24    public static Attributes getInstance(Object obj)
25    {
26        if (obj instanceof Attributes)
27        {
28            return (Attributes)obj;
29        }
30        else if (obj != null)
31        {
32            return new Attributes(ASN1Set.getInstance(obj));
33        }
34
35        return null;
36    }
37
38    /**
39     * <pre>
40     * Attributes ::=
41     *   SET SIZE(1..MAX) OF Attribute -- according to RFC 5652
42     * </pre>
43     * @return
44     */
45    public ASN1Primitive toASN1Primitive()
46    {
47        return attributes;
48    }
49}
50