KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > org > objectweb > celtix > common > i18n > Message


1 package org.objectweb.celtix.common.i18n;
2
3 import java.text.MessageFormat JavaDoc;
4 import java.util.MissingResourceException JavaDoc;
5 import java.util.ResourceBundle JavaDoc;
6 import java.util.logging.Logger JavaDoc;
7
8 public class Message {
9     String JavaDoc code;
10     Object JavaDoc[] parameters;
11     ResourceBundle JavaDoc bundle;
12     
13     /**
14      * Constructor.
15      *
16      * @param key the message catalog (resource bundle) key
17      * @param logger a logger with an associated resource bundle
18      * @param params the message substitution parameters
19      */

20     public Message(String JavaDoc key, Logger JavaDoc logger, Object JavaDoc...params) {
21         this(key, logger.getResourceBundle(), params);
22     }
23
24     /**
25      * Constructor.
26      *
27      * @param key the message catalog (resource bundle) key
28      * @param catalog the resource bundle
29      * @param params the message substitution parameters
30      */

31     public Message(String JavaDoc key, ResourceBundle JavaDoc catalog, Object JavaDoc...params) {
32         code = key;
33         bundle = catalog;
34         parameters = params;
35     }
36     
37     public String JavaDoc toString() {
38         String JavaDoc fmt = null;
39         try {
40             if (null == bundle) {
41                 return code;
42             }
43             fmt = bundle.getString(code);
44         } catch (MissingResourceException JavaDoc ex) {
45             return code;
46         }
47         return MessageFormat.format(fmt, parameters);
48     }
49     
50     public String JavaDoc getCode() {
51         return code;
52     }
53     
54     public Object JavaDoc[] getParameters() {
55         return parameters;
56     }
57 }
58
Popular Tags