001package org.apache.commons.ssl.org.bouncycastle.asn1.smime; 002 003import org.apache.commons.ssl.org.bouncycastle.asn1.ASN1Encodable; 004import org.apache.commons.ssl.org.bouncycastle.asn1.ASN1EncodableVector; 005import org.apache.commons.ssl.org.bouncycastle.asn1.ASN1Integer; 006import org.apache.commons.ssl.org.bouncycastle.asn1.ASN1ObjectIdentifier; 007import org.apache.commons.ssl.org.bouncycastle.asn1.DERSequence; 008 009/** 010 * Handler for creating a vector S/MIME Capabilities 011 */ 012public class SMIMECapabilityVector 013{ 014 private ASN1EncodableVector capabilities = new ASN1EncodableVector(); 015 016 public void addCapability( 017 ASN1ObjectIdentifier capability) 018 { 019 capabilities.add(new DERSequence(capability)); 020 } 021 022 public void addCapability( 023 ASN1ObjectIdentifier capability, 024 int value) 025 { 026 ASN1EncodableVector v = new ASN1EncodableVector(); 027 028 v.add(capability); 029 v.add(new ASN1Integer(value)); 030 031 capabilities.add(new DERSequence(v)); 032 } 033 034 public void addCapability( 035 ASN1ObjectIdentifier capability, 036 ASN1Encodable params) 037 { 038 ASN1EncodableVector v = new ASN1EncodableVector(); 039 040 v.add(capability); 041 v.add(params); 042 043 capabilities.add(new DERSequence(v)); 044 } 045 046 public ASN1EncodableVector toASN1EncodableVector() 047 { 048 return capabilities; 049 } 050}