Package org.apache.wicket.resource
Class PropertiesFactory
- java.lang.Object
-
- org.apache.wicket.resource.PropertiesFactory
-
- All Implemented Interfaces:
IPropertiesFactory
public class PropertiesFactory extends Object implements IPropertiesFactory
Default implementation ofIPropertiesFactory
which uses theIResourceStreamLocator
as defined byResourceSettings.getResourceStreamLocator()
to load theProperties
objects. Depending on the settings, it will assignModificationWatcher
s to the loaded resources to support reloading.- Author:
- Juergen Donnerstag
- See Also:
ResourceSettings.getPropertiesFactory()
-
-
Constructor Summary
Constructors Constructor Description PropertiesFactory(IPropertiesFactoryContext context)
Construct.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
addListener(IPropertiesChangeListener listener)
Add a listener which will be called when a change to the underlying resource stream (e.g.protected void
addToWatcher(String path, IResourceStream resourceStream, IModificationWatcher watcher)
Add the resource stream to the file being watchedvoid
clearCache()
Remove all cached properties.protected Map<String,Properties>
getCache()
For subclasses to get access to the cacheList<IPropertiesLoader>
getPropertiesLoaders()
Gets theList
of properties loader.Properties
load(Class<?> clazz, String path)
Load the properties associated with the pathprotected ValueMap
loadFromLoader(IPropertiesLoader loader, IResourceStream resourceStream)
protected Map<String,Properties>
newPropertiesCache()
-
-
-
Constructor Detail
-
PropertiesFactory
public PropertiesFactory(IPropertiesFactoryContext context)
Construct.- Parameters:
context
- context for properties factory
-
-
Method Detail
-
getPropertiesLoaders
public List<IPropertiesLoader> getPropertiesLoaders()
Gets theList
of properties loader. You may add or remove properties loaders at your will.- Returns:
- the
List
of properties loader
-
newPropertiesCache
protected Map<String,Properties> newPropertiesCache()
- Returns:
- new Cache implementation
-
addListener
public void addListener(IPropertiesChangeListener listener)
Description copied from interface:IPropertiesFactory
Add a listener which will be called when a change to the underlying resource stream (e.g. properties file) has been detected- Specified by:
addListener
in interfaceIPropertiesFactory
- See Also:
IPropertiesFactory.addListener(org.apache.wicket.resource.IPropertiesChangeListener)
-
clearCache
public final void clearCache()
Description copied from interface:IPropertiesFactory
Remove all cached properties.- Specified by:
clearCache
in interfaceIPropertiesFactory
- See Also:
IPropertiesFactory.clearCache()
-
load
public Properties load(Class<?> clazz, String path)
Description copied from interface:IPropertiesFactory
Load the properties associated with the path- Specified by:
load
in interfaceIPropertiesFactory
- Parameters:
clazz
- The class requesting the propertiespath
- The path to identify the resource- Returns:
- The properties
-
loadFromLoader
protected ValueMap loadFromLoader(IPropertiesLoader loader, IResourceStream resourceStream)
- Parameters:
loader
-resourceStream
-- Returns:
- properties
-
addToWatcher
protected void addToWatcher(String path, IResourceStream resourceStream, IModificationWatcher watcher)
Add the resource stream to the file being watched- Parameters:
path
-resourceStream
-watcher
-
-
getCache
protected final Map<String,Properties> getCache()
For subclasses to get access to the cache- Returns:
- Map
-
-