Class MessageCountEvent

All Implemented Interfaces:
Serializable

public class MessageCountEvent extends MailEvent
This class notifies changes in the number of messages in a folder.

Note that some folder types may only deliver MessageCountEvents at certain times or after certain operations. IMAP in particular will only notify the client of MessageCountEvents when a client issues a new command. Refer to RFC 3501 for details. A client may want to "poll" the folder by occasionally calling the getMessageCount or isOpen methods to solicit any such notifications.

Author:
John Mani
See Also:
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final int
    The messages were added to their folder
    protected Message[]
    The messages.
    protected boolean
    If true, this event is the result of an explicit expunge by this client, and the messages in this folder have been renumbered to account for this.
    static final int
    The messages were removed from their folder
    protected int
    The event type.

    Fields inherited from class java.util.EventObject

    source
  • Constructor Summary

    Constructors
    Constructor
    Description
    MessageCountEvent(Folder folder, int type, boolean removed, Message[] msgs)
    Constructor.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    dispatch(Object listener)
    Invokes the appropriate MessageCountListener method.
    Return the array of messages added or removed.
    int
    Return the type of this event.
    boolean
    Indicates whether this event is the result of an explicit expunge by this client, or due to an expunge from external sources.

    Methods inherited from class java.util.EventObject

    getSource, toString

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
  • Field Details

    • ADDED

      public static final int ADDED
      The messages were added to their folder
      See Also:
    • REMOVED

      public static final int REMOVED
      The messages were removed from their folder
      See Also:
    • type

      protected int type
      The event type.
    • removed

      protected boolean removed
      If true, this event is the result of an explicit expunge by this client, and the messages in this folder have been renumbered to account for this. If false, this event is the result of an expunge by external sources.
    • msgs

      protected transient Message[] msgs
      The messages.
  • Constructor Details

    • MessageCountEvent

      public MessageCountEvent(Folder folder, int type, boolean removed, Message[] msgs)
      Constructor.
      Parameters:
      folder - The containing folder
      type - The event type
      removed - If true, this event is the result of an explicit expunge by this client, and the messages in this folder have been renumbered to account for this. If false, this event is the result of an expunge by external sources.
      msgs - The messages added/removed
  • Method Details

    • getType

      public int getType()
      Return the type of this event.
      Returns:
      type
    • isRemoved

      public boolean isRemoved()
      Indicates whether this event is the result of an explicit expunge by this client, or due to an expunge from external sources. If true, this event is due to an explicit expunge and hence all remaining messages in this folder have been renumbered. If false, this event is due to an external expunge.

      Note that this method is valid only if the type of this event is REMOVED

      Returns:
      true if the message has been removed
    • getMessages

      public Message[] getMessages()
      Return the array of messages added or removed.
      Returns:
      array of messages
    • dispatch

      public void dispatch(Object listener)
      Invokes the appropriate MessageCountListener method.
      Specified by:
      dispatch in class MailEvent
      Parameters:
      listener - the listener to invoke on