Module jakarta.mail

Class MessageCountEvent

  • All Implemented Interfaces:
    java.io.Serializable
    Direct Known Subclasses:
    MessageVanishedEvent

    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:
    Serialized Form
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static int ADDED
      The messages were added to their folder
      protected Message[] msgs
      The messages.
      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.
      static int REMOVED
      The messages were removed from their folder
      protected int type
      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

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void dispatch​(java.lang.Object listener)
      Invokes the appropriate MessageCountListener method.
      Message[] getMessages()
      Return the array of messages added or removed.
      int getType()
      Return the type of this event.
      boolean isRemoved()
      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 Detail

      • ADDED

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

        public static final int REMOVED
        The messages were removed from their folder
        See Also:
        Constant Field Values
      • 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 Detail

      • 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 Detail

      • 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​(java.lang.Object listener)
        Invokes the appropriate MessageCountListener method.
        Specified by:
        dispatch in class MailEvent
        Parameters:
        listener - the listener to invoke on