当前位置: 首页>>代码示例>>Java>>正文


Java MimeUtil.isMessage方法代码示例

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


在下文中一共展示了MimeUtil.isMessage方法的8个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: 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

示例2: addAttachmentsToMessage

import org.apache.james.mime4j.util.MimeUtil; //导入方法依赖的package包/类
/**
 * Add attachments as parts into a MimeMultipart container.
 * @param mp MimeMultipart container in which to insert parts.
 * @throws MessagingException
 */
private void addAttachmentsToMessage(final MimeMultipart mp) throws MessagingException {
    for (Attachment attachment : attachments) {
        if (attachment.state != Attachment.LoadingState.COMPLETE) {
            continue;
        }

        String contentType = attachment.contentType;
        if (MimeUtil.isMessage(contentType)) {
            contentType = "application/octet-stream";
            // TODO reencode message body to 7 bit
            // body = new TempFileMessageBody(attachment.filename);
        }

        Body body = new TempFileBody(attachment.filename);
        MimeBodyPart bp = new MimeBodyPart(body);

        /*
         * Correctly encode the filename here. Otherwise the whole
         * header value (all parameters at once) will be encoded by
         * MimeHeader.writeTo().
         */
        bp.addHeader(MimeHeader.HEADER_CONTENT_TYPE, String.format("%s;\r\n name=\"%s\"",
                contentType,
                EncoderUtil.encodeIfNecessary(attachment.name,
                        EncoderUtil.Usage.WORD_ENTITY, 7)));

        bp.setEncoding(MimeUtility.getEncodingforType(contentType));

        /*
         * TODO: Oh the joys of MIME...
         *
         * From RFC 2183 (The Content-Disposition Header Field):
         * "Parameter values longer than 78 characters, or which
         *  contain non-ASCII characters, MUST be encoded as specified
         *  in [RFC 2184]."
         *
         * Example:
         *
         * Content-Type: application/x-stuff
         *  title*1*=us-ascii'en'This%20is%20even%20more%20
         *  title*2*=%2A%2A%2Afun%2A%2A%2A%20
         *  title*3="isn't it!"
         */
        bp.addHeader(MimeHeader.HEADER_CONTENT_DISPOSITION, String.format(Locale.US,
                "attachment;\r\n filename=\"%s\";\r\n size=%d",
                attachment.name, attachment.size));

        mp.addBodyPart(bp);
    }
}
 
开发者ID:philipwhiuk,项目名称:q-mail,代码行数:56,代码来源:MessageBuilder.java

示例3: addAttachmentsToMessage

import org.apache.james.mime4j.util.MimeUtil; //导入方法依赖的package包/类
/**
 * Add attachments as parts into a MimeMultipart container.
 * @param mp MimeMultipart container in which to insert parts.
 * @throws MessagingException
 */
private void addAttachmentsToMessage(final MimeMultipart mp) throws MessagingException {
    Body body;
    for (int i = 0, count = mAttachments.getChildCount(); i < count; i++) {
        Attachment attachment = (Attachment) mAttachments.getChildAt(i).getTag();

        if (attachment.state != Attachment.LoadingState.COMPLETE) {
            continue;
        }

        String contentType = attachment.contentType;
        if (MimeUtil.isMessage(contentType)) {
            body = new TempFileMessageBody(attachment.filename);
        } else {
            body = new TempFileBody(attachment.filename);
        }
        MimeBodyPart bp = new MimeBodyPart(body);

        /*
         * Correctly encode the filename here. Otherwise the whole
         * header value (all parameters at once) will be encoded by
         * MimeHeader.writeTo().
         */
        bp.addHeader(MimeHeader.HEADER_CONTENT_TYPE, String.format("%s;\r\n name=\"%s\"",
                     contentType,
                     EncoderUtil.encodeIfNecessary(attachment.name,
                             EncoderUtil.Usage.WORD_ENTITY, 7)));

        bp.setEncoding(MimeUtility.getEncodingforType(contentType));

        /*
         * TODO: Oh the joys of MIME...
         *
         * From RFC 2183 (The Content-Disposition Header Field):
         * "Parameter values longer than 78 characters, or which
         *  contain non-ASCII characters, MUST be encoded as specified
         *  in [RFC 2184]."
         *
         * Example:
         *
         * Content-Type: application/x-stuff
         *  title*1*=us-ascii'en'This%20is%20even%20more%20
         *  title*2*=%2A%2A%2Afun%2A%2A%2A%20
         *  title*3="isn't it!"
         */
        bp.addHeader(MimeHeader.HEADER_CONTENT_DISPOSITION, String.format(Locale.US,
                "attachment;\r\n filename=\"%s\";\r\n size=%d",
                attachment.name, attachment.size));

        mp.addBodyPart(bp);
    }
}
 
