- java.lang.Object
-
- javax.mail.Flags
-
- All Implemented Interfaces:
- Serializable, Cloneable
public class Flags extends Object implements Cloneable, Serializable
The Flags class represents the set of flags on a Message. Flags are composed of predefined system flags, and user defined flags.A System flag is represented by the
Flags.Flag
inner class. A User defined flag is represented as a String. User flags are case-independent.A set of standard system flags are predefined. Most folder implementations are expected to support these flags. Some implementations may also support arbitrary user-defined flags. The
getPermanentFlags
method on a Folder returns a Flags object that holds all the flags that are supported by that folder implementation.A Flags object is serializable so that (for example) the use of Flags objects in search terms can be serialized along with the search terms.
Warning: Serialized objects of this class may not be compatible with future JavaMail API releases. The current serialization support is appropriate for short term storage.
The below code sample illustrates how to set, examine, and get the flags for a message.
Message m = folder.getMessage(1); m.setFlag(Flags.Flag.DELETED, true); // set the DELETED flag // Check if DELETED flag is set on this message if (m.isSet(Flags.Flag.DELETED)) System.out.println("DELETED message"); // Examine ALL system flags for this message Flags flags = m.getFlags(); Flags.Flag[] sf = flags.getSystemFlags(); for (int i = 0; i < sf.length; i++) { if (sf[i] == Flags.Flag.DELETED) System.out.println("DELETED message"); else if (sf[i] == Flags.Flag.SEEN) System.out.println("SEEN message"); ...... ...... }
- Author:
- John Mani, Bill Shannon
- See Also:
Folder.getPermanentFlags()
, Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class and Description static class
Flags.Flag
This inner class represents an individual system flag.
-
Constructor Summary
Constructors Constructor and Description Flags()
Construct an empty Flags object.Flags(Flags.Flag flag)
Construct a Flags object initialized with the given system flag.Flags(Flags flags)
Construct a Flags object initialized with the given flags.Flags(String flag)
Construct a Flags object initialized with the given user flag.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description void
add(Flags.Flag flag)
Add the specified system flag to this Flags object.void
add(Flags f)
Add all the flags in the given Flags object to this Flags object.void
add(String flag)
Add the specified user flag to this Flags object.Object
clone()
Returns a clone of this Flags object.boolean
contains(Flags.Flag flag)
Check whether the specified system flag is present in this Flags object.boolean
contains(Flags f)
Check whether all the flags in the specified Flags object are present in this Flags object.boolean
contains(String flag)
Check whether the specified user flag is present in this Flags object.boolean
equals(Object obj)
Check whether the two Flags objects are equal.Flags.Flag[]
getSystemFlags()
Return all the system flags in this Flags object.String[]
getUserFlags()
Return all the user flags in this Flags object.int
hashCode()
Compute a hash code for this Flags object.void
remove(Flags.Flag flag)
Remove the specified system flag from this Flags object.void
remove(Flags f)
Remove all flags in the given Flags object from this Flags object.void
remove(String flag)
Remove the specified user flag from this Flags object.
-
-
-
Constructor Detail
-
Flags
public Flags()
Construct an empty Flags object.
-
Flags
public Flags(Flags flags)
Construct a Flags object initialized with the given flags.- Parameters:
flags
- the flags for initialization
-
Flags
public Flags(Flags.Flag flag)
Construct a Flags object initialized with the given system flag.- Parameters:
flag
- the flag for initialization
-
Flags
public Flags(String flag)
Construct a Flags object initialized with the given user flag.- Parameters:
flag
- the flag for initialization
-
-
Method Detail
-
add
public void add(Flags.Flag flag)
Add the specified system flag to this Flags object.- Parameters:
flag
- the flag to add
-
add
public void add(String flag)
Add the specified user flag to this Flags object.- Parameters:
flag
- the flag to add
-
add
public void add(Flags f)
Add all the flags in the given Flags object to this Flags object.- Parameters:
f
- Flags object
-
remove
public void remove(Flags.Flag flag)
Remove the specified system flag from this Flags object.- Parameters:
flag
- the flag to be removed
-
remove
public void remove(String flag)
Remove the specified user flag from this Flags object.- Parameters:
flag
- the flag to be removed
-
remove
public void remove(Flags f)
Remove all flags in the given Flags object from this Flags object.- Parameters:
f
- the flag to be removed
-
contains
public boolean contains(Flags.Flag flag)
Check whether the specified system flag is present in this Flags object.- Returns:
- true of the given flag is present, otherwise false.
-
contains
public boolean contains(String flag)
Check whether the specified user flag is present in this Flags object.- Returns:
- true of the given flag is present, otherwise false.
-
contains
public boolean contains(Flags f)
Check whether all the flags in the specified Flags object are present in this Flags object.- Returns:
- true if all flags in the given Flags object are present, otherwise false.
-
equals
public boolean equals(Object obj)
Check whether the two Flags objects are equal.
-
hashCode
public int hashCode()
Compute a hash code for this Flags object.
-
getSystemFlags
public Flags.Flag[] getSystemFlags()
Return all the system flags in this Flags object. Returns an array of size zero if no flags are set.- Returns:
- array of Flags.Flag objects representing system flags
-
getUserFlags
public String[] getUserFlags()
Return all the user flags in this Flags object. Returns an array of size zero if no flags are set.- Returns:
- array of Strings, each String represents a flag.
-
-
Traduction non disponible
Les API Java ne sont pas encore traduites en français sur l'infobrol. Seule la version anglaise est disponible pour l'instant.
Version en cache
21/08/2025 20:13:24 Cette version de la page est en cache (à la date du 21/08/2025 20:13:24) afin d'accélérer le traitement.Vous pouvez activer le mode utilisateur dans le menu en haut pour afficher la version plus récente de la page.
Document créé le 14/04/2008, dernière modification le 18/08/2025
Source du document imprimé : https://www.gaudry.be/java-api-javaee-rf-javax/mail/flags.html
L'infobrol est un site personnel dont le contenu n'engage que moi. Le texte est mis à disposition sous licence CreativeCommons(BY-NC-SA). Plus d'info sur les conditions d'utilisation et sur l'auteur.
Références
Ces références et liens indiquent des documents consultés lors de la rédaction de cette page, ou qui peuvent apporter un complément d'information, mais les auteurs de ces sources ne peuvent être tenus responsables du contenu de cette page.
L'auteur de ce site est seul responsable de la manière dont sont présentés ici les différents concepts, et des libertés qui sont prises avec les ouvrages de référence. N'oubliez pas que vous devez croiser les informations de sources multiples afin de diminuer les risques d'erreurs.