1 package org.weda.message;
2
3 import java.util.Locale;
4 import java.util.Map;
5
6 /**Цель пердоставить локальзованное сообщение.
7 *
8 * @author tim
9 */
10 public interface Message {
11 /**Метод инициализирует объект.
12 */
13 public void init() throws MessageException;
14 /**Метод возвращает ключ сообщения.
15 */
16 public String getKey();
17 /**Метод устанавливает ключ сообщения.
18 */
19 public void setKey(String key);
20 /**Метод возвращает локализованное сообщение или <code>[MESSAGE_KEY]</code>
21 * если нет сообщения для заданной локали.
22 * @param locale Локаль для которой нужно найти сообщение.
23 */
24 public String getLocalizedMessage(Locale locale);
25 /**Метод осуществляет объединение локализованных сообщений с однинаковым
26 * ключом. Если в обоих объектах есть сообщения с одинаковым сочитанием
27 * языка(language) и страны (country) тогда сообщения переданные в
28 * параметре <code>message</code> заместят сообщения данного объекта.
29 * @param message Объект с котором нужно осуществить слияние сообщений.
30 */
31 public void merge(Message message);
32 /**Метод возвращает все локализованные сообщения в виде асоциативного
33 * массива. Ключ - <code>код_языка[код_страны]</code>,
34 * значение - <code>сообщение</code>.
35 */
36 Map<String, String> getAllMessages();
37 }