1e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrompackage org.bouncycastle.cms; 2e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom 3e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstromimport java.io.IOException; 4e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstromimport java.io.InputStream; 5e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstromimport java.io.OutputStream; 6e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom 7e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstromimport org.bouncycastle.asn1.ASN1ObjectIdentifier; 8e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstromimport org.bouncycastle.asn1.cms.CMSObjectIdentifiers; 9e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom 10e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom/** 11e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom * a class representing null or absent content. 12e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom */ 13e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrompublic class CMSAbsentContent 14e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom implements CMSTypedData, CMSReadable 15e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom{ 16e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom private final ASN1ObjectIdentifier type; 17e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom 18e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom public CMSAbsentContent() 19e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom { 20e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom this(new ASN1ObjectIdentifier(CMSObjectIdentifiers.data.getId())); 21e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom } 22e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom 23e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom public CMSAbsentContent( 24e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom ASN1ObjectIdentifier type) 25e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom { 26e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom this.type = type; 27e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom } 28e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom 29e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom public InputStream getInputStream() 30e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom { 31e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom return null; 32e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom } 33e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom 34e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom public void write(OutputStream zOut) 35e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom throws IOException, CMSException 36e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom { 37e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom // do nothing 38e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom } 39e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom 40e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom public Object getContent() 41e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom { 42e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom return null; 43e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom } 44e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom 45e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom public ASN1ObjectIdentifier getContentType() 46e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom { 47e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom return type; 48e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom } 49e6bf3e8dfa2804891a82075cb469b736321b4827Brian Carlstrom} 50