diff options
Diffstat (limited to 'libraries/spongycastle/mail/src/main/java/org/spongycastle/mail/smime/handlers/PKCS7ContentHandler.java')
-rw-r--r-- | libraries/spongycastle/mail/src/main/java/org/spongycastle/mail/smime/handlers/PKCS7ContentHandler.java | 110 |
1 files changed, 0 insertions, 110 deletions
diff --git a/libraries/spongycastle/mail/src/main/java/org/spongycastle/mail/smime/handlers/PKCS7ContentHandler.java b/libraries/spongycastle/mail/src/main/java/org/spongycastle/mail/smime/handlers/PKCS7ContentHandler.java deleted file mode 100644 index d3db7fd6e..000000000 --- a/libraries/spongycastle/mail/src/main/java/org/spongycastle/mail/smime/handlers/PKCS7ContentHandler.java +++ /dev/null @@ -1,110 +0,0 @@ -package org.bouncycastle.mail.smime.handlers; - -import java.awt.datatransfer.DataFlavor; -import java.io.BufferedInputStream; -import java.io.IOException; -import java.io.InputStream; -import java.io.OutputStream; - -import javax.activation.ActivationDataFlavor; -import javax.activation.DataContentHandler; -import javax.activation.DataSource; -import javax.mail.MessagingException; -import javax.mail.internet.MimeBodyPart; - -import org.bouncycastle.mail.smime.SMIMEStreamingProcessor; - -public class PKCS7ContentHandler - implements DataContentHandler -{ - private final ActivationDataFlavor _adf; - private final DataFlavor[] _dfs; - - PKCS7ContentHandler( - ActivationDataFlavor adf, - DataFlavor[] dfs) - { - _adf = adf; - _dfs = dfs; - } - - public Object getContent( - DataSource ds) - throws IOException - { - return ds.getInputStream(); - } - - public Object getTransferData( - DataFlavor df, - DataSource ds) - throws IOException - { - if (_adf.equals(df)) - { - return getContent(ds); - } - else - { - return null; - } - } - - public DataFlavor[] getTransferDataFlavors() - { - return _dfs; - } - - public void writeTo( - Object obj, - String mimeType, - OutputStream os) - throws IOException - { - if (obj instanceof MimeBodyPart) - { - try - { - ((MimeBodyPart)obj).writeTo(os); - } - catch (MessagingException ex) - { - throw new IOException(ex.getMessage()); - } - } - else if (obj instanceof byte[]) - { - os.write((byte[])obj); - } - else if (obj instanceof InputStream) - { - int b; - InputStream in = (InputStream)obj; - - if (!(in instanceof BufferedInputStream)) - { - in = new BufferedInputStream(in); - } - - while ((b = in.read()) >= 0) - { - os.write(b); - } - } - else if (obj instanceof SMIMEStreamingProcessor) - { - SMIMEStreamingProcessor processor = (SMIMEStreamingProcessor)obj; - - processor.write(os); - } - else - { - // TODO it would be even nicer if we could attach the object to the exception - // as well since in deeply nested messages, it is not always clear which - // part caused the problem. Thus I guess we would have to subclass the - // IOException - - throw new IOException("unknown object in writeTo " + obj); - } - } -} |