MessageSourceProperties Class — spring-boot Architecture
Architecture documentation for the MessageSourceProperties class in MessageSourceProperties.java from the spring-boot codebase.
Entity Profile
Relationship Graph
Source Code
core/spring-boot-autoconfigure/src/main/java/org/springframework/boot/autoconfigure/context/MessageSourceProperties.java lines 40–143
@ConfigurationProperties("spring.messages")
public class MessageSourceProperties {
/**
* List of basenames (essentially a fully-qualified classpath location), each
* following the ResourceBundle convention with relaxed support for slash based
* locations. If it doesn't contain a package qualifier (such as "org.mypackage"), it
* will be resolved from the classpath root.
*/
private List<String> basename = new ArrayList<>(List.of("messages"));
/**
* List of locale-independent property file resources containing common messages.
*/
private @Nullable List<Resource> commonMessages;
/**
* Message bundles encoding.
*/
private Charset encoding = StandardCharsets.UTF_8;
/**
* Loaded resource bundle files cache duration. When not set, bundles are cached
* forever. If a duration suffix is not specified, seconds will be used.
*/
@DurationUnit(ChronoUnit.SECONDS)
private @Nullable Duration cacheDuration;
/**
* Whether to fall back to the system Locale if no files for a specific Locale have
* been found. if this is turned off, the only fallback will be the default file (e.g.
* "messages.properties" for basename "messages").
*/
private boolean fallbackToSystemLocale = true;
/**
* Whether to always apply the MessageFormat rules, parsing even messages without
* arguments.
*/
private boolean alwaysUseMessageFormat;
/**
* Whether to use the message code as the default message instead of throwing a
* "NoSuchMessageException". Recommended during development only.
*/
private boolean useCodeAsDefaultMessage;
public List<String> getBasename() {
return this.basename;
}
public void setBasename(List<String> basename) {
this.basename = basename;
}
public Charset getEncoding() {
return this.encoding;
}
public void setEncoding(Charset encoding) {
this.encoding = encoding;
}
public @Nullable Duration getCacheDuration() {
return this.cacheDuration;
}
public void setCacheDuration(@Nullable Duration cacheDuration) {
this.cacheDuration = cacheDuration;
}
public boolean isFallbackToSystemLocale() {
return this.fallbackToSystemLocale;
}
public void setFallbackToSystemLocale(boolean fallbackToSystemLocale) {
this.fallbackToSystemLocale = fallbackToSystemLocale;
}
public boolean isAlwaysUseMessageFormat() {
return this.alwaysUseMessageFormat;
}
public void setAlwaysUseMessageFormat(boolean alwaysUseMessageFormat) {
this.alwaysUseMessageFormat = alwaysUseMessageFormat;
}
public boolean isUseCodeAsDefaultMessage() {
return this.useCodeAsDefaultMessage;
}
public void setUseCodeAsDefaultMessage(boolean useCodeAsDefaultMessage) {
this.useCodeAsDefaultMessage = useCodeAsDefaultMessage;
}
public @Nullable List<Resource> getCommonMessages() {
return this.commonMessages;
}
public void setCommonMessages(@Nullable List<Resource> commonMessages) {
this.commonMessages = commonMessages;
}
}
Domain
Source
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free