public class ResolvingLocaleUrlDefinitionDAO extends CachingLocaleUrlDefinitionDAO
A definitions DAO (loading URLs and using Locale as a customization key) that caches definitions that have been loaded and resolves inheritances.
It can check if the URLs change, but by default this feature is turned off.
CHECK_REFRESH_INIT_PARAMETER, checkRefresh, definitionResolver, locale2definitionMap
applicationContext, lastModifiedDates, reader, sourceURLs
Constructor and Description |
---|
ResolvingLocaleUrlDefinitionDAO() |
Modifier and Type | Method and Description |
---|---|
protected java.util.Map<java.lang.String,Definition> |
copyDefinitionMap(java.util.Map<java.lang.String,Definition> localeDefsMap)
Copies the definition map to be passed to a higher level of customization
key.
|
protected Definition |
getDefinitionFromResolver(java.lang.String name,
java.util.Locale customizationKey)
Returns a definition from the definition resolver.
|
protected java.util.Map<java.lang.String,Definition> |
loadDefinitionsFromURLs(java.util.Locale customizationKey)
Loads definitions from the URLs.
|
protected java.util.Map<java.lang.String,Definition> |
loadParentDefinitions(java.util.Locale parentLocale)
Loads parent definitions, i.e.
|
protected void |
postDefinitionLoadOperations(java.util.Map<java.lang.String,Definition> localeDefsMap,
java.util.Locale customizationKey)
Deprecated.
|
protected void |
resolveInheritance(Definition definition,
java.util.Map<java.lang.String,Definition> definitions,
java.util.Locale locale,
java.util.Set<java.lang.String> alreadyResolvedDefinitions)
Resolve locale-specific inheritance.
|
protected void |
resolveInheritances(java.util.Map<java.lang.String,Definition> map,
java.util.Locale locale)
Resolve locale-specific extended instances.
|
checkAndloadDefinitions, getDefinition, getDefinitions, init, loadDefinitions, loadRawDefinitionsFromURLs, refresh, setCheckRefresh, setPatternDefinitionResolver
addSourceURL, getResourceNames, getResourceString, identifySources, loadDefinitionsFromURL, refreshRequired, setApplicationContext, setReader, setSourceURLs
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
refreshRequired
protected java.util.Map<java.lang.String,Definition> loadParentDefinitions(java.util.Locale parentLocale)
loadParentDefinitions
in class CachingLocaleUrlDefinitionDAO
parentLocale
- The locale to use when loading URLs.protected java.util.Map<java.lang.String,Definition> loadDefinitionsFromURLs(java.util.Locale customizationKey)
loadDefinitionsFromURLs
in class CachingLocaleUrlDefinitionDAO
customizationKey
- The locale to use when loading URLs.protected Definition getDefinitionFromResolver(java.lang.String name, java.util.Locale customizationKey)
getDefinitionFromResolver
in class CachingLocaleUrlDefinitionDAO
name
- The name of the definition.customizationKey
- The customization key to use.@Deprecated protected void postDefinitionLoadOperations(java.util.Map<java.lang.String,Definition> localeDefsMap, java.util.Locale customizationKey)
postDefinitionLoadOperations
in class CachingLocaleUrlDefinitionDAO
localeDefsMap
- The loaded definitions.customizationKey
- The locale to use when loading URLs.protected void resolveInheritances(java.util.Map<java.lang.String,Definition> map, java.util.Locale locale)
map
- The definition map containing the definitions to resolve.locale
- The locale to use.NoSuchDefinitionException
- If a parent definition is not found.protected void resolveInheritance(Definition definition, java.util.Map<java.lang.String,Definition> definitions, java.util.Locale locale, java.util.Set<java.lang.String> alreadyResolvedDefinitions)
definition
- The definition to resolvedefinitions
- The definitions to take when obtaining a parent
definition.locale
- The locale to use.alreadyResolvedDefinitions
- The set of the definitions that have
been already resolved.NoSuchDefinitionException
- If an inheritance can not be solved.protected java.util.Map<java.lang.String,Definition> copyDefinitionMap(java.util.Map<java.lang.String,Definition> localeDefsMap)
copyDefinitionMap
in class CachingLocaleUrlDefinitionDAO
localeDefsMap
- The map of definition to be copied.localeDefsMap
into a LinkedHashMap
.