Skip to content

Commit 4dc03f7

Browse files
robertoschwaldpuneetbehl
authored andcommitted
GRAILS-11795 preserve order of bean-defined basenames.
- fixes GRAILS-11795
1 parent 78f8a40 commit 4dc03f7

File tree

1 file changed

+12
-6
lines changed

1 file changed

+12
-6
lines changed

grails-core/src/main/groovy/org/grails/spring/context/support/PluginAwareResourceBundleMessageSource.java

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -39,10 +39,7 @@
3939
import java.io.File;
4040
import java.io.FilenameFilter;
4141
import java.text.MessageFormat;
42-
import java.util.ArrayList;
43-
import java.util.List;
44-
import java.util.Locale;
45-
import java.util.Properties;
42+
import java.util.*;
4643
import java.util.concurrent.Callable;
4744
import java.util.concurrent.ConcurrentHashMap;
4845
import java.util.concurrent.ConcurrentMap;
@@ -65,6 +62,7 @@ public class PluginAwareResourceBundleMessageSource extends ReloadableResourceBu
6562
private long pluginCacheMillis = Long.MIN_VALUE;
6663
private boolean searchClasspath = false;
6764
private String messageBundleLocationPattern = "classpath*:*.properties";
65+
String[] basenamesDefinition = {};
6866

6967
public PluginAwareResourceBundleMessageSource() {
7068
}
@@ -86,6 +84,12 @@ public void setResourceResolver(PathMatchingResourcePatternResolver resourceReso
8684
this.resourceResolver = resourceResolver;
8785
}
8886

87+
@Override
88+
public void setBasenames(String... basenames){
89+
basenamesDefinition = basenames;
90+
super.setBasenames(basenames);
91+
}
92+
8993
public void afterPropertiesSet() throws Exception {
9094
if (pluginCacheMillis == Long.MIN_VALUE) {
9195
pluginCacheMillis = cacheMillis;
@@ -148,8 +152,10 @@ public boolean accept(File dir, String name) {
148152
basenames.add(baseName);
149153
}
150154

151-
setBasenames(basenames.toArray( new String[basenames.size()]));
152-
155+
List<String> mergedBasenames = Arrays.asList(basenamesDefinition);
156+
basenames.removeAll(mergedBasenames);
157+
mergedBasenames.addAll(basenames);
158+
super.setBasenames(mergedBasenames.toArray(new String[0]));
153159
}
154160

155161

0 commit comments

Comments
 (0)