javax.mail
Class Flags
- Cloneable, Serializable
public class Flags
extends java.lang.Object
implements Cloneable, Serializable
Representation of flags that may be associated with a message.
Flags can either be system flags, defined by the
Flag
inner class,
or user-defined flags defined by a String. The system flags represent those expected
to be provided by most folder systems; user-defined flags allow for additional flags
on a per-provider basis.
This class is Serializable but compatibility is not guaranteed across releases.
Flags() - Construct a Flags instance with no flags set.
|
Flags(String name) - Construct a Flags instance with the supplied user flags set.
|
Flags(Flags flags) - Construct a Flags instance with a same flags set.
|
Flags(Flags.Flag flag) - Construct a Flags instance with a supplied system flag set.
|
void | add(String name) - Set a user flag.
|
void | add(Flags flags) - Set all system and user flags from the supplied Flags.
|
void | add(Flags.Flag flag) - Set a system flag.
|
Object | clone() - Return a copy of this instance.
|
boolean | contains(String name) - See if the supplied user flag is set
|
boolean | contains(Flags flags) - See if all of the supplied Flags are set
|
boolean | contains(Flags.Flag flag) - See if the supplied system flags are set
|
boolean | equals(Object other) - Equality is defined as true if the other object is a instanceof Flags with the
same system and user flags set (using a case-insensitive name comparison for user flags).
|
Flags.Flag[] | getSystemFlags() - Return a list of
Flags containing the system flags that have been set
|
String[] | getUserFlags() - Return a list of user flags that have been set
|
int | hashCode() - Calculate a hashCode for this instance
|
void | remove(String name) - Unset the supplied user flag.
|
void | remove(Flags flags) - Unset all flags from the supplied instance.
|
void | remove(Flags.Flag flag) - Unset the supplied system flag.
|
Flags
public Flags()
Construct a Flags instance with no flags set.
Flags
public Flags(String name)
Construct a Flags instance with the supplied user flags set.
Question: should this automatically set the USER system flag?
name
- the user flag to set
Flags
public Flags(Flags flags)
Construct a Flags instance with a same flags set.
flags
- the instance to copy
Flags
public Flags(Flags.Flag flag)
Construct a Flags instance with a supplied system flag set.
flag
- the system flag to set
add
public void add(String name)
Set a user flag.
Question: should this fail if the USER system flag is not set?
name
- the user flag to set
add
public void add(Flags flags)
Set all system and user flags from the supplied Flags.
Question: do we need to check compatibility of USER flags?
add
public void add(Flags.Flag flag)
Set a system flag.
flag
- the system flag to set
clone
public Object clone()
Return a copy of this instance.
contains
public boolean contains(String name)
See if the supplied user flag is set
name
- the user flag to check for
contains
public boolean contains(Flags flags)
See if all of the supplied Flags are set
flags
- the flags to check for
- true if all the supplied system and user flags are set
contains
public boolean contains(Flags.Flag flag)
See if the supplied system flags are set
flag
- the system flags to check for
- true if the flags are set
equals
public boolean equals(Object other)
Equality is defined as true if the other object is a instanceof Flags with the
same system and user flags set (using a case-insensitive name comparison for user flags).
other
- the instance to compare against
- true if the two instance are the same
getSystemFlags
public Flags.Flag[] getSystemFlags()
Return a list of
Flags
containing the system flags that have been set
- the system flags that have been set
getUserFlags
public String[] getUserFlags()
Return a list of user flags that have been set
hashCode
public int hashCode()
Calculate a hashCode for this instance
- a hashCode for this instance
remove
public void remove(String name)
Unset the supplied user flag.
remove
public void remove(Flags flags)
Unset all flags from the supplied instance.
flags
- the flags to clear
remove
public void remove(Flags.Flag flag)
Unset the supplied system flag.
Question: what happens if we unset the USER flags and user flags are set?