diff options
Diffstat (limited to 'core/src/main/java/org/spongycastle/asn1/smime/SMIMECapabilityVector.java')
-rw-r--r-- | core/src/main/java/org/spongycastle/asn1/smime/SMIMECapabilityVector.java | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/core/src/main/java/org/spongycastle/asn1/smime/SMIMECapabilityVector.java b/core/src/main/java/org/spongycastle/asn1/smime/SMIMECapabilityVector.java new file mode 100644 index 00000000..91834e38 --- /dev/null +++ b/core/src/main/java/org/spongycastle/asn1/smime/SMIMECapabilityVector.java @@ -0,0 +1,50 @@ +package org.spongycastle.asn1.smime; + +import org.spongycastle.asn1.ASN1Encodable; +import org.spongycastle.asn1.ASN1EncodableVector; +import org.spongycastle.asn1.ASN1Integer; +import org.spongycastle.asn1.ASN1ObjectIdentifier; +import org.spongycastle.asn1.DERSequence; + +/** + * Handler for creating a vector S/MIME Capabilities + */ +public class SMIMECapabilityVector +{ + private ASN1EncodableVector capabilities = new ASN1EncodableVector(); + + public void addCapability( + ASN1ObjectIdentifier capability) + { + capabilities.add(new DERSequence(capability)); + } + + public void addCapability( + ASN1ObjectIdentifier capability, + int value) + { + ASN1EncodableVector v = new ASN1EncodableVector(); + + v.add(capability); + v.add(new ASN1Integer(value)); + + capabilities.add(new DERSequence(v)); + } + + public void addCapability( + ASN1ObjectIdentifier capability, + ASN1Encodable params) + { + ASN1EncodableVector v = new ASN1EncodableVector(); + + v.add(capability); + v.add(params); + + capabilities.add(new DERSequence(v)); + } + + public ASN1EncodableVector toASN1EncodableVector() + { + return capabilities; + } +} |