mirror of
https://github.com/spring-projects/spring-framework.git
synced 2026-09-17 08:24:13 +00:00
+1
-1
@@ -54,7 +54,7 @@ public abstract class AbstractResourceBasedMessageSource extends AbstractMessage
|
||||
* Set a single basename, following the basic ResourceBundle convention
|
||||
* of not specifying file extension or language codes. The resource location
|
||||
* format is up to the specific {@code MessageSource} implementation.
|
||||
* <p>Regular and XMl properties files are supported: for example, "messages" will find
|
||||
* <p>Regular and XML properties files are supported: for example, "messages" will find
|
||||
* a "messages.properties", "messages_en.properties" etc arrangement as well
|
||||
* as "messages.xml", "messages_en.xml" etc.
|
||||
* @param basename the single basename
|
||||
|
||||
+10
-8
@@ -92,10 +92,12 @@ import org.springframework.util.StringUtils;
|
||||
public class ReloadableResourceBundleMessageSource extends AbstractResourceBasedMessageSource
|
||||
implements ResourceLoaderAware {
|
||||
|
||||
private static final String PROPERTIES_EXTENSION = ".properties";
|
||||
|
||||
private static final String XML_EXTENSION = ".xml";
|
||||
|
||||
|
||||
private List<String> fileExtensions = List.of(".properties", XML_EXTENSION);
|
||||
private List<String> fileExtensions = List.of(PROPERTIES_EXTENSION, XML_EXTENSION);
|
||||
|
||||
@Nullable
|
||||
private Properties fileEncodings;
|
||||
@@ -381,18 +383,18 @@ public class ReloadableResourceBundleMessageSource extends AbstractResourceBased
|
||||
StringBuilder temp = new StringBuilder(basename);
|
||||
|
||||
temp.append('_');
|
||||
if (language.length() > 0) {
|
||||
if (!language.isEmpty()) {
|
||||
temp.append(language);
|
||||
result.add(0, temp.toString());
|
||||
}
|
||||
|
||||
temp.append('_');
|
||||
if (country.length() > 0) {
|
||||
if (!country.isEmpty()) {
|
||||
temp.append(country);
|
||||
result.add(0, temp.toString());
|
||||
}
|
||||
|
||||
if (variant.length() > 0 && (language.length() > 0 || country.length() > 0)) {
|
||||
if (!variant.isEmpty() && (!language.isEmpty() || !country.isEmpty())) {
|
||||
temp.append('_').append(variant);
|
||||
result.add(0, temp.toString());
|
||||
}
|
||||
@@ -562,13 +564,13 @@ public class ReloadableResourceBundleMessageSource extends AbstractResourceBased
|
||||
*/
|
||||
protected Properties loadProperties(Resource resource, String filename) throws IOException {
|
||||
Properties props = newProperties();
|
||||
try (InputStream is = resource.getInputStream()) {
|
||||
try (InputStream inputStream = resource.getInputStream()) {
|
||||
String resourceFilename = resource.getFilename();
|
||||
if (resourceFilename != null && resourceFilename.endsWith(XML_EXTENSION)) {
|
||||
if (logger.isDebugEnabled()) {
|
||||
logger.debug("Loading properties [" + resource.getFilename() + "]");
|
||||
}
|
||||
this.propertiesPersister.loadFromXml(props, is);
|
||||
this.propertiesPersister.loadFromXml(props, inputStream);
|
||||
}
|
||||
else {
|
||||
String encoding = null;
|
||||
@@ -582,13 +584,13 @@ public class ReloadableResourceBundleMessageSource extends AbstractResourceBased
|
||||
if (logger.isDebugEnabled()) {
|
||||
logger.debug("Loading properties [" + resource.getFilename() + "] with encoding '" + encoding + "'");
|
||||
}
|
||||
this.propertiesPersister.load(props, new InputStreamReader(is, encoding));
|
||||
this.propertiesPersister.load(props, new InputStreamReader(inputStream, encoding));
|
||||
}
|
||||
else {
|
||||
if (logger.isDebugEnabled()) {
|
||||
logger.debug("Loading properties [" + resource.getFilename() + "]");
|
||||
}
|
||||
this.propertiesPersister.load(props, is);
|
||||
this.propertiesPersister.load(props, inputStream);
|
||||
}
|
||||
}
|
||||
return props;
|
||||
|
||||
+1
-10
@@ -107,21 +107,12 @@ final class PersistenceUnitReader {
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Parse and build all persistence unit infos defined in the specified XML file(s).
|
||||
* @param persistenceXmlLocation the resource location (can be a pattern)
|
||||
* @return the resulting PersistenceUnitInfo instances
|
||||
*/
|
||||
public SpringPersistenceUnitInfo[] readPersistenceUnitInfos(String persistenceXmlLocation) {
|
||||
return readPersistenceUnitInfos(new String[] {persistenceXmlLocation});
|
||||
}
|
||||
|
||||
/**
|
||||
* Parse and build all persistence unit infos defined in the given XML files.
|
||||
* @param persistenceXmlLocations the resource locations (can be patterns)
|
||||
* @return the resulting PersistenceUnitInfo instances
|
||||
*/
|
||||
public SpringPersistenceUnitInfo[] readPersistenceUnitInfos(String[] persistenceXmlLocations) {
|
||||
public SpringPersistenceUnitInfo[] readPersistenceUnitInfos(String... persistenceXmlLocations) {
|
||||
ErrorHandler handler = new SimpleSaxErrorHandler(logger);
|
||||
List<SpringPersistenceUnitInfo> infos = new ArrayList<>(1);
|
||||
String resourceLocation = null;
|
||||
|
||||
Reference in New Issue
Block a user