• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Java MimeUtil类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中org.apache.james.mime4j.util.MimeUtil的典型用法代码示例。如果您正苦于以下问题:Java MimeUtil类的具体用法?Java MimeUtil怎么用?Java MimeUtil使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



MimeUtil类属于org.apache.james.mime4j.util包,在下文中一共展示了MimeUtil类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: mimeBuildSignedMessage

import org.apache.james.mime4j.util.MimeUtil; //导入依赖的package包/类
private void mimeBuildSignedMessage(@NonNull BodyPart signedBodyPart, Intent result) throws MessagingException {
    if (!cryptoStatus.isSigningEnabled()) {
        throw new IllegalStateException("call to mimeBuildSignedMessage while signing isn't enabled!");
    }

    byte[] signedData = result.getByteArrayExtra(OpenPgpApi.RESULT_DETACHED_SIGNATURE);
    if (signedData == null) {
        throw new MessagingException("didn't find expected RESULT_DETACHED_SIGNATURE in api call result");
    }

    MimeMultipart multipartSigned = createMimeMultipart();
    multipartSigned.setSubType("signed");
    multipartSigned.addBodyPart(signedBodyPart);
    multipartSigned.addBodyPart(
            new MimeBodyPart(new BinaryMemoryBody(signedData, MimeUtil.ENC_7BIT),
                    "application/pgp-signature; name=\"signature.asc\""));
    MimeMessageHelper.setBody(currentProcessedMimeMessage, multipartSigned);

    String contentType = String.format(
            "multipart/signed; boundary=\"%s\";\r\n  protocol=\"application/pgp-signature\"",
            multipartSigned.getBoundary());
    if (result.hasExtra(OpenPgpApi.RESULT_SIGNATURE_MICALG)) {
        String micAlgParameter = result.getStringExtra(OpenPgpApi.RESULT_SIGNATURE_MICALG);
        contentType += String.format("; micalg=\"%s\"", micAlgParameter);
    } else {
        Timber.e("missing micalg parameter for pgp multipart/signed!");
    }
    currentProcessedMimeMessage.setHeader(MimeHeader.HEADER_CONTENT_TYPE, contentType);
}
 
开发者ID:philipwhiuk,项目名称:q-mail,代码行数:30,代码来源:PgpMessageBuilder.java


示例2: getDecodingInputStream

import org.apache.james.mime4j.util.MimeUtil; //导入依赖的package包/类
InputStream getDecodingInputStream(final InputStream rawInputStream, @Nullable String encoding) {
    if (MimeUtil.ENC_BASE64.equals(encoding)) {
        return new Base64InputStream(rawInputStream) {
            @Override
            public void close() throws IOException {
                super.close();
                rawInputStream.close();
            }
        };
    }
    if (MimeUtil.ENC_QUOTED_PRINTABLE.equals(encoding)) {
        return new QuotedPrintableInputStream(rawInputStream) {
            @Override
            public void close() throws IOException {
                super.close();
                rawInputStream.close();
            }
        };
    }

    return rawInputStream;
}
 
开发者ID:philipwhiuk,项目名称:q-mail,代码行数:23,代码来源:LocalStore.java


示例3: getSize

import org.apache.james.mime4j.util.MimeUtil; //导入依赖的package包/类
@Override
public long getSize() {
    try {
        byte[] bytes = text.getBytes(charset);

        if (MimeUtil.ENC_QUOTED_PRINTABLE.equalsIgnoreCase(encoding)) {
            return getLengthWhenQuotedPrintableEncoded(bytes);
        } else if (MimeUtil.ENC_8BIT.equalsIgnoreCase(encoding)) {
            return bytes.length;
        } else {
            throw new IllegalStateException("Cannot get size for encoding!");
        }
    } catch (IOException e) {
        throw new RuntimeException("Couldn't get body size", e);
    }
}
 
开发者ID:philipwhiuk,项目名称:q-mail,代码行数:17,代码来源:TextBody.java


示例4: nestedMessage

