Class ResourceLoader
java.lang.Object
org.apache.velocity.runtime.resource.loader.ResourceLoader
- Direct Known Subclasses:
ClasspathResourceLoader
,DataSourceResourceLoader
,FileResourceLoader
,JarResourceLoader
,StringResourceLoader
,URLResourceLoader
This is abstract class the all text resource loaders should
extend.
- Version:
- $Id: ResourceLoader.java 832280 2009-11-03 02:47:55Z wglass $
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected String
Class name for this loader, for logging/debuggin purposes.protected boolean
Does this loader want templates produced with it cached in the Runtime.protected Log
protected long
This property will be passed on to the templates that are created with this loader.protected RuntimeServices
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoid
commonInit
(RuntimeServices rs, org.apache.commons.collections.ExtendedProperties configuration) This initialization is used by all resource loaders and must be called to set up common properties shared by all resource loadersReturn the class name of this resource Loaderabstract long
getLastModified
(Resource resource) Get the last modified time of the InputStream source that was used to create the template.long
Get the interval at which the InputStream source should be checked for modifications.abstract InputStream
getResourceStream
(String source) Get the InputStream that the Runtime will parse to create a template.abstract void
init
(org.apache.commons.collections.ExtendedProperties configuration) Initialize the template loader with a a resources class.boolean
The Runtime uses this to find out whether this template loader wants the Runtime to cache templates created with InputStreams provided by this loader.abstract boolean
isSourceModified
(Resource resource) Given a template, check to see if the source of InputStream has been modified.boolean
resourceExists
(String resourceName) Check whether any given resource exists.void
setCachingOn
(boolean value) Set the caching state.void
setModificationCheckInterval
(long modificationCheckInterval) Set the interval at which the InputStream source should be checked for modifications.
-
Field Details
-
isCachingOn
protected boolean isCachingOnDoes this loader want templates produced with it cached in the Runtime. -
modificationCheckInterval
protected long modificationCheckIntervalThis property will be passed on to the templates that are created with this loader. -
className
Class name for this loader, for logging/debuggin purposes. -
rsvc
-
log
-
-
Constructor Details
-
ResourceLoader
public ResourceLoader()
-
-
Method Details
-
commonInit
public void commonInit(RuntimeServices rs, org.apache.commons.collections.ExtendedProperties configuration) This initialization is used by all resource loaders and must be called to set up common properties shared by all resource loaders- Parameters:
rs
-configuration
-
-
init
public abstract void init(org.apache.commons.collections.ExtendedProperties configuration) Initialize the template loader with a a resources class.- Parameters:
configuration
-
-
getResourceStream
Get the InputStream that the Runtime will parse to create a template.- Parameters:
source
-- Returns:
- The input stream for the requested resource.
- Throws:
ResourceNotFoundException
-
isSourceModified
Given a template, check to see if the source of InputStream has been modified.- Parameters:
resource
-- Returns:
- True if the resource has been modified.
-
getLastModified
Get the last modified time of the InputStream source that was used to create the template. We need the template here because we have to extract the name of the template in order to locate the InputStream source.- Parameters:
resource
-- Returns:
- Time in millis when the resource has been modified.
-
getClassName
Return the class name of this resource Loader- Returns:
- Class name of the resource loader.
-
setCachingOn
public void setCachingOn(boolean value) Set the caching state. If true, then this loader would like the Runtime to cache templates that have been created with InputStreams provided by this loader.- Parameters:
value
-
-
isCachingOn
public boolean isCachingOn()The Runtime uses this to find out whether this template loader wants the Runtime to cache templates created with InputStreams provided by this loader.- Returns:
- True if this resource loader caches.
-
setModificationCheckInterval
public void setModificationCheckInterval(long modificationCheckInterval) Set the interval at which the InputStream source should be checked for modifications.- Parameters:
modificationCheckInterval
-
-
getModificationCheckInterval
public long getModificationCheckInterval()Get the interval at which the InputStream source should be checked for modifications.- Returns:
- The modification check interval.
-
resourceExists
Check whether any given resource exists. This is not really a very efficient test and it can and should be overridden in the subclasses extending ResourceLoader.- Parameters:
resourceName
- The name of a resource.- Returns:
- true if a resource exists and can be accessed.
- Since:
- 1.6
-