Class SimpleMessageAttributes

  • All Implemented Interfaces:
    MailMessageAttributes

    public class SimpleMessageAttributes
    extends java.lang.Object
    implements MailMessageAttributes
    Attributes of a Message in IMAP4rev1 style. Message Attributes should be set when a message enters a mailbox.

    Note that the message in a mailbox have the same order using either Message Sequence Numbers or UIDs.

    reinitialize() must be called on deserialization to reset Logger

    Reference: RFC 2060 - para 2.3

    Version:
    0.2 on 04 Aug 2002
    Author:
    Sascha Kulawik, Charles Benett
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.String getBodyStructure​(boolean includeExtensions)
      Provides the Body Structure information for this message.
      java.lang.String getEnvelope()
      Provides the Envelope structure information for this message.
      java.util.Date getInternalDate()
      Provides the date and time at which the message was received.
      java.lang.String getInternalDateAsString()
      Returns IMAP formatted String representation of Date
      int getMessageSequenceNumber()
      Provides the current Message Sequence Number for this message.
      int getSize()
      Provides the sizeof the message in octets.
      int getUID()
      Provides the unique identity value for this message.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • getMessageSequenceNumber

        public int getMessageSequenceNumber()
        Provides the current Message Sequence Number for this message. MSNs change when messages are expunged from the mailbox.
        Returns:
        int a positive non-zero integer
      • getUID

        public int getUID()
        Provides the unique identity value for this message. UIDs combined with a UIDValidity value form a unique reference for a message in a given mailbox. UIDs persist across sessions unless the UIDValidity value is incremented. UIDs are not copied if a message is copied to another mailbox.
        Returns:
        int a 32-bit value
      • getInternalDate

        public java.util.Date getInternalDate()
        Provides the date and time at which the message was received. In the case of delivery by SMTP, this SHOULD be the date and time of final delivery as defined for SMTP. In the case of messages copied from another mailbox, it shuld be the internalDate of the source message. In the case of messages Appended to the mailbox, example drafts, the internalDate is either specified in the Append command or is the current dat and time at the time of the Append.
        Specified by:
        getInternalDate in interface MailMessageAttributes
        Returns:
        Date imap internal date
      • getSize

        public int getSize()
        Provides the sizeof the message in octets.
        Specified by:
        getSize in interface MailMessageAttributes
        Returns:
        int number of octets in message.
      • getEnvelope

        public java.lang.String getEnvelope()
        Provides the Envelope structure information for this message. This is a parsed representation of the rfc-822 envelope information. This is not to be confused with the SMTP envelope!
        Specified by:
        getEnvelope in interface MailMessageAttributes
        Returns:
        String satisfying envelope syntax in rfc 2060.
      • getBodyStructure

        public java.lang.String getBodyStructure​(boolean includeExtensions)
        Provides the Body Structure information for this message. This is a parsed representtion of the MIME structure of the message.
        Specified by:
        getBodyStructure in interface MailMessageAttributes
        Returns:
        String satisfying body syntax in rfc 2060.