[Yanel-commits] rev 40104 -
public/yanel/trunk/src/core/java/org/wyona/yanel/core/source
michi at wyona.com
michi at wyona.com
Mon Nov 24 12:29:04 CET 2008
Author: michi
Date: 2008-11-24 12:29:03 +0100 (Mon, 24 Nov 2008)
New Revision: 40104
Modified:
public/yanel/trunk/src/core/java/org/wyona/yanel/core/source/RTYanelHtdocsResolver.java
Log:
return YanelStreamSource whereas last modified has been set
Modified: public/yanel/trunk/src/core/java/org/wyona/yanel/core/source/RTYanelHtdocsResolver.java
===================================================================
--- public/yanel/trunk/src/core/java/org/wyona/yanel/core/source/RTYanelHtdocsResolver.java 2008-11-24 11:28:53 UTC (rev 40103)
+++ public/yanel/trunk/src/core/java/org/wyona/yanel/core/source/RTYanelHtdocsResolver.java 2008-11-24 11:29:03 UTC (rev 40104)
@@ -2,6 +2,8 @@
import java.io.File;
import java.io.InputStream;
+import java.net.URL;
+import java.net.URLConnection;
import javax.xml.transform.Source;
import javax.xml.transform.URIResolver;
@@ -54,18 +56,25 @@
if (log.isDebugEnabled()) {
log.debug("Package: " + packageName);
}
- java.net.URL url = resource.getClass().getClassLoader().getResource(packageName.replace('.','/') + "/yanel-htdocs" + path);
+ URL url = resource.getClass().getClassLoader().getResource(packageName.replace('.','/') + "/yanel-htdocs" + path);
if (url == null) {
log.info("Path " + path + " does not seem to be contained within package " + packageName + " of resource " + resource.getResourceTypeUniversalName());
}
- return new StreamSource(url.openStream());
+ InputStream in = url.openStream();
+ YanelStreamSource source = new YanelStreamSource(in);
+ URLConnection uc = url.openConnection();
+ long resourceLastModifier = uc.getLastModified();
+ source.setLastModified(resourceLastModifier);
+ return source;
} catch (Exception e) {
File resourceConfigDir = resource.getRTD().getConfigFile().getParentFile();
log.info("Fallback to resource config location: " + resourceConfigDir);
try {
File resourceFile = new File(resourceConfigDir.getAbsolutePath() + "/yanel-htdocs" + path.replace('/', File.separatorChar));
InputStream in = new java.io.FileInputStream(resourceFile);
- return new StreamSource(in);
+ YanelStreamSource source = new YanelStreamSource(in);
+ source.setLastModified(resourceFile.lastModified());
+ return source;
} catch (Exception ex) {
String errorMsg = "Could not resolve URI: " + path + " (" + e.toString() + ", " + resourceConfigDir + ")";
log.error(errorMsg, e);
More information about the Yanel-commits
mailing list