private static String calculateString( final String[] pkgNames, final Locale locale, final String key, final Object[] parameters, final Class<?> resourceClass, final String bundleName, final boolean fallbackOnRoot ) { for ( final String packageName : pkgNames ) { try { return calculateString( packageName, locale, key, parameters, resourceClass, bundleName, fallbackOnRoot ); } catch ( final MissingResourceException e ) { continue; } } return null; }
public static String calculateString( final String[] pkgNames, final String key, Object[] parameters, final Class<?> resourceClass, final String bundleName, final boolean fallbackOnRoot ) { return calculateString( pkgNames, key, parameters, resourceClass, bundleName, false, fallbackOnRoot ); }
/** * Calls {@link #calculateString(String[], String, Object[], Class, String, boolean)} with the {@code * logNotFoundError} parameter set to {@code true} to ensure proper error logging when the localized string cannot be * found. */ public static String calculateString( final String[] pkgNames, final String key, final Object[] parameters, final Class<?> resourceClass, final String bundleName ) { return calculateString( pkgNames, key, parameters, resourceClass, bundleName, false, false ); }
static String calculateString( final String packageName, final Locale locale, final String key, Object[] parameters, final Class<?> resourceClass, final String bundleName ) { return calculateString( packageName, locale, key, parameters, resourceClass, bundleName, true ); }
/** * Returns the localized string for the given {@code key} and {@code parameters} in a bundle defined by the the * concatenation of the package names defined in {@code packageName} and {@link #BUNDLE_NAME} (the first valid * combination of {@code packageName} + {@link #BUNDLE_NAME} wins), sing the provided {@code resourceClass}'s class * loader. * * @param pkgNames an array of packages potentially containing the localized messages the first one found to * contain the messages is the one that is used to localize the message * @param key the message key being looked up * @param parameters parameters within the looked up message * @param resourceClass the class whose class loader is used to getch the resource bundle * @return the localized string for the given {@code key} and {@code parameters} in a bundle defined by the the * concatenation of the package names defined in {@code packageName} and {@link #BUNDLE_NAME} (the first valid * combination of {@code packageName} + {@link #BUNDLE_NAME} wins), sing the provided {@code resourceClass}'s class * loader */ protected String calculateString( String[] pkgNames, String key, Object[] parameters, Class<?> resourceClass ) { return GlobalMessageUtil.calculateString( pkgNames, key, parameters, resourceClass, BUNDLE_NAME ); }
@Override protected String calculateString( String packageName, String key, Object[] parameters, Class<?> resourceClass ) { if ( replaceWith != null ) { final String[] pkgNames = new String[] { replacePackage( packageName ), replaceSysBundle }; final String string = super.calculateString( pkgNames, key, parameters, resourceClass ); if ( !GlobalMessageUtil.isMissingKey( string ) ) { return string; } } final String[] pkgNames = new String[] { packageName, SYSTEM_BUNDLE_PACKAGE }; return GlobalMessageUtil.calculateString( pkgNames, key, parameters, resourceClass, BUNDLE_NAME, false ); } }
for ( final Locale locale : activeLocales ) { final String string = calculateString( pkgNames, locale, key, parameters, resourceClass, bundleName, fallbackOnRoot ); if ( !isMissingKey( string ) ) { return string;