blob: 299be8fcc4c2394fb6c5b8881b48cf4d7386f215 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<!-- Generated by javadoc (build 1.6.0_04) on Mon Dec 15 08:38:56 PST 2008 -->
<META http-equiv="Content-Type" content="text/html; charset=UTF-8">
<TITLE>
DataSourceResourceLoader (Apache Velocity 1.6.1 API)
</TITLE>
<META NAME="date" CONTENT="2008-12-15">
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../../stylesheet.css" TITLE="Style">
<SCRIPT type="text/javascript">
function windowTitle()
{
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="DataSourceResourceLoader (Apache Velocity 1.6.1 API)";
}
}
</SCRIPT>
<NOSCRIPT>
</NOSCRIPT>
</HEAD>
<BODY BGCOLOR="white" onload="windowTitle();">
<HR>
<!-- ========= START OF TOP NAVBAR ======= -->
<A NAME="navbar_top"><!-- --></A>
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/DataSourceResourceLoader.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ClasspathResourceLoader.html" title="class in org.apache.velocity.runtime.resource.loader"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/FileResourceLoader.html" title="class in org.apache.velocity.runtime.resource.loader"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../../../index.html?org/apache/velocity/runtime/resource/loader/DataSourceResourceLoader.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="DataSourceResourceLoader.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#fields_inherited_from_class_org.apache.velocity.runtime.resource.loader.ResourceLoader">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_top"></A>
<!-- ========= END OF TOP NAVBAR ========= -->
<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
org.apache.velocity.runtime.resource.loader</FONT>
<BR>
Class DataSourceResourceLoader</H2>
<PRE>
<A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</A>
<IMG SRC="../../../../../../resources/inherit.gif" ALT="extended by "><A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html" title="class in org.apache.velocity.runtime.resource.loader">org.apache.velocity.runtime.resource.loader.ResourceLoader</A>
<IMG SRC="../../../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.velocity.runtime.resource.loader.DataSourceResourceLoader</B>
</PRE>
<HR>
<DL>
<DT><PRE>public class <B>DataSourceResourceLoader</B><DT>extends <A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html" title="class in org.apache.velocity.runtime.resource.loader">ResourceLoader</A></DL>
</PRE>
<P>
<P>This is a simple template file loader that loads templates
from a DataSource instead of plain files.
<P>It can be configured with a datasource name, a table name,
id column (name), content column (the template body) and a
datetime column (for last modification info).
<br>
<br>
Example configuration snippet for velocity.properties:
<br>
<br>
resource.loader = file, ds <br>
<br>
ds.resource.loader.public.name = DataSource <br>
ds.resource.loader.description = Velocity DataSource Resource Loader <br>
ds.resource.loader.class = org.apache.velocity.runtime.resource.loader.DataSourceResourceLoader <br>
ds.resource.loader.resource.datasource = java:comp/env/jdbc/Velocity <br>
ds.resource.loader.resource.table = tb_velocity_template <br>
ds.resource.loader.resource.keycolumn = id_template <br>
ds.resource.loader.resource.templatecolumn = template_definition <br>
ds.resource.loader.resource.timestampcolumn = template_timestamp <br>
ds.resource.loader.cache = false <br>
ds.resource.loader.modificationCheckInterval = 60 <br>
<br>
<P>Optionally, the developer can instantiate the DataSourceResourceLoader and set the DataSource via code in
a manner similar to the following:
<BR>
<BR>
DataSourceResourceLoader ds = new DataSourceResourceLoader();<BR>
ds.setDataSource(DATASOURCE);<BR>
Velocity.setProperty("ds.resource.loader.instance",ds);<BR>
<P> The property <code>ds.resource.loader.class</code> should be left out, otherwise all the other
properties in velocity.properties would remain the same.
<BR>
<BR>
Example WEB-INF/web.xml: <br>
<br>
<resource-ref> <br>
<description>Velocity template DataSource</description> <br>
<res-ref-name>jdbc/Velocity</res-ref-name> <br>
<res-type>javax.sql.DataSource</res-type> <br>
<res-auth>Container</res-auth> <br>
</resource-ref> <br>
<br>
<br>
and Tomcat 4 server.xml file: <br>
[...] <br>
<Context path="/exampleVelocity" docBase="exampleVelocity" debug="0"> <br>
[...] <br>
<ResourceParams name="jdbc/Velocity"> <br>
<parameter> <br>
<name>driverClassName</name> <br>
<value>org.hsql.jdbcDriver</value> <br>
</parameter> <br>
<parameter> <br>
<name>driverName</name> <br>
<value>jdbc:HypersonicSQL:database</value> <br>
</parameter> <br>
<parameter> <br>
<name>user</name> <br>
<value>database_username</value> <br>
</parameter> <br>
<parameter> <br>
<name>password</name> <br>
<value>database_password</value> <br>
</parameter> <br>
</ResourceParams> <br>
[...] <br>
</Context> <br>
[...] <br>
<br>
Example sql script:<br>
CREATE TABLE tb_velocity_template ( <br>
id_template varchar (40) NOT NULL , <br>
template_definition text (16) NOT NULL , <br>
template_timestamp datetime NOT NULL <br>
) <br>
<P>
<P>
<DL>
<DT><B>Since:</B></DT>
<DD>1.5</DD>
<DT><B>Version:</B></DT>
<DD>$Id: DataSourceResourceLoader.java 687177 2008-08-19 22:00:32Z nbubna $</DD>
<DT><B>Author:</B></DT>
<DD><a href="mailto:wglass@forio.com">Will Glass-Husain</a>, <a href="mailto:matt@raibledesigns.com">Matt Raible</a>, <a href="mailto:david.kinnvall@alertir.com">David Kinnvall</a>, <a href="mailto:paulo.gaspar@krankikom.de">Paulo Gaspar</a>, <a href="mailto:lachiewicz@plusnet.pl">Sylwester Lachiewicz</a>, <a href="mailto:henning@apache.org">Henning P. Schmiedehausen</a></DD>
</DL>
<HR>
<P>
<!-- =========== FIELD SUMMARY =========== -->
<A NAME="field_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Field Summary</B></FONT></TH>
</TR>
</TABLE>
&nbsp;<A NAME="fields_inherited_from_class_org.apache.velocity.runtime.resource.loader.ResourceLoader"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Fields inherited from class org.apache.velocity.runtime.resource.loader.<A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html" title="class in org.apache.velocity.runtime.resource.loader">ResourceLoader</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html#className">className</A>, <A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html#isCachingOn">isCachingOn</A>, <A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html#log">log</A>, <A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html#modificationCheckInterval">modificationCheckInterval</A>, <A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html#rsvc">rsvc</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/DataSourceResourceLoader.html#DataSourceResourceLoader()">DataSourceResourceLoader</A></B>()</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->
<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
<B>Method Summary</B></FONT></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;long</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/DataSourceResourceLoader.html#getLastModified(org.apache.velocity.runtime.resource.Resource)">getLastModified</A></B>(<A HREF="../../../../../../org/apache/velocity/runtime/resource/Resource.html" title="class in org.apache.velocity.runtime.resource">Resource</A>&nbsp;resource)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get the last modified time of the InputStream source
that was used to create the template.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/DataSourceResourceLoader.html#getResourceStream(java.lang.String)">getResourceStream</A></B>(<A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;name)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Get an InputStream so that the Runtime can build a
template with it.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/DataSourceResourceLoader.html#init(org.apache.commons.collections.ExtendedProperties)">init</A></B>(<A HREF="http://jakarta.apache.org/commons/collections/api-release/org/apache/commons/collections/ExtendedProperties.html?is-external=true" title="class or interface in org.apache.commons.collections">ExtendedProperties</A>&nbsp;configuration)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Initialize the template loader with a
a resources class.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;boolean</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/DataSourceResourceLoader.html#isSourceModified(org.apache.velocity.runtime.resource.Resource)">isSourceModified</A></B>(<A HREF="../../../../../../org/apache/velocity/runtime/resource/Resource.html" title="class in org.apache.velocity.runtime.resource">Resource</A>&nbsp;resource)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Given a template, check to see if the source of InputStream
has been modified.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/DataSourceResourceLoader.html#setDataSource(javax.sql.DataSource)">setDataSource</A></B>(<A HREF="http://java.sun.com/j2se/1.4.2/docs/api/javax/sql/DataSource.html?is-external=true" title="class or interface in javax.sql">DataSource</A>&nbsp;dataSource)</CODE>
<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Set the DataSource used by this resource loader.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_org.apache.velocity.runtime.resource.loader.ResourceLoader"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class org.apache.velocity.runtime.resource.loader.<A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html" title="class in org.apache.velocity.runtime.resource.loader">ResourceLoader</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html#commonInit(org.apache.velocity.runtime.RuntimeServices, org.apache.commons.collections.ExtendedProperties)">commonInit</A>, <A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html#getClassName()">getClassName</A>, <A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html#getModificationCheckInterval()">getModificationCheckInterval</A>, <A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html#isCachingOn()">isCachingOn</A>, <A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html#resourceExists(java.lang.String)">resourceExists</A>, <A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html#setCachingOn(boolean)">setCachingOn</A>, <A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html#setModificationCheckInterval(long)">setModificationCheckInterval</A></CODE></TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TH ALIGN="left"><B>Methods inherited from class java.lang.<A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</A></B></TH>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html?is-external=true#clone()" title="class or interface in java.lang">clone</A>, <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)" title="class or interface in java.lang">equals</A>, <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html?is-external=true#finalize()" title="class or interface in java.lang">finalize</A>, <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html?is-external=true#getClass()" title="class or interface in java.lang">getClass</A>, <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html?is-external=true#hashCode()" title="class or interface in java.lang">hashCode</A>, <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html?is-external=true#notify()" title="class or interface in java.lang">notify</A>, <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html?is-external=true#notifyAll()" title="class or interface in java.lang">notifyAll</A>, <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html?is-external=true#toString()" title="class or interface in java.lang">toString</A>, <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html?is-external=true#wait()" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html?is-external=true#wait(long)" title="class or interface in java.lang">wait</A>, <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Object.html?is-external=true#wait(long, int)" title="class or interface in java.lang">wait</A></CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="DataSourceResourceLoader()"><!-- --></A><H3>
DataSourceResourceLoader</H3>
<PRE>
public <B>DataSourceResourceLoader</B>()</PRE>
<DL>
</DL>
<!-- ============ METHOD DETAIL ========== -->
<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
<B>Method Detail</B></FONT></TH>
</TR>
</TABLE>
<A NAME="init(org.apache.commons.collections.ExtendedProperties)"><!-- --></A><H3>
init</H3>
<PRE>
public void <B>init</B>(<A HREF="http://jakarta.apache.org/commons/collections/api-release/org/apache/commons/collections/ExtendedProperties.html?is-external=true" title="class or interface in org.apache.commons.collections">ExtendedProperties</A>&nbsp;configuration)</PRE>
<DL>
<DD><B>Description copied from class: <CODE><A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html#init(org.apache.commons.collections.ExtendedProperties)">ResourceLoader</A></CODE></B></DD>
<DD>Initialize the template loader with a
a resources class.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html#init(org.apache.commons.collections.ExtendedProperties)">init</A></CODE> in class <CODE><A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html" title="class in org.apache.velocity.runtime.resource.loader">ResourceLoader</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>See Also:</B><DD><A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html#init(org.apache.commons.collections.ExtendedProperties)"><CODE>ResourceLoader.init(org.apache.commons.collections.ExtendedProperties)</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="setDataSource(javax.sql.DataSource)"><!-- --></A><H3>
setDataSource</H3>
<PRE>
public void <B>setDataSource</B>(<A HREF="http://java.sun.com/j2se/1.4.2/docs/api/javax/sql/DataSource.html?is-external=true" title="class or interface in javax.sql">DataSource</A>&nbsp;dataSource)</PRE>
<DL>
<DD>Set the DataSource used by this resource loader. Call this as an alternative to
specifying the data source name via properties.
<P>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>dataSource</CODE> - The data source for this ResourceLoader.</DL>
</DD>
</DL>
<HR>
<A NAME="isSourceModified(org.apache.velocity.runtime.resource.Resource)"><!-- --></A><H3>
isSourceModified</H3>
<PRE>
public boolean <B>isSourceModified</B>(<A HREF="../../../../../../org/apache/velocity/runtime/resource/Resource.html" title="class in org.apache.velocity.runtime.resource">Resource</A>&nbsp;resource)</PRE>
<DL>
<DD><B>Description copied from class: <CODE><A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html#isSourceModified(org.apache.velocity.runtime.resource.Resource)">ResourceLoader</A></CODE></B></DD>
<DD>Given a template, check to see if the source of InputStream
has been modified.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html#isSourceModified(org.apache.velocity.runtime.resource.Resource)">isSourceModified</A></CODE> in class <CODE><A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html" title="class in org.apache.velocity.runtime.resource.loader">ResourceLoader</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>True if the resource has been modified.<DT><B>See Also:</B><DD><A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html#isSourceModified(org.apache.velocity.runtime.resource.Resource)"><CODE>ResourceLoader.isSourceModified(org.apache.velocity.runtime.resource.Resource)</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="getLastModified(org.apache.velocity.runtime.resource.Resource)"><!-- --></A><H3>
getLastModified</H3>
<PRE>
public long <B>getLastModified</B>(<A HREF="../../../../../../org/apache/velocity/runtime/resource/Resource.html" title="class in org.apache.velocity.runtime.resource">Resource</A>&nbsp;resource)</PRE>
<DL>
<DD><B>Description copied from class: <CODE><A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html#getLastModified(org.apache.velocity.runtime.resource.Resource)">ResourceLoader</A></CODE></B></DD>
<DD>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.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html#getLastModified(org.apache.velocity.runtime.resource.Resource)">getLastModified</A></CODE> in class <CODE><A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html" title="class in org.apache.velocity.runtime.resource.loader">ResourceLoader</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Returns:</B><DD>Time in millis when the resource has been modified.<DT><B>See Also:</B><DD><A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html#getLastModified(org.apache.velocity.runtime.resource.Resource)"><CODE>ResourceLoader.getLastModified(org.apache.velocity.runtime.resource.Resource)</CODE></A></DL>
</DD>
</DL>
<HR>
<A NAME="getResourceStream(java.lang.String)"><!-- --></A><H3>
getResourceStream</H3>
<PRE>
public <A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/io/InputStream.html?is-external=true" title="class or interface in java.io">InputStream</A> <B>getResourceStream</B>(<A HREF="http://java.sun.com/j2se/1.4.2/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</A>&nbsp;name)
throws <A HREF="../../../../../../org/apache/velocity/exception/ResourceNotFoundException.html" title="class in org.apache.velocity.exception">ResourceNotFoundException</A></PRE>
<DL>
<DD>Get an InputStream so that the Runtime can build a
template with it.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html#getResourceStream(java.lang.String)">getResourceStream</A></CODE> in class <CODE><A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ResourceLoader.html" title="class in org.apache.velocity.runtime.resource.loader">ResourceLoader</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>name</CODE> - name of template
<DT><B>Returns:</B><DD>InputStream containing template
<DT><B>Throws:</B>
<DD><CODE><A HREF="../../../../../../org/apache/velocity/exception/ResourceNotFoundException.html" title="class in org.apache.velocity.exception">ResourceNotFoundException</A></CODE></DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<A NAME="navbar_bottom"><!-- --></A>
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
<TR ALIGN="center" VALIGN="top">
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/DataSourceResourceLoader.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
</TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>
<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/ClasspathResourceLoader.html" title="class in org.apache.velocity.runtime.resource.loader"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../../../org/apache/velocity/runtime/resource/loader/FileResourceLoader.html" title="class in org.apache.velocity.runtime.resource.loader"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
<A HREF="../../../../../../index.html?org/apache/velocity/runtime/resource/loader/DataSourceResourceLoader.html" target="_top"><B>FRAMES</B></A> &nbsp;
&nbsp;<A HREF="DataSourceResourceLoader.html" target="_top"><B>NO FRAMES</B></A> &nbsp;
&nbsp;<SCRIPT type="text/javascript">
<!--
if(window==top) {
document.writeln('<A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
}
//-->
</SCRIPT>
<NOSCRIPT>
<A HREF="../../../../../../allclasses-noframe.html"><B>All Classes</B></A>
</NOSCRIPT>
</FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
SUMMARY:&nbsp;NESTED&nbsp;|&nbsp;<A HREF="#fields_inherited_from_class_org.apache.velocity.runtime.resource.loader.ResourceLoader">FIELD</A>&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL:&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<A NAME="skip-navbar_bottom"></A>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<HR>
Copyright &#169; 2000-2008 <a href="http://www.apache.org/">The Apache Software Foundation</a>. All Rights Reserved.
</BODY>
</HTML>