org.apache.james.mime4j.util
Class MimeUtil

java.lang.Object
  extended by org.apache.james.mime4j.util.MimeUtil

public final class MimeUtil
extends java.lang.Object

A utility class, which provides some MIME related application logic.


Field Summary
static java.lang.String ENC_7BIT
          The 7bit encoding.
static java.lang.String ENC_8BIT
          The 8bit encoding.
static java.lang.String ENC_BASE64
          The base64 encoding.
static java.lang.String ENC_BINARY
          The binary encoding.
static java.lang.String ENC_QUOTED_PRINTABLE
          The quoted-printable encoding.
 
Method Summary
static java.lang.String createUniqueBoundary()
          Creates a new unique message boundary string that can be used as boundary parameter for the Content-Type header field of a message.
static java.lang.String createUniqueMessageId(java.lang.String hostName)
          Creates a new unique message identifier that can be used in message header field such as Message-ID or In-Reply-To.
static java.lang.String fold(java.lang.String s, int usedCharacters)
          Splits the specified string into a multiple-line representation with lines no longer than 76 characters (because the line might contain encoded words; see RFC 2047 section 2).
static java.lang.String formatDate(java.util.Date date, java.util.TimeZone zone)
          Formats the specified date into a RFC 822 date-time string.
static boolean isBase64Encoding(java.lang.String pTransferEncoding)
          Returns, whether the given transfer-encoding is "base64".
static boolean isMessage(java.lang.String pMimeType)
          Returns true, if the given MIME type is that of a message.
static boolean isMultipart(java.lang.String pMimeType)
          Return true, if the given MIME type indicates a multipart entity.
static boolean isQuotedPrintableEncoded(java.lang.String pTransferEncoding)
          Returns, whether the given transfer-encoding is "quoted-printable".
static boolean isSameMimeType(java.lang.String pType1, java.lang.String pType2)
          Returns, whether the given two MIME types are identical.
static java.lang.String unfold(java.lang.String s)
          Unfold a multiple-line representation into a single line.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ENC_QUOTED_PRINTABLE

public static final java.lang.String ENC_QUOTED_PRINTABLE
The quoted-printable encoding.

See Also:
Constant Field Values

ENC_BINARY

public static final java.lang.String ENC_BINARY
The binary encoding.

See Also:
Constant Field Values

ENC_BASE64

public static final java.lang.String ENC_BASE64
The base64 encoding.

See Also:
Constant Field Values

ENC_8BIT

public static final java.lang.String ENC_8BIT
The 8bit encoding.

See Also:
Constant Field Values

ENC_7BIT

public static final java.lang.String ENC_7BIT
The 7bit encoding.

See Also:
Constant Field Values
Method Detail

isSameMimeType

public static boolean isSameMimeType(java.lang.String pType1,
                                     java.lang.String pType2)
Returns, whether the given two MIME types are identical.


isMessage

public static boolean isMessage(java.lang.String pMimeType)
Returns true, if the given MIME type is that of a message.


isMultipart

public static boolean isMultipart(java.lang.String pMimeType)
Return true, if the given MIME type indicates a multipart entity.


isBase64Encoding

public static boolean isBase64Encoding(java.lang.String pTransferEncoding)
Returns, whether the given transfer-encoding is "base64".


isQuotedPrintableEncoded

public static boolean isQuotedPrintableEncoded(java.lang.String pTransferEncoding)
Returns, whether the given transfer-encoding is "quoted-printable".


createUniqueBoundary

public static java.lang.String createUniqueBoundary()
Creates a new unique message boundary string that can be used as boundary parameter for the Content-Type header field of a message.

Returns:
a new unique message boundary string.

createUniqueMessageId

public static java.lang.String createUniqueMessageId(java.lang.String hostName)
Creates a new unique message identifier that can be used in message header field such as Message-ID or In-Reply-To. If the given host name is not null it will be used as suffix for the message ID (following an at sign). The resulting string is enclosed in angle brackets (< and >);

Parameters:
hostName - host name to be included in the message ID or null if no host name should be included.
Returns:
a new unique message identifier.

formatDate

public static java.lang.String formatDate(java.util.Date date,
                                          java.util.TimeZone zone)
Formats the specified date into a RFC 822 date-time string.

Parameters:
date - date to be formatted into a string.
zone - the time zone to use or null to use the default time zone.
Returns:
the formatted time string.

fold

public static java.lang.String fold(java.lang.String s,
                                    int usedCharacters)
Splits the specified string into a multiple-line representation with lines no longer than 76 characters (because the line might contain encoded words; see RFC 2047 section 2). If the string contains non-whitespace sequences longer than 76 characters a line break is inserted at the whitespace character following the sequence resulting in a line longer than 76 characters.

Parameters:
s - string to split.
usedCharacters - number of characters already used up. Usually the number of characters for header field name plus colon and one space.
Returns:
a multiple-line representation of the given string.

unfold

public static java.lang.String unfold(java.lang.String s)
Unfold a multiple-line representation into a single line.

Parameters:
s - string to unfold.
Returns:
unfolded string.


Copyright © 2004-2012 The Apache Software Foundation. All Rights Reserved.