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      private final List<Message> messages = new ArrayList<Message>();
12  
13      public void addMessage(String key, Serializable... arguments) {
14          addMessage(new DefaultMessage(key, arguments));
15      }
16  
17      public void addMessage(Message message) {
18          messages.add(message);
19      }
20  
21      public boolean isEmpty() {
22          return messages.isEmpty();
23      }
24  
25      public List<Message> getMessages() {
26  //      return Collections.unmodifiableList(messages); // issues with xstream
27          return messages;
28      }
29  
30      public void addAll(List<Message> remoteMessages) {
31          messages.addAll(remoteMessages);
32      }
33  
34      @Override
35      public String toString() {
36          StringBuilder builder = new StringBuilder();
37          for (Message message : messages) {
38              builder.append(message);
39              builder.append("\n");
40          }
41          return builder.toString();
42      }
43  }