241ecefcfba93f62525c9f6bd0734cb2b6d3937e
[debian/openrocket] / core / src / net / sf / openrocket / l10n / ResourceBundleTranslator.java
1 package net.sf.openrocket.l10n;
2
3 import java.util.Locale;
4 import java.util.ResourceBundle;
5
6 /**
7  * A translator that obtains translated strings from a resource bundle.
8  * 
9  * @author Sampo Niskanen <sampo.niskanen@iki.fi>
10  */
11 public class ResourceBundleTranslator implements Translator {
12         
13         private final ResourceBundle bundle;
14         
15         /**
16          * Create a ResourceBundleTranslator using the default Locale.
17          * 
18          * @param baseName      the base name of the resource bundle
19          */
20         public ResourceBundleTranslator(String baseName) {
21                 this(baseName, Locale.getDefault());
22         }
23         
24         /**
25          * Create a ResourceBundleTranslator using the specified Locale.
26          * 
27          * @param baseName      the base name of the resource bundle
28          * @param locale        the locale to use
29          */
30         public ResourceBundleTranslator(String baseName, Locale locale) {
31                 this.bundle = ResourceBundle.getBundle(baseName, locale);
32         }
33         
34         
35         /*
36          * NOTE:  This method must be thread-safe!
37          */
38         @Override
39         public synchronized String get(String key) {
40                 return bundle.getString(key);
41         }
42         
43 }