/** * Create new I18N pool instance. If multiple locale support is not requested this factory creates a simplified, optimized * I18N pool instance. In this case, if optional <code>locale</code> parameter is provided, it is silently ignored, see * {@link I18nPool} interface. * <p> * For I18N pool with multiple locale support returned instance is actually a map of maps. Outer map uses locale language * tag for key while inner map uses object name. * * @param multiLocale flag for multiple locale support. * @param <T> instance type. * @return new I18N pool instance. */ public static <T> I18nPool<T> getInstance(boolean multiLocale) { if (multiLocale) { return new LocalePool<T>(); } else { return new SimplePool<T>(); } }