Salome HOME
KnowledgeElementDTO is now used in KnowledgeElementFacade. Edit and rename knowledge...
[tools/siman.git] / Workspace / Siman-Common / src / org / splat / i18n / I18nUtils.java
1 /*****************************************************************************
2  * Company         OPEN CASCADE
3  * Application     SIMAN
4  * File            Id: 
5  * Creation date   02.10.2012
6  * @author         Author: Maria KRUCHININA
7  * @version        Revision: 
8  *****************************************************************************/
9
10 package org.splat.i18n; 
11
12 import java.util.Locale;
13
14 import org.springframework.context.support.ResourceBundleMessageSource;
15
16 /**
17  * Resource bundle utility methods.
18  * 
19  * @author Maria KRUCHININA
20  *
21  */
22 public final class I18nUtils {
23
24         /**
25          * Contains the list of resources bundle. 
26          */
27         private static ResourceBundleMessageSource resourceBundleMessageSource;
28         
29         /**
30          * .
31          * @param locale Locale
32          * @param code key
33          * @return message i18n
34          */
35         public static String getMessage(final Locale locale, final String code) {
36                 return getMessage(locale, code, new Object[0]);
37         }
38         
39         /**
40          * .
41          * @param locale Locale
42          * @param code key
43          * @param context args
44          * @return message i18n
45          */
46         public static String getMessage(final Locale locale, final String code, final Object... context) {
47                 return resourceBundleMessageSource.getMessage(code, context, locale);
48         }
49         
50         
51         /**
52          * Return the translated message of a code with the language.
53          * @param language lowercase two-letter ISO-639 code
54          * @param code code
55          * @param context parameters
56          * @return Translated message
57          */
58         public static String getMessage(final String language, final String code, final Object... context) {
59                 Locale locale = new Locale(language);
60                 return getMessage(locale, code, context);
61         }       
62         
63         
64         /**
65          * Return the translated message of a code with the locale default.
66          * @param code code
67          * @param context parameters
68          * @return Translated message
69          */
70         public static String getMessageLocaleDefault(final String code, final Object... context) {
71                 return getMessage(Locale.getDefault(), code, context);
72         }       
73         
74         
75         /**
76          * Get the resourceBundleMessageSource.
77          * @return the resourceBundleMessageSource
78          */
79         protected ResourceBundleMessageSource getResourceBundleMessageSource() {
80                 return resourceBundleMessageSource;
81         }
82         /**
83          * Set the resourceBundleMessageSource.
84          * @param aResourceBundleMessageSource the resourceBundleMessageSource to set
85          */
86         public void setResourceBundleMessageSource(
87                         final ResourceBundleMessageSource aResourceBundleMessageSource) {
88                 resourceBundleMessageSource = aResourceBundleMessageSource;
89         }       
90         
91 }