import org.apache.james.mime4j.util.MimeUtil; //导入依赖的package包/类
private MimeMessage nestedMessage(MimeMessage subMessage)
        throws MessagingException, IOException {
    BinaryTempFileMessageBody tempMessageBody = new BinaryTempFileMessageBody(MimeUtil.ENC_8BIT);

    OutputStream out = tempMessageBody.getOutputStream();
    try {
        subMessage.writeTo(out);
    } finally {
        out.close();
    }

    MimeBodyPart bodyPart = new MimeBodyPart(tempMessageBody, "message/rfc822");
    bodyPart.setHeader(MimeHeader.HEADER_CONTENT_DISPOSITION, "attachment");
    bodyPart.setEncoding(MimeUtil.ENC_7BIT);

    MimeMessage parentMessage = sampleMessage();
    ((Multipart) parentMessage.getBody()).addBodyPart(bodyPart);

    return parentMessage;
}
 
开发者ID:philipwhiuk,项目名称:q-mail,代码行数:21,代码来源:MessageTest.java


示例5: binaryBodyPart

import org.apache.james.mime4j.util.MimeUtil; //导入依赖的package包/类
private MimeBodyPart binaryBodyPart() throws IOException,
        MessagingException {
    String encodedTestString = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
            + "abcdefghijklmnopqrstuvwxyz0123456789+/\r\n";

    BinaryTempFileBody tempFileBody = new BinaryTempFileBody(MimeUtil.ENC_BASE64);

    InputStream in = new ByteArrayInputStream(
            encodedTestString.getBytes("UTF-8"));

    OutputStream out = tempFileBody.getOutputStream();
    try {
        IOUtils.copy(in, out);
    } finally {
        out.close();
    }

    MimeBodyPart bodyPart = new MimeBodyPart(tempFileBody,
            "application/octet-stream");
    bodyPart.setEncoding(MimeUtil.ENC_BASE64);

    return bodyPart;
}
 
开发者ID:philipwhiuk,项目名称:q-mail,代码行数:24,代码来源:MessageTest.java


示例6: createBody

import org.apache.james.mime4j.util.MimeUtil; //导入依赖的package包/类
public static Body createBody(InputStream in, String contentTransferEncoding, String contentType)
        throws IOException {

    if (contentTransferEncoding != null) {
        contentTransferEncoding = MimeUtility.getHeaderParameter(contentTransferEncoding, null);
    }

    BinaryTempFileBody tempBody;
    if (MimeUtil.isMessage(contentType)) {
        tempBody = new BinaryTempFileMessageBody(contentTransferEncoding);
    } else {
        tempBody = new BinaryTempFileBody(contentTransferEncoding);
    }

    OutputStream out = tempBody.getOutputStream();
    try {
        IOUtils.copy(in, out);
    } finally {
        out.close();
    }

    return tempBody;
}
 
开发者ID:scoute-dich,项目名称:K9-MailClient,代码行数:24,代码来源:MimeUtility.java


示例7: setBody

import org.apache.james.mime4j.util.MimeUtil; //导入依赖的package包/类
@Override
public void setBody(Body body) throws MessagingException {
    this.mBody = body;
    setHeader("MIME-Version", "1.0");
    if (body instanceof Multipart) {
        Multipart multipart = ((Multipart)body);
        multipart.setParent(this);
        String type = multipart.getContentType();
        setHeader(MimeHeader.HEADER_CONTENT_TYPE, type);
        if ("multipart/signed".equalsIgnoreCase(type)) {
            setEncoding(MimeUtil.ENC_7BIT);
        } else {
            setEncoding(MimeUtil.ENC_8BIT);
        }
    } else if (body instanceof TextBody) {
        setHeader(MimeHeader.HEADER_CONTENT_TYPE, String.format("%s;\r\n charset=utf-8",
                  getMimeType()));
        setEncoding(MimeUtil.ENC_8BIT);
    }
}
 
开发者ID:daxslab,项目名称:daxSmail,代码行数:21,代码来源:MimeMessage.java


示例8: writeTo

import org.apache.james.mime4j.util.MimeUtil; //导入依赖的package包/类
@Override
public void writeTo(OutputStream out) throws IOException, MessagingException {
    InputStream in = getInputStream();
    try {
        if (MimeUtil.ENC_7BIT.equalsIgnoreCase(mEncoding)) {
            /*
             * If we knew the message was already 7bit clean, then it
             * could be sent along without processing. But since we
             * don't know, we recursively parse it.
             */
            MimeMessage message = new MimeMessage(in, true);
            message.setUsing7bitTransport();
            message.writeTo(out);
        } else {
            IOUtils.copy(in, out);
        }
    } finally {
        in.close();
    }
}
 
开发者ID:daxslab,项目名称:daxSmail,代码行数:21,代码来源:BinaryTempFileMessageBody.java


示例9: setBody

import org.apache.james.mime4j.util.MimeUtil; //导入依赖的package包/类
public void setBody(Body body) throws MessagingException {
    this.mBody = body;
    if (body instanceof Multipart) {
        Multipart multipart = ((Multipart)body);
        multipart.setParent(this);
        String type = multipart.getContentType();
        setHeader(MimeHeader.HEADER_CONTENT_TYPE, type);
        if ("multipart/signed".equalsIgnoreCase(type)) {
            setEncoding(MimeUtil.ENC_7BIT);
        } else {
            setEncoding(MimeUtil.ENC_8BIT);
        }
    } else if (body instanceof TextBody) {
        String contentType = String.format("%s;\r\n charset=utf-8", getMimeType());
        String name = MimeUtility.getHeaderParameter(getContentType(), "name");
        if (name != null) {
            contentType += String.format(";\r\n name=\"%s\"", name);
        }
        setHeader(MimeHeader.HEADER_CONTENT_TYPE, contentType);
        setEncoding(MimeUtil.ENC_8BIT);
    }
}
 
开发者ID:daxslab,项目名称:daxSmail,代码行数:23,代码来源:MimeBodyPart.java


示例10: writeTo

import org.apache.james.mime4j.util.MimeUtil; //导入依赖的package包/类
public static void writeTo(BinaryAttachmentBody body, OutputStream out) throws IOException,
        MessagingException {
    InputStream in = body.getInputStream();
    try {
        if (MimeUtil.ENC_7BIT.equalsIgnoreCase(body.getEncoding())) {
            /*
             * If we knew the message was already 7bit clean, then it
             * could be sent along without processing. But since we
             * don't know, we recursively parse it.
             */
            MimeMessage message = new MimeMessage(in, true);
            message.setUsing7bitTransport();
            message.writeTo(out);
        } else {
            IOUtils.copy(in, out);
        }
    } finally {
        in.close();
    }
}
 
开发者ID:daxslab,项目名称:daxSmail,代码行数:21,代码来源:LocalStore.java


示例11: nestedMessage

import org.apache.james.mime4j.util.MimeUtil; //导入依赖的package包/类
private MimeMessage nestedMessage(MimeMessage subMessage)
        throws MessagingException, IOException {
    BinaryTempFileMessageBody tempMessageBody = new BinaryTempFileMessageBody();
    tempMessageBody.setEncoding(MimeUtil.ENC_8BIT);

    OutputStream out = tempMessageBody.getOutputStream();
    try {
        subMessage.writeTo(out);
    } finally {
        out.close();
    }

    MimeBodyPart bodyPart = new MimeBodyPart(tempMessageBody, "message/rfc822");
    bodyPart.setHeader(MimeHeader.HEADER_CONTENT_DISPOSITION, "attachment");
    bodyPart.setEncoding(MimeUtil.ENC_8BIT);

    MimeMessage parentMessage = sampleMessage();
    ((Multipart) parentMessage.getBody()).addBodyPart(bodyPart);

    return parentMessage;
}
 
开发者ID:daxslab,项目名称:daxSmail,代码行数:22,代码来源:MessageTest.java


示例12: sampleMessage

import org.apache.james.mime4j.util.MimeUtil; //导入依赖的package包/类
private MimeMessage sampleMessage() throws MessagingException, IOException {
    MimeMessage message = new MimeMessage();
    message.setFrom(new Address("[email protected]"));
    message.setRecipient(RecipientType.TO, new Address("[email protected]"));
    message.setSubject("Test Message");
    message.setHeader("Date", "Wed, 28 Aug 2013 08:51:09 -0400");
    message.setEncoding(MimeUtil.ENC_8BIT);

    NonRandomMimeMultipartTest multipartBody = new NonRandomMimeMultipartTest();
    multipartBody.setSubType("mixed");
    multipartBody.addBodyPart(textBodyPart(MimeUtil.ENC_8BIT));
    multipartBody.addBodyPart(textBodyPart(MimeUtil.ENC_QUOTED_PRINTABLE));
    multipartBody.addBodyPart(binaryBodyPart());
    message.setBody(multipartBody);

    return message;
}
 
开发者ID:daxslab,项目名称:daxSmail,代码行数:18,代码来源:MessageTest.java


示例13: binaryBodyPart

import org.apache.james.mime4j.util.MimeUtil; //导入依赖的package包/类
private MimeBodyPart binaryBodyPart() throws IOException,
        MessagingException {
    String encodedTestString = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
            + "abcdefghijklmnopqrstuvwxyz0123456789+/";

    BinaryTempFileBody tempFileBody = new BinaryTempFileBody();

    InputStream in = new Base64InputStream(new ByteArrayInputStream(
            encodedTestString.getBytes("UTF-8")));

    OutputStream out = tempFileBody.getOutputStream();
    try {
        IOUtils.copy(in, out);
    } finally {
        out.close();
    }

    MimeBodyPart bodyPart = new MimeBodyPart(tempFileBody,
            "application/octet-stream");
    bodyPart.setEncoding(MimeUtil.ENC_BASE64);

    return bodyPart;
}
 
开发者ID:daxslab,项目名称:daxSmail,代码行数:24,代码来源:MessageTest.java


示例14: writeTo

import org.apache.james.mime4j.util.MimeUtil; //导入依赖的package包/类
/**
 * Write the content to the given outputstream
 * 
 * @param out the outputstream to write to
 * @param mode compatibility mode:
 *   {@link MessageUtils#LENIENT}, {@link MessageUtils#STRICT_ERROR}, {@link MessageUtils#STRICT_IGNORE}  
 * @throws IOException 
 */
public void writeTo(OutputStream out, int mode) throws IOException, MimeException {
    getHeader().writeTo(out, mode);
    
    out.flush();
    
    final Body body = getBody();

    OutputStream encOut;
    if (MimeUtil.ENC_BASE64.equals(getContentTransferEncoding())) {
        encOut = CodecUtil.wrapBase64(out);
    } else if (MimeUtil.ENC_QUOTED_PRINTABLE.equals(getContentTransferEncoding())) {
        encOut = CodecUtil.wrapQuotedPrintable(out, (body instanceof BinaryBody));
    } else {
        encOut = out;
    }
    body.writeTo(encOut, mode);
    encOut.flush();
    // the Base64 output streams requires closing of the stream but
    // we don't want it to close the inner stream so we override the behaviour
    // for the wrapping stream writer.
    if (encOut != out) encOut.close();
}
 
开发者ID:appcelerator-archive,项目名称:ti.box,代码行数:31,代码来源:Entity.java


示例15: addField

import org.apache.james.mime4j.util.MimeUtil; //导入依赖的package包/类
public void addField(String name, String value) {
    name = name.trim().toLowerCase();
    if (MimeUtil.MIME_HEADER_MIME_VERSION.equals(name) && !isMimeVersionSet) {
        parseMimeVersion(value);
    } else if (MimeUtil.MIME_HEADER_CONTENT_ID.equals(name) && !isContentIdSet) {
        parseContentId(value);
    } else if (MimeUtil.MIME_HEADER_CONTENT_DESCRIPTION.equals(name) && !isContentDescriptionSet) {
        parseContentDescription(value);
    } else if (MimeUtil.MIME_HEADER_CONTENT_DISPOSITION.equals(name) && !isContentDispositionSet) {
        parseContentDisposition(value);
    } else if (MimeUtil.MIME_HEADER_LANGAUGE.equals(name) && !isContentLanguageSet) {
        parseLanguage(value);
    } else if (MimeUtil.MIME_HEADER_LOCATION.equals(name) && !isContentLocationSet) {
        parseLocation(value);
    } else if (MimeUtil.MIME_HEADER_MD5.equals(name) && !isContentMD5Set) {
        parseMD5(value);
    } else {
        super.addField(name, value);
    }
}
 
开发者ID:appcelerator-archive,项目名称:ti.box,代码行数:21,代码来源:MaximalBodyDescriptor.java


示例16: setBody

import org.apache.james.mime4j.util.MimeUtil; //导入依赖的package包/类
@Override
public void setBody(Body body) throws MessagingException {
    this.mBody = body;
    setHeader("MIME-Version", "1.0");
    if (body instanceof Multipart) {
        Multipart multipart = ((Multipart)body);
        multipart.setParent(this);
        String type = multipart.getContentType();
        setHeader(MimeHeader.HEADER_CONTENT_TYPE, type);
        if (!type.contains("multipart/signed") && !type.contains("multipart/encrypted")) {
            setEncoding(MimeUtil.ENC_8BIT);
        }
    } else if (body instanceof TextBody) {
        setHeader(MimeHeader.HEADER_CONTENT_TYPE, String.format("%s; charset=utf-8",
                  getMimeType()));
        setEncoding(MimeUtil.ENC_8BIT);
    }
}
 
开发者ID:thialfihar,项目名称:k-9,代码行数:19,代码来源:MimeMessage.java


示例17: setBody

import org.apache.james.mime4j.util.MimeUtil; //导入依赖的package包/类
public void setBody(Body body) throws MessagingException {
     this.mBody = body;
     if (body instanceof Multipart) {
         Multipart multipart = ((Multipart)body);
         multipart.setParent(this);
         String type = multipart.getContentType();
         setHeader(MimeHeader.HEADER_CONTENT_TYPE, type);
     } else if (body instanceof TextBody ) {
   String mimeType = getMimeType();
String contentType = null;
if( mimeType.contains( "application/pgp-signature" ) || mimeType.contains( "application/pgp-encrypted" ) || mimeType.contains( "application/octet-stream" ) ) {
	contentType = mimeType;
	setEncoding(MimeUtil.ENC_7BIT);
} else {
    contentType = String.format("%s; charset=utf-8", mimeType);
    setEncoding(MimeUtil.ENC_QUOTED_PRINTABLE);
    //( ( TextBody )body ).setRawOutput( true );
}
String name = MimeUtility.getHeaderParameter(getContentType(), "name");
if (name != null) {
	contentType += String.format("; name=\"%s\"", name);
}
setHeader(MimeHeader.HEADER_CONTENT_TYPE, contentType);
     }
 }
 
开发者ID:thialfihar,项目名称:k-9,代码行数:26,代码来源:MimeBodyPart.java


示例18: mimeBuildInlineMessage

import org.apache.james.mime4j.util.MimeUtil; //导入依赖的package包/类
private void mimeBuildInlineMessage(@NonNull Body inlineBodyPart) throws MessagingException {
    if (!cryptoStatus.isPgpInlineModeEnabled()) {
        throw new IllegalStateException("call to mimeBuildInlineMessage while pgp/inline isn't enabled!");
    }

    boolean isCleartextSignature = !cryptoStatus.isEncryptionEnabled();
    if (isCleartextSignature) {
        inlineBodyPart.setEncoding(MimeUtil.ENC_QUOTED_PRINTABLE);
    }
    MimeMessageHelper.setBody(currentProcessedMimeMessage, inlineBodyPart);
}
 
开发者ID:philipwhiuk,项目名称:q-mail,代码行数:12,代码来源:PgpMessageBuilder.java


示例19: isAnyMimeType

import org.apache.james.mime4j.util.MimeUtil; //导入依赖的package包/类
public static boolean isAnyMimeType(String o, String... a) {
    for (String element : a) {
        if (MimeUtil.isSameMimeType(element, o)) {
            return true;
        }
    }
    return false;
}
 
开发者ID:philipwhiuk,项目名称:q-mail,代码行数:9,代码来源:Utility.java


示例20: migrateSimpleMailContent

import org.apache.james.mime4j.util.MimeUtil; //导入依赖的package包/类
private static MimeStructureState migrateSimpleMailContent(SQLiteDatabase db, String htmlContent,
        String textContent, String mimeType, MimeHeader mimeHeader, MimeStructureState structureState)
        throws IOException {
    Timber.d("Processing mail with simple structure");

    if (MimeUtil.isSameMimeType(mimeType, "text/plain")) {
        return insertTextualPartIntoDatabase(db, structureState, mimeHeader, textContent, false);
    } else if (MimeUtil.isSameMimeType(mimeType, "text/html")) {
        return insertTextualPartIntoDatabase(db, structureState, mimeHeader, htmlContent, true);
    } else if (MimeUtil.isSameMimeType(mimeType, "multipart/alternative")) {
        return insertBodyAsMultipartAlternative(db, structureState, mimeHeader, textContent, htmlContent);
    } else {
        throw new IllegalStateException("migrateSimpleMailContent cannot handle mimeType " + mimeType);
    }
}
 
开发者ID:philipwhiuk,项目名称:q-mail,代码行数:16,代码来源:MigrationTo51.java



注:本文中的org.apache.james.mime4j.util.MimeUtil类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java IRequestMapper类代码示例发布时间:2022-05-23
下一篇:
Java ReasonerInterruptedException类代码示例发布时间:2022-05-23
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap