org.bouncycastle.mail.smime.SMIMECompressed Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of bcmail-jdk16 Show documentation
Show all versions of bcmail-jdk16 Show documentation
The Bouncy Castle Java CMS and S/MIME APIs for handling the CMS and S/MIME protocols. This jar contains CMS and S/MIME APIs for JDK 1.6. The APIs can be used in conjunction with a JCE/JCA provider such as the one provided with the Bouncy Castle Cryptography APIs. If the S/MIME API is used, the JavaMail API and the Java activation framework will also be needed.
package org.bouncycastle.mail.smime;
import java.io.IOException;
import java.io.InputStream;
import javax.mail.MessagingException;
import javax.mail.Part;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimePart;
import org.bouncycastle.cms.CMSCompressedData;
import org.bouncycastle.cms.CMSException;
/**
* containing class for an S/MIME pkcs7-mime MimePart.
*/
public class SMIMECompressed
extends CMSCompressedData
{
MimePart message;
private static InputStream getInputStream(
Part bodyPart)
throws MessagingException
{
try
{
return bodyPart.getInputStream();
}
catch (IOException e)
{
throw new MessagingException("can't extract input stream: " + e);
}
}
public SMIMECompressed(
MimeBodyPart message)
throws MessagingException, CMSException
{
super(getInputStream(message));
this.message = message;
}
public SMIMECompressed(
MimeMessage message)
throws MessagingException, CMSException
{
super(getInputStream(message));
this.message = message;
}
public MimePart getCompressedContent()
{
return message;
}
}