Coverage Report - org.trails.i18n.HiveMindMessageSource
 
Classes in this File Line Coverage Branch Coverage Complexity
HiveMindMessageSource
29% 
N/A 
1
 
 1  
 package org.trails.i18n;
 2  
 
 3  
 import java.util.Locale;
 4  
 
 5  
 import org.apache.hivemind.Messages;
 6  
 import org.apache.hivemind.service.ThreadLocale;
 7  
 
 8  108
 public class HiveMindMessageSource extends AbstractMessageSource
 9  
 {
 10  
 
 11  
         private ThreadLocale threadLocale;
 12  
         private Messages messageSource;
 13  
 
 14  
         public String getMessage(String key)
 15  
         {
 16  36
                 return messageSource.getMessage(key);
 17  
         }
 18  
 
 19  
         public String getMessage(String key, Object[] args)
 20  
         {
 21  8
                 return messageSource.format(key, args);
 22  
         }
 23  
 
 24  
         public String getMessage(String key, Locale locale)
 25  
         {
 26  0
                 Locale currentLocale = threadLocale.getLocale();
 27  
                 /** I know!!, awful hack! **/
 28  0
                 threadLocale.setLocale(locale);
 29  0
                 String message = getMessage(key);
 30  0
                 threadLocale.setLocale(currentLocale);
 31  0
                 return message;
 32  
         }
 33  
 
 34  
         public String getMessage(String key, Object[] args, Locale locale)
 35  
         {
 36  0
                 Locale currentLocale = threadLocale.getLocale();
 37  
                 /** I know!!, awful hack! **/
 38  0
                 threadLocale.setLocale(locale);
 39  0
                 String message = getMessage(key, args);
 40  0
                 threadLocale.setLocale(currentLocale);
 41  0
                 return message;
 42  
         }
 43  
 
 44  
         public void setThreadLocale(ThreadLocale threadLocale)
 45  
         {
 46  0
                 this.threadLocale = threadLocale;
 47  0
         }
 48  
 
 49  
         public void setMessageSource(Messages messageSource)
 50  
         {
 51  108
                 this.messageSource = messageSource;
 52  108
         }
 53  
 
 54  
 }