Class SimpleMessageDescriptor

java.lang.Object
org.bluezoo.gumdrop.mailbox.SimpleMessageDescriptor
All Implemented Interfaces:
MessageDescriptor

public class SimpleMessageDescriptor extends Object implements MessageDescriptor
Simple implementation of MessageDescriptor for basic mail access. Provides the core message metadata required by POP3 and similar protocols.
Author:
Chris Burdess
  • Constructor Details

    • SimpleMessageDescriptor

      public SimpleMessageDescriptor(int messageNumber, long size, String uniqueId)
      Creates a new simple message descriptor.
      Parameters:
      messageNumber - the message sequence number (1-based)
      size - the message size in octets
      uniqueId - the unique identifier for this message
  • Method Details

    • getMessageNumber

      public int getMessageNumber()
      Description copied from interface: MessageDescriptor
      Returns the message sequence number in the mailbox (1-based). This number may change as messages are expunged.
      Specified by:
      getMessageNumber in interface MessageDescriptor
      Returns:
      the message sequence number
    • getSize

      public long getSize()
      Description copied from interface: MessageDescriptor
      Returns the message size in octets (RFC 822 format).
      Specified by:
      getSize in interface MessageDescriptor
      Returns:
      the size in octets
    • getUniqueId

      public String getUniqueId()
      Description copied from interface: MessageDescriptor
      Returns the unique identifier for this message. This identifier must be persistent across sessions and must not change even if message sequence numbers change.

      For POP3, this is used by the UIDL command. For IMAP, this corresponds to the UID.

      Specified by:
      getUniqueId in interface MessageDescriptor
      Returns:
      the unique identifier string
    • toString

      public String toString()
      Overrides:
      toString in class Object