|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--org.apache.struts.action.ActionMessages
A class that encapsulates messages. Messages can be either global or they are specific to a particular bean property.
Each individual message is described by an ActionMessage
object, which contains a message key (to be looked up in an appropriate
message resources database), and up to four placeholder arguments used for
parametric substitution in the resulting message.
IMPLEMENTATION NOTE - It is assumed that these objects are created and manipulated only within the context of a single thread. Therefore, no synchronization is required for access to internal collections.
Inner Class Summary | |
protected class |
ActionMessages.ActionMessageItem
This class is used to store a set of messages associated with a property/key and the position it was initially added to list. |
Field Summary | |
protected boolean |
accessed
Have the messages been retrieved from this object? |
private static java.util.Comparator |
actionItemComparator
Compares ActionMessageItem objects. |
static java.lang.String |
GLOBAL_MESSAGE
The "property name" marker to use for global messages, as opposed to those related to a specific property. |
protected int |
iCount
The current number of the property/key being added. |
protected java.util.HashMap |
messages
The accumulated set of ActionMessage objects (represented
as an ArrayList) for each property, keyed by property name. |
Constructor Summary | |
ActionMessages()
Create an empty ActionMessages object. |
|
ActionMessages(ActionMessages messages)
Create an ActionMessages object initialized with the given
messages. |
Method Summary | |
void |
add(ActionMessages messages)
Adds the messages from the given ActionMessages object to
this set of messages. |
void |
add(java.lang.String property,
ActionMessage message)
Add a message to the set of messages for the specified property. |
void |
clear()
Clear all messages recorded by this object. |
java.util.Iterator |
get()
Return the set of all recorded messages, without distinction by which property the messages are associated with. |
java.util.Iterator |
get(java.lang.String property)
Return the set of messages related to a specific property. |
boolean |
isAccessed()
Returns true if the get() or
get(String) methods are called. |
boolean |
isEmpty()
Return true if there are no messages recorded
in this collection, or false otherwise. |
java.util.Iterator |
properties()
Return the set of property names for which at least one message has been recorded. |
int |
size()
Return the number of messages recorded for all properties (including global messages). |
int |
size(java.lang.String property)
Return the number of messages associated with the specified property. |
java.lang.String |
toString()
Returns a String representation of this ActionMessages' property name=message list mapping. |
Methods inherited from class java.lang.Object |
|
Field Detail |
private static final java.util.Comparator actionItemComparator
Compares ActionMessageItem objects.
public static final java.lang.String GLOBAL_MESSAGE
The "property name" marker to use for global messages, as opposed to those related to a specific property.
protected boolean accessed
Have the messages been retrieved from this object?
The controller uses this property to determine if session-scoped messages can be removed.
protected java.util.HashMap messages
The accumulated set of ActionMessage
objects (represented
as an ArrayList) for each property, keyed by property name.
protected int iCount
The current number of the property/key being added. This is used to maintain the order messages are added.
Constructor Detail |
public ActionMessages()
Create an empty ActionMessages
object.
public ActionMessages(ActionMessages messages)
Create an ActionMessages
object initialized with the given
messages.
messages
- The messages to be initially added to this object.
This parameter can be null
.Method Detail |
public void add(java.lang.String property, ActionMessage message)
Add a message to the set of messages for the specified property. An order of the property/key is maintained based on the initial addition of the property/key.
property
- Property name (or ActionMessages.GLOBAL_MESSAGE)message
- The message to be addedpublic void add(ActionMessages messages)
Adds the messages from the given ActionMessages
object to
this set of messages. The messages are added in the order they are returned from
the properties
method. If a message's property is already in the current
ActionMessages
object, it is added to the end of the list for that
property. If a message's property is not in the current list it is added to the end
of the properties.
messages
- The ActionMessages
object to be added.
This parameter can be null
.public void clear()
Clear all messages recorded by this object.
public boolean isEmpty()
Return true
if there are no messages recorded
in this collection, or false
otherwise.
public java.util.Iterator get()
Return the set of all recorded messages, without distinction by which property the messages are associated with. If there are no messages recorded, an empty enumeration is returned.
public java.util.Iterator get(java.lang.String property)
Return the set of messages related to a specific property. If there are no such messages, an empty enumeration is returned.
property
- Property name (or ActionMessages.GLOBAL_MESSAGE)public boolean isAccessed()
Returns true
if the get()
or
get(String)
methods are called.
true
if the messages have been accessed one or more
times.public java.util.Iterator properties()
Return the set of property names for which at least one message has
been recorded. If there are no messages, an empty Iterator
is returned.
If you have recorded global messages, the String
value of
ActionMessages.GLOBAL_MESSAGE
will be one of the returned
property names.
public int size()
Return the number of messages recorded for all properties (including
global messages). NOTE - it is more efficient to call
isEmpty
if all you care about is whether or not there are
any messages at all.
public int size(java.lang.String property)
Return the number of messages associated with the specified property.
property
- Property name (or ActionMessages.GLOBAL_MESSAGE)public java.lang.String toString()
Returns a String representation of this ActionMessages' property name=message list mapping.
toString
in class java.lang.Object
Object.toString()
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |