1 2 24 25 package org.enhydra.i18n; 26 27 28 import java.text.MessageFormat ; 29 import java.util.Hashtable ; 30 import java.util.ResourceBundle ; 31 32 import com.lutris.logging.LogChannel; 33 import com.lutris.logging.Logger; 34 36 37 57 58 public class ResManager { 59 60 63 64 private ResourceBundle bundle; 65 private String bundleName; 66 private LogChannel logChannel; 68 private int logLevelDebug; 70 private int logLevelInfo; 72 73 static private Hashtable bundles = new Hashtable (); 74 75 77 private ResManager(String packageName) { 78 bundleName = packageName + ".Res"; 79 82 logChannel = Logger.getCentralLogger().getChannel("Multiserver"); 85 logLevelDebug = logChannel.getLevel("I18N_DEBUG"); 87 logLevelInfo = logChannel.getLevel("I18N_INFO"); 89 } 90 91 92 100 public static ResManager getResManager(Class clazz) { 101 102 String packageName = clazz.getName(); 104 int lastDot = packageName.lastIndexOf('.'); 105 if (lastDot != -1) 106 packageName = packageName.substring(0,lastDot); 107 108 return getResManager(packageName); 109 } 110 111 119 public static ResManager getResManager(String packageName) { 120 ResManager rez = (ResManager) bundles.get(packageName); 121 if (rez==null) { 122 rez = new ResManager(packageName); 123 bundles.put(packageName,rez); 124 } 125 return rez; 126 } 127 128 129 private String getString(String key) { 130 return key; 132 146 } 147 148 149 155 public String format(String key) { 156 return getString(key); 157 } 158 159 167 public String format(String pattern, Object o0) { 168 return MessageFormat.format(getString(pattern), new Object [] {o0}); 169 } 170 171 180 public String format(String pattern, Object o0, Object o1) { 181 return MessageFormat.format(getString(pattern), new Object [] {o0,o1}); 182 } 183 184 185 195 public String format(String pattern, Object o0, Object o1, Object o2) { 196 return MessageFormat.format(getString(pattern), new Object [] {o0,o1,o2}); 197 } 198 199 210 public String format(String pattern, Object o0, Object o1, Object o2, Object o3) { 211 return MessageFormat.format(getString(pattern), new Object [] {o0,o1,o2,o3}); 212 } 213 214 } 216 217 | Popular Tags |