Author: tchemit Date: 2010-11-08 11:28:45 +0100 (Mon, 08 Nov 2010) New Revision: 1789 Url: http://nuiton.org/repositories/revision/i18n/1789 Log: box log invocation with if (log.isXXX) Modified: trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/I18n.java trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/I18nLanguage.java trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/I18nStore.java trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/I18nUtil.java trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/bundle/I18nBundle.java trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/bundle/I18nBundleEntry.java trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/bundle/I18nBundleUtil.java trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/init/DefaultI18nInitializer.java Modified: trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/I18n.java =================================================================== --- trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/I18n.java 2010-11-08 10:28:15 UTC (rev 1788) +++ trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/I18n.java 2010-11-08 10:28:45 UTC (rev 1789) @@ -180,9 +180,11 @@ try { return applyFilter(String.format(message, args)); } catch (Exception zzz) { - log.warn( - _("nuitonutil.error.i18n.untranslated.message", message), - zzz); + if (log.isWarnEnabled()) { + log.warn( + _("nuitonutil.error.i18n.untranslated.message", message), + zzz); + } return applyFilter(message); } } @@ -213,9 +215,11 @@ try { return String.format(message, args); } catch (Exception eee) { - log.warn( - _("nuitonutil.error.i18n.unformated.message", message, Arrays.toString(args)), - eee); + if (log.isWarnEnabled()) { + log.warn( + _("nuitonutil.error.i18n.unformated.message", message, Arrays.toString(args)), + eee); + } return message; } } @@ -267,7 +271,7 @@ * * @return the instanciated i18n store */ - public static synchronized I18nStore getStore() { + public static I18nStore getStore() { if (store == null) { store = new I18nStore(DEFAULT_LOCALE, initializer); Modified: trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/I18nLanguage.java =================================================================== --- trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/I18nLanguage.java 2010-11-08 10:28:15 UTC (rev 1788) +++ trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/I18nLanguage.java 2010-11-08 10:28:45 UTC (rev 1789) @@ -146,10 +146,14 @@ recordNotFound(sentence); return sentence; } catch (MissingResourceException eee) { - log.warn("Resource " + sentence + " unavailable", eee); + if (log.isWarnEnabled()) { + log.warn("Resource " + sentence + " unavailable", eee); + } return sentence; } catch (Exception eee) { - log.error("Unexpected error while translating : ", eee); + if (log.isErrorEnabled()) { + log.error("Unexpected error while translating : ", eee); + } return sentence; } } Modified: trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/I18nStore.java =================================================================== --- trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/I18nStore.java 2010-11-08 10:28:15 UTC (rev 1788) +++ trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/I18nStore.java 2010-11-08 10:28:45 UTC (rev 1789) @@ -151,7 +151,7 @@ * * @param locale la locale du language requis */ - protected synchronized void setLanguage(Locale locale) { + protected void setLanguage(Locale locale) { init(); if (log.isDebugEnabled()) { log.debug("locale: " + locale); Modified: trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/I18nUtil.java =================================================================== --- trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/I18nUtil.java 2010-11-08 10:28:15 UTC (rev 1788) +++ trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/I18nUtil.java 2010-11-08 10:28:45 UTC (rev 1789) @@ -56,6 +56,8 @@ public static final Locale DEFAULT_LOCALE = Locale.UK; + public static final String[] EMPTY_STRING_ARRAY = new String[0]; + /** * Parse a list of {@link Locale} seperated by comma. * <p/> @@ -92,8 +94,9 @@ try { return (Locale) new LocaleConverter().convert(Locale.class, str); } catch (Exception e) { - log.warn("could not load locale '" + str + " for reason : " + + if (log.isWarnEnabled()) {log.warn("could not load locale '" + str + " for reason : " + e.getMessage()); + } // use default locale return DEFAULT_LOCALE; } @@ -340,7 +343,7 @@ if (classPath != null) { paths = classPath.split(" "); } else { - paths = new String[0]; + paths = EMPTY_STRING_ARRAY; } result = new URL[paths.length + 1]; result[0] = jarURL; Modified: trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/bundle/I18nBundle.java =================================================================== --- trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/bundle/I18nBundle.java 2010-11-08 10:28:15 UTC (rev 1788) +++ trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/bundle/I18nBundle.java 2010-11-08 10:28:45 UTC (rev 1789) @@ -165,7 +165,7 @@ entries = new ArrayList<I18nBundleEntry>(); } boolean b = entries.add(entry); - if (log.isDebugEnabled()) { + if (log.isInfoEnabled()) { log.info(this + "\n\t" + entry); } return b; Modified: trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/bundle/I18nBundleEntry.java =================================================================== --- trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/bundle/I18nBundleEntry.java 2010-11-08 10:28:15 UTC (rev 1788) +++ trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/bundle/I18nBundleEntry.java 2010-11-08 10:28:45 UTC (rev 1789) @@ -132,7 +132,8 @@ private static final long serialVersionUID = 1L; - public void load(InputStream inStream) throws IOException { + @Override + public synchronized void load(InputStream inStream) throws IOException { String charset = I18nUtil.ISO_8859_1_ENCONDING; Charset charsetTo = Charset.forName(charset); Modified: trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/bundle/I18nBundleUtil.java =================================================================== --- trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/bundle/I18nBundleUtil.java 2010-11-08 10:28:15 UTC (rev 1788) +++ trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/bundle/I18nBundleUtil.java 2010-11-08 10:28:45 UTC (rev 1789) @@ -31,11 +31,17 @@ import java.io.File; import java.io.FileInputStream; -import java.io.InputStream; import java.net.MalformedURLException; import java.net.URL; import java.net.URLClassLoader; -import java.util.*; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; +import java.util.HashSet; +import java.util.Iterator; +import java.util.List; +import java.util.Locale; +import java.util.Set; import java.util.regex.Matcher; import java.util.zip.ZipEntry; import java.util.zip.ZipInputStream; @@ -265,8 +271,10 @@ } return listURLs.toArray(new URL[listURLs.size()]); } catch (Exception eee) { - log.warn("Unable to find urls for urls : " + Arrays.toString(urls) + - " for reason " + eee.getMessage(), eee); + if (log.isWarnEnabled()) { + log.warn("Unable to find urls for urls : " + Arrays.toString(urls) + + " for reason " + eee.getMessage(), eee); + } return EMPTY_URL_ARRAY; } } @@ -398,15 +406,19 @@ if (bundle.size() == 0) { // there is no entry to take... - log.warn("PROMUTE NO ENTRY FOUND"); + if (log.isWarnEnabled()) { + log.warn("PROMUTE NO ENTRY FOUND"); + } return EMPTY_I18N_BUNDLE_ENTRYS_ARRAY; } if (bundle.size() == 1) { // there is one entry take it,what ever... I18nBundleEntry entry = bundle.getEntries().get(0); - log.warn("PROMUTE" + l + " to " + entry.getLocale() + - " [" + bundle.getBundlePrefix() + ']'); + if (log.isWarnEnabled()) { + log.warn("PROMUTE" + l + " to " + entry.getLocale() + + " [" + bundle.getBundlePrefix() + ']'); + } return new I18nBundleEntry[]{entry}; } @@ -446,8 +458,10 @@ if (i18nBundleScope == I18nBundleScope.FULL && !locale1.getCountry().equals(locale.getCountry()) && locale1.getLanguage().equals(locale.getLanguage())) { - log.warn(locale + " to " + locale1 + - " [" + bundle.getBundlePrefix() + ']'); + if (log.isWarnEnabled()) { + log.warn(locale + " to " + locale1 + + " [" + bundle.getBundlePrefix() + ']'); + } result.add(entry); // we take the first one, this is a resuce!!! break; @@ -477,8 +491,10 @@ if (i18nBundleScope == I18nBundleScope.FULL && locale1.getLanguage().equals(locale.getLanguage())) { result.add(entry); - log.warn(locale + " to " + locale1 + " [" + - bundle.getBundlePrefix() + ']'); + if (log.isWarnEnabled()) { + log.warn(locale + " to " + locale1 + " [" + + bundle.getBundlePrefix() + ']'); + } // we take the first one, this is a resuce!!! break; } @@ -500,16 +516,20 @@ // there is one entry take it,what ever... I18nBundleEntry entry = bundle.getEntries().get(0); result.add(entry); - log.warn(locale + " to " + entry.getLocale() + " [" + - bundle.getBundlePrefix() + ']'); + if (log.isWarnEnabled()) { + log.warn(locale + " to " + entry.getLocale() + " [" + + bundle.getBundlePrefix() + ']'); + } return; } I18nBundleScope scope = I18nBundleScope.valueOf(defaultLocale); for (I18nBundleEntry entry : bundle.getEntries(scope)) { if (entry.getLocale().equals(defaultLocale)) { // default locale found - log.warn(locale + " to " + entry.getLocale() + " [" + - bundle.getBundlePrefix() + ']'); + if (log.isWarnEnabled()) { + log.warn(locale + " to " + entry.getLocale() + " [" + + bundle.getBundlePrefix() + ']'); + } result.add(entry); return; } @@ -518,8 +538,10 @@ // default locale not found, take the first one ? I18nBundleEntry entry = bundle.getEntries().get(0); result.add(entry); - log.warn(locale + " to " + entry.getLocale() + " [" + - bundle.getBundlePrefix() + ']'); + if (log.isWarnEnabled()) { + log.warn(locale + " to " + entry.getLocale() + " [" + + bundle.getBundlePrefix() + ']'); + } //TODO Should try to load default en_GB from I18nLoader ? //I18n.DEFAULT_LOCALE.getCountry() } @@ -528,36 +550,38 @@ String pattern = SEARCH_BUNDLE_PATTERN; try { + ZipInputStream zis = new ZipInputStream(new FileInputStream(jarfile)); + try { + List<URL> result = new ArrayList<URL>(); + ClassLoader cl = new URLClassLoader( + new URL[]{incomingURL}, + I18nBundleUtil.class.getClassLoader()); + while (zis.available() != 0) { + ZipEntry entry = zis.getNextEntry(); - List<URL> result = new ArrayList<URL>(); - InputStream in = new FileInputStream(jarfile); - ZipInputStream zis = new ZipInputStream(in); - ClassLoader cl = new URLClassLoader( - new URL[]{incomingURL}, - I18nBundleUtil.class.getClassLoader()); - while (zis.available() != 0) { - ZipEntry entry = zis.getNextEntry(); + if (entry == null) { + break; + } - if (entry == null) { - break; - } + String name = entry.getName(); - String name = entry.getName(); - - if (name.matches(pattern)) { - // on recupere le fichier correspondant au pattern dans le - // classloader - if (log.isDebugEnabled()) { - log.debug(name + " accepted for pattern " + pattern); + if (name.matches(pattern)) { + // on recupere le fichier correspondant au pattern dans le + // classloader + if (log.isDebugEnabled()) { + log.debug(name + " accepted for pattern " + pattern); + } + URL url = cl.getResource(name); + // on ajoute le fichier correspondant au pattern dans la + // liste + result.add(url); } - URL url = cl.getResource(name); - // on ajoute le fichier correspondant au pattern dans la - // liste - result.add(url); } + + return result; + } finally { + zis.close(); } - - return result; } catch (Exception eee) { throw new RuntimeException( "n'a pas pu trouve la resource dans le jar " + Modified: trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/init/DefaultI18nInitializer.java =================================================================== --- trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/init/DefaultI18nInitializer.java 2010-11-08 10:28:15 UTC (rev 1788) +++ trunk/nuiton-i18n/src/main/java/org/nuiton/i18n/init/DefaultI18nInitializer.java 2010-11-08 10:28:45 UTC (rev 1789) @@ -49,7 +49,7 @@ public static String UNIQUE_BUNDLE_DEF = "%1$s-definition.properties"; - public static String UNIQUE_BUNDLE_ENTRY = "%1$s-%2$s.properties"; + public static String UNIQUE_BUNDLE_ENTRY = "%1$s_%2$s.properties"; public static String BUNDLE_DEF_LOCALES = "locales";