javax.mail.event
Class MessageCountEvent

java.lang.Object
  extended by java.util.EventObject
      extended by javax.mail.event.MailEvent
          extended by javax.mail.event.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 2060 http://www.ietf.org/rfc/rfc2060.txt for details. A client may want "poll" the folder by occasionally calling the getMessageCount or isConnected methods to solicit any such notifications.

Author:
John Mani
See Also:
Serialized Form

Field Summary
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
MessageCountEvent(Folder folder, int type, boolean removed, Message[] msgs)
          Constructor.
 
Method Summary
 void dispatch(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


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


Submit a bug or feature

Copyright 2007 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms.