1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 package org.apache.commons.jelly.tags;
18
19 import java.util.*;
20 import java.text.*;
21
22 /***
23 * <p>Provides locale-neutral access to string resources. Only the
24 * documentation and code are in English. :-)
25 *
26 * <p>The major goal, aside from globalization, is convenience.
27 * Access to resources with no parameters is made in the form:</p>
28 * <pre>
29 * Resources.getMessage(MESSAGE_NAME);
30 * </pre>
31 *
32 * <p>Access to resources with one parameter works like</p>
33 * <pre>
34 * Resources.getMessage(MESSAGE_NAME, arg1);
35 * </pre>
36 *
37 * <p>... and so on.</p>
38 *
39 * @author Shawn Bayern
40 */
41 public class Resources {
42
43 //**********************************************************************
44 // Static data
45
46 /** The location of our resources. */
47 private static final String RESOURCE_LOCATION
48 = "org.apache.commons.jelly.tags.Resources";
49
50 /*** Our class-wide ResourceBundle. */
51 private static ResourceBundle rb =
52 ResourceBundle.getBundle(RESOURCE_LOCATION);
53
54
55 //**********************************************************************
56 // Public static methods
57
58 /** Retrieves a message with no arguments. */
59 public static String getMessage(String name)
60 throws MissingResourceException {
61 return rb.getString(name);
62 }
63
64 /*** Retrieves a message with arbitrarily many arguments. */
65 public static String getMessage(String name, Object[] a)
66 throws MissingResourceException {
67 String res = rb.getString(name);
68 return MessageFormat.format(res, a);
69 }
70
71 /*** Retrieves a message with one argument. */
72 public static String getMessage(String name, Object a1)
73 throws MissingResourceException {
74 return getMessage(name, new Object[] { a1 });
75 }
76
77 /*** Retrieves a message with two arguments. */
78 public static String getMessage(String name, Object a1, Object a2)
79 throws MissingResourceException {
80 return getMessage(name, new Object[] { a1, a2 });
81 }
82
83 /*** Retrieves a message with three arguments. */
84 public static String getMessage(String name,
85 Object a1,
86 Object a2,
87 Object a3)
88 throws MissingResourceException {
89 return getMessage(name, new Object[] { a1, a2, a3 });
90 }
91
92 /*** Retrieves a message with four arguments. */
93 public static String getMessage(String name,
94 Object a1,
95 Object a2,
96 Object a3,
97 Object a4)
98 throws MissingResourceException {
99 return getMessage(name, new Object[] { a1, a2, a3, a4 });
100 }
101
102 /*** Retrieves a message with five arguments. */
103 public static String getMessage(String name,
104 Object a1,
105 Object a2,
106 Object a3,
107 Object a4,
108 Object a5)
109 throws MissingResourceException {
110 return getMessage(name, new Object[] { a1, a2, a3, a4, a5 });
111 }
112
113 /*** Retrieves a message with six arguments. */
114 public static String getMessage(String name,
115 Object a1,
116 Object a2,
117 Object a3,
118 Object a4,
119 Object a5,
120 Object a6)
121 throws MissingResourceException {
122 return getMessage(name, new Object[] { a1, a2, a3, a4, a5, a6 });
123 }
124
125 }