You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@struts.apache.org by lu...@apache.org on 2014/08/21 09:45:30 UTC
[10/12] git commit: Restored the ordering feature.
Restored the ordering feature.
Project: http://git-wip-us.apache.org/repos/asf/struts/repo
Commit: http://git-wip-us.apache.org/repos/asf/struts/commit/c74f2836
Tree: http://git-wip-us.apache.org/repos/asf/struts/tree/c74f2836
Diff: http://git-wip-us.apache.org/repos/asf/struts/diff/c74f2836
Branch: refs/heads/develop
Commit: c74f283626ac0c08f66e52b6102fcaa3d6614903
Parents: be72010
Author: Luigi Fugaro <l....@gmail.com>
Authored: Mon Aug 18 16:25:42 2014 +0200
Committer: Luigi Fugaro <l....@gmail.com>
Committed: Mon Aug 18 16:25:42 2014 +0200
----------------------------------------------------------------------
.../opensymphony/xwork2/util/LocalizedTextUtil.java | 15 ++++++++-------
1 file changed, 8 insertions(+), 7 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/struts/blob/c74f2836/xwork-core/src/main/java/com/opensymphony/xwork2/util/LocalizedTextUtil.java
----------------------------------------------------------------------
diff --git a/xwork-core/src/main/java/com/opensymphony/xwork2/util/LocalizedTextUtil.java b/xwork-core/src/main/java/com/opensymphony/xwork2/util/LocalizedTextUtil.java
index 3219450..9aad928 100644
--- a/xwork-core/src/main/java/com/opensymphony/xwork2/util/LocalizedTextUtil.java
+++ b/xwork-core/src/main/java/com/opensymphony/xwork2/util/LocalizedTextUtil.java
@@ -86,7 +86,7 @@ import java.util.concurrent.ConcurrentMap;
*/
public class LocalizedTextUtil {
- private static final ConcurrentMap<Integer, Set<String>> classLoaderMap = new ConcurrentHashMap<Integer, Set<String>>();
+ private static final ConcurrentMap<Integer, List<String>> classLoaderMap = new ConcurrentHashMap<Integer, List<String>>();
private static final Logger LOG = LoggerFactory.getLogger(LocalizedTextUtil.class);
private static boolean reloadBundles = false;
private static final ConcurrentMap<String, ResourceBundle> bundlesMap = new ConcurrentHashMap<String, ResourceBundle>();
@@ -106,9 +106,9 @@ public class LocalizedTextUtil {
*/
public static void clearDefaultResourceBundles() {
ClassLoader ccl = getCurrentThreadContextClassLoader();
- Set<String> bundles = new HashSet<String>();
+ List<String> bundles = new ArrayList<String>();
classLoaderMap.put(ccl.hashCode(), bundles);
- bundles.add(XWORK_MESSAGES_BUNDLE);
+ bundles.add(0, XWORK_MESSAGES_BUNDLE);
}
/**
@@ -132,13 +132,14 @@ public class LocalizedTextUtil {
ClassLoader ccl = null;
synchronized (XWORK_MESSAGES_BUNDLE) {
ccl = getCurrentThreadContextClassLoader();
- Set<String> bundles = classLoaderMap.get(ccl.hashCode());
+ List<String> bundles = classLoaderMap.get(ccl.hashCode());
if (bundles == null) {
- bundles = new HashSet<String>();
+ bundles = new ArrayList<String>();
classLoaderMap.put(ccl.hashCode(), bundles);
bundles.add(XWORK_MESSAGES_BUNDLE);
}
- bundles.add(resourceBundleName);
+ bundles.remove(resourceBundleName);
+ bundles.add(0, resourceBundleName);
}
if (LOG.isDebugEnabled()) {
@@ -197,7 +198,7 @@ public class LocalizedTextUtil {
* @return a localized message based on the specified key, or null if no localized message can be found for it
*/
public static String findDefaultText(String aTextName, Locale locale) {
- Set<String> localList = classLoaderMap.get(getCurrentThreadContextClassLoader().hashCode());
+ List<String> localList = classLoaderMap.get(Thread.currentThread().getContextClassLoader().hashCode());
for (String bundleName : localList) {
ResourceBundle bundle = findResourceBundle(bundleName, locale);