View Javadoc

1   package com.atlassian.sal.core.message;
2   
3   import com.atlassian.sal.api.message.Message;
4   import com.atlassian.sal.api.message.MessageCollection;
5   
6   import java.io.Serializable;
7   import java.util.ArrayList;
8   import java.util.List;
9   
10  public class DefaultMessageCollection implements MessageCollection
11  {
12  	private final List<Message> messages = new ArrayList<Message>(); 
13  
14  	public void addMessage(String key, Serializable... arguments)
15  	{
16  		addMessage(new DefaultMessage(key, arguments));
17  	}
18  
19  	public void addMessage(Message message)
20  	{
21  		messages.add(message);
22  	}
23  
24  	public boolean isEmpty()
25  	{
26  		return messages.isEmpty();
27  	}
28  
29  	public List<Message> getMessages()
30  	{
31  //		return Collections.unmodifiableList(messages); // issues with xstream
32  		return messages;
33  	}
34  
35  	public void addAll(List<Message> remoteMessages)
36  	{
37  		messages.addAll(remoteMessages);
38  	}
39  	@Override
40  	public String toString()
41  	{
42  		StringBuilder builder = new StringBuilder();
43  		for (Message message : messages)
44  		{
45  			builder.append(message);
46  			builder.append("\n");
47  		}
48  		return builder.toString();
49  	}
50  }