开发者ID:daxslab,项目名称:daxSmail,代码行数:57,代码来源:MessageCompose.java

示例4: addAttachmentsToMessage

import org.apache.james.mime4j.util.MimeUtil; //导入方法依赖的package包/类
/**
 * Add attachments as parts into a MimeMultipart container.
 * @param mp MimeMultipart container in which to insert parts.
 * @throws MessagingException
 */
private void addAttachmentsToMessage(final MimeMultipart mp) throws MessagingException {
    Body body;
    for (int i = 0, count = mAttachments.getChildCount(); i < count; i++) {
        Attachment attachment = (Attachment) mAttachments.getChildAt(i).getTag();

        if (attachment.state != Attachment.LoadingState.COMPLETE) {
            continue;
        }

        String contentType = attachment.contentType;
        if (MimeUtil.isMessage(contentType)) {
            body = new TempFileMessageBody(attachment.filename);
        } else {
            body = new TempFileBody(attachment.filename);
        }
        MimeBodyPart bp = new MimeBodyPart(body);

        /*
         * Correctly encode the filename here. Otherwise the whole
         * header value (all parameters at once) will be encoded by
         * MimeHeader.writeTo().
         */
        bp.addHeader(MimeHeader.HEADER_CONTENT_TYPE, String.format("%s; name=\"%s\"",
                     contentType,
                     EncoderUtil.encodeIfNecessary(attachment.name,
                             EncoderUtil.Usage.WORD_ENTITY, 7)));

        bp.setEncoding(MimeUtility.getEncodingforType(contentType));

        /*
         * TODO: Oh the joys of MIME...
         *
         * From RFC 2183 (The Content-Disposition Header Field):
         * "Parameter values longer than 78 characters, or which
         *  contain non-ASCII characters, MUST be encoded as specified
         *  in [RFC 2184]."
         *
         * Example:
         *
         * Content-Type: application/x-stuff
         *  title*1*=us-ascii'en'This%20is%20even%20more%20
         *  title*2*=%2A%2A%2Afun%2A%2A%2A%20
         *  title*3="isn't it!"
         */
        bp.addHeader(MimeHeader.HEADER_CONTENT_DISPOSITION, String.format(
                         "attachment; filename=\"%s\"; size=%d",
                         attachment.name, attachment.size));

        mp.addBodyPart(bp);
    }
}
 
开发者ID:thialfihar,项目名称:k-9,代码行数:57,代码来源:MessageCompose.java

示例5: addAttachmentsToMessage

import org.apache.james.mime4j.util.MimeUtil; //导入方法依赖的package包/类
/**
 * Add attachments as parts into a MimeMultipart container.
 * @param mp MimeMultipart container in which to insert parts.
 * @throws MessagingException
 */
private void addAttachmentsToMessage(final MimeMultipart mp) throws MessagingException {
    Body body;
    for (int i = 0, count = mAttachments.getChildCount(); i < count; i++) {
        Attachment attachment = (Attachment) mAttachments.getChildAt(i).getTag();

        if (attachment.state != Attachment.LoadingState.COMPLETE) {
            continue;
        }

        String contentType = attachment.contentType;
        if (MimeUtil.isMessage(contentType)) {
            body = new TempFileMessageBody(attachment.filename);
        } else {
            body = new TempFileBody(attachment.filename);
        }
        MimeBodyPart bp = new MimeBodyPart(body);

        /*
         * Correctly encode the filename here. Otherwise the whole
         * header value (all parameters at once) will be encoded by
         * MimeHeader.writeTo().
         */
        bp.addHeader(MimeHeader.HEADER_CONTENT_TYPE, String.format("%s;\r\n name=\"%s\"",
                     contentType,
                     EncoderUtil.encodeIfNecessary(attachment.name,
                             EncoderUtil.Usage.WORD_ENTITY, 7)));

        bp.setEncoding(MimeUtility.getEncodingforType(contentType));

        /*
         * TODO: Oh the joys of MIME...
         *
         * From RFC 2183 (The Content-Disposition Header Field):
         * "Parameter values longer than 78 characters, or which
         *  contain non-ASCII characters, MUST be encoded as specified
         *  in [RFC 2184]."
         *
         * Example:
         *
         * Content-Type: application/x-stuff
         *  title*1*=us-ascii'en'This%20is%20even%20more%20
         *  title*2*=%2A%2A%2Afun%2A%2A%2A%20
         *  title*3="isn't it!"
         */
        bp.addHeader(MimeHeader.HEADER_CONTENT_DISPOSITION, String.format(
                         "attachment;\r\n filename=\"%s\";\r\n size=%d",
                         attachment.name, attachment.size));

        mp.addBodyPart(bp);
    }
}
 
开发者ID:masenov,项目名称:k-9-master,代码行数:57,代码来源:MessageCompose.java

示例6: getEncodingforType

import org.apache.james.mime4j.util.MimeUtil; //导入方法依赖的package包/类
/**
 * Get a default content-transfer-encoding for use with a given content-type
 * when adding an unencoded attachment. It's possible that 8bit encodings
 * may later be converted to 7bit for 7bit transport.
 * <ul>
 * <li>null: base64
 * <li>message/rfc822: 8bit
 * <li>message/*: 7bit
 * <li>multipart/signed: 7bit
 * <li>multipart/*: 8bit
 * <li>*&#47;*: base64
 * </ul>
 *
 * @param type
 *            A String representing a MIME content-type
 * @return A String representing a MIME content-transfer-encoding
 */
public static String getEncodingforType(String type) {
    if (type == null) {
        return (MimeUtil.ENC_BASE64);
    } else if (MimeUtil.isMessage(type)) {
        return (MimeUtil.ENC_8BIT);
    } else if (isSameMimeType(type, "multipart/signed") || isMessage(type)) {
        return (MimeUtil.ENC_7BIT);
    } else if (isMultipart(type)) {
        return (MimeUtil.ENC_8BIT);
    } else {
        return (MimeUtil.ENC_BASE64);
    }
}
 
开发者ID:philipwhiuk,项目名称:q-mail,代码行数:31,代码来源:MimeUtility.java

示例7: getEncodingforType

import org.apache.james.mime4j.util.MimeUtil; //导入方法依赖的package包/类
/**
 * Get a default content-transfer-encoding for use with a given content-type
 * when adding an unencoded attachment. It's possible that 8bit encodings
 * may later be converted to 7bit for 7bit transport.
 * <ul>
 * <li>null: base64
 * <li>message/rfc822: 8bit
 * <li>message/*: 7bit
 * <li>multipart/signed: 7bit
 * <li>multipart/*: 8bit
 * <li>*&#47;*: base64
 * </ul>
 *
 * @param type
 *            A String representing a MIME content-type
 * @return A String representing a MIME content-transfer-encoding
 */
public static String getEncodingforType(String type) {
    if (type == null) {
        return (MimeUtil.ENC_BASE64);
    } else if (MimeUtil.isMessage(type)) {
        return (MimeUtil.ENC_8BIT);
    } else if ("multipart/signed".equalsIgnoreCase(type) || type.toLowerCase(Locale.US).startsWith("message/")) {
        return (MimeUtil.ENC_7BIT);
    } else if (type.toLowerCase(Locale.US).startsWith("multipart/")) {
        return (MimeUtil.ENC_8BIT);
    } else {
        return (MimeUtil.ENC_BASE64);
    }
}
 
开发者ID:daxslab,项目名称:daxSmail,代码行数:31,代码来源:MimeUtility.java

示例8: getEncodingforType

import org.apache.james.mime4j.util.MimeUtil; //导入方法依赖的package包/类
/**
 * Get a default content-transfer-encoding for use with a given content-type
 * when adding an unencoded attachment. It's possible that 8bit encodings
 * may later be converted to 7bit for 7bit transport.
 * <ul>
 * <li>null: base64
 * <li>message/rfc822: 8bit
 * <li>message/*: 7bit
 * <li>multipart/signed: 7bit
 * <li>multipart/*: 8bit
 * <li>*&#47;*: base64
 * </ul>
 *
 * @param type
 *            A String representing a MIME content-type
 * @return A String representing a MIME content-transfer-encoding
 */
public static String getEncodingforType(String type) {
    if (type == null) {
        return (MimeUtil.ENC_BASE64);
    } else if (MimeUtil.isMessage(type)) {
        return (MimeUtil.ENC_8BIT);
    } else if (type.contains("application/pgp-signature") || type.contains("application/pgp-encrypted") || type.toLowerCase(Locale.US).startsWith("message/")) {
        return (MimeUtil.ENC_7BIT);
    } else if (type.toLowerCase(Locale.US).startsWith("multipart/")) {
        return (MimeUtil.ENC_8BIT);
    } else {
        return (MimeUtil.ENC_BASE64);
    }
}
 
开发者ID:thialfihar,项目名称:k-9,代码行数:31,代码来源:MimeUtility.java


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