Author: norman
Date: Fri Jan 29 09:29:43 2010
New Revision: 904432
URL: http://svn.apache.org/viewvc?rev=904432&view=rev
Log:
Add ability to load resources from the classpath instead of the file system
(JAMES-803)
Removed:
james/server/trunk/core-function/src/main/java/org/apache/james/util/
james/server/trunk/spring-deployment/src/main/java/org/apache/james/container/spring/adaptor/
Modified:
james/server/trunk/common-util/src/main/java/org/apache/james/util/bayesian/JDBCBayesianAnalyzer.java
james/server/trunk/mailets-function/src/main/java/org/apache/james/transport/mailets/BayesianAnalysis.java
james/server/trunk/mailets-function/src/main/java/org/apache/james/transport/mailets/BayesianAnalysisFeeder.java
james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/BayesianAnalyzerManagement.java
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/integration/JDBCGreylistHandler.java
Modified:
james/server/trunk/common-util/src/main/java/org/apache/james/util/bayesian/JDBCBayesianAnalyzer.java
URL:
http://svn.apache.org/viewvc/james/server/trunk/common-util/src/main/java/org/apache/james/util/bayesian/JDBCBayesianAnalyzer.java?rev=904432&r1=904431&r2=904432&view=diff
==============================================================================
---
james/server/trunk/common-util/src/main/java/org/apache/james/util/bayesian/JDBCBayesianAnalyzer.java
(original)
+++
james/server/trunk/common-util/src/main/java/org/apache/james/util/bayesian/JDBCBayesianAnalyzer.java
Fri Jan 29 09:29:43 2010
@@ -94,6 +94,7 @@
*/
private static long lastDatabaseUpdateTime;
+
/**
* Getter for property sqlFileName.
* @return Value of property sqlFileName.
@@ -364,13 +365,12 @@
* @param file The sqlResources.xml file
* @throws Exception If any error occurs
*/
- public void initSqlQueries(Connection conn, String file) throws Exception {
+ public void initSqlQueries(Connection conn, File sqlFile) throws Exception
{
try {
if (conn.getAutoCommit()) {
conn.setAutoCommit(false);
}
- this.sqlFile = new File(file).getCanonicalFile();
sqlQueries.init(this.sqlFile, JDBCBayesianAnalyzer.class.getName()
, conn, getSqlParameters());
checkTables(conn);
Modified:
james/server/trunk/mailets-function/src/main/java/org/apache/james/transport/mailets/BayesianAnalysis.java
URL:
http://svn.apache.org/viewvc/james/server/trunk/mailets-function/src/main/java/org/apache/james/transport/mailets/BayesianAnalysis.java?rev=904432&r1=904431&r2=904432&view=diff
==============================================================================
---
james/server/trunk/mailets-function/src/main/java/org/apache/james/transport/mailets/BayesianAnalysis.java
(original)
+++
james/server/trunk/mailets-function/src/main/java/org/apache/james/transport/mailets/BayesianAnalysis.java
Fri Jan 29 09:29:43 2010
@@ -35,6 +35,7 @@
import javax.sql.DataSource;
import org.apache.james.services.DataSourceSelector;
+import org.apache.james.services.FileSystem;
import org.apache.james.util.bayesian.JDBCBayesianAnalyzer;
import org.apache.james.util.sql.JDBCUtil;
import org.apache.mailet.Mail;
@@ -156,6 +157,8 @@
private long lastCorpusLoadTime;
private DataSourceSelector selector;
+
+ private FileSystem fs;
/**
* Getter for property maxSize.
@@ -189,6 +192,11 @@
this.selector = selector;
}
+ @Resource(name="filesystem")
+ public void setFileSystem(FileSystem fs) {
+ this.fs = fs;
+ }
+
/**
* Sets lastCorpusLoadTime to System.currentTimeMillis().
*/
@@ -251,7 +259,7 @@
}
try {
- analyzer.initSqlQueries(datasource.getConnection(),
getMailetContext().getAttribute("confDir") + "/sqlResources.xml");
+ analyzer.initSqlQueries(datasource.getConnection(),
fs.getFile("file://conf/sqlResources.xml"));
} catch (Exception e) {
throw new MessagingException("Exception initializing queries", e);
}
Modified:
james/server/trunk/mailets-function/src/main/java/org/apache/james/transport/mailets/BayesianAnalysisFeeder.java
URL:
http://svn.apache.org/viewvc/james/server/trunk/mailets-function/src/main/java/org/apache/james/transport/mailets/BayesianAnalysisFeeder.java?rev=904432&r1=904431&r2=904432&view=diff
==============================================================================
---
james/server/trunk/mailets-function/src/main/java/org/apache/james/transport/mailets/BayesianAnalysisFeeder.java
(original)
+++
james/server/trunk/mailets-function/src/main/java/org/apache/james/transport/mailets/BayesianAnalysisFeeder.java
Fri Jan 29 09:29:43 2010
@@ -34,6 +34,7 @@
import javax.sql.DataSource;
import org.apache.james.services.DataSourceSelector;
+import org.apache.james.services.FileSystem;
import org.apache.james.util.bayesian.JDBCBayesianAnalyzer;
import org.apache.james.util.sql.JDBCUtil;
import org.apache.mailet.Mail;
@@ -144,6 +145,8 @@
private int maxSize = 100000;
private DataSourceSelector selector;
+
+ private FileSystem fs;
/**
* Getter for property maxSize.
@@ -169,6 +172,11 @@
this.maxSize = maxSize;
}
+ @Resource(name="filesystem")
+ public void setFileSystem(FileSystem fs) {
+ this.fs = fs;
+ }
+
/**
* Mailet initialization routine.
* @throws MessagingException if a problem arises
@@ -209,7 +217,7 @@
}
try {
- analyzer.initSqlQueries(datasource.getConnection(),
getMailetContext().getAttribute("confDir") + "/sqlResources.xml");
+ analyzer.initSqlQueries(datasource.getConnection(),
fs.getFile("file://conf/sqlResources.xml"));
} catch (Exception e) {
throw new MessagingException("Exception initializing queries", e);
}
Modified:
james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/BayesianAnalyzerManagement.java
URL:
http://svn.apache.org/viewvc/james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/BayesianAnalyzerManagement.java?rev=904432&r1=904431&r2=904432&view=diff
==============================================================================
---
james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/BayesianAnalyzerManagement.java
(original)
+++
james/server/trunk/management-library/src/main/java/org/apache/james/management/impl/BayesianAnalyzerManagement.java
Fri Jan 29 09:29:43 2010
@@ -41,7 +41,6 @@
import org.apache.commons.configuration.ConfigurationException;
import org.apache.commons.configuration.HierarchicalConfiguration;
-import org.apache.commons.logging.Log;
import org.apache.james.lifecycle.Configurable;
import org.apache.james.management.BayesianAnalyzerManagementException;
import org.apache.james.management.BayesianAnalyzerManagementMBean;
@@ -82,7 +81,7 @@
if (repos != null) {
setDataSource(selector.getDataSource(repos));
File sqlFile = fileSystem.getFile(sqlFileUrl);
- analyzer.initSqlQueries(component.getConnection(),
sqlFile.getAbsolutePath());
+ analyzer.initSqlQueries(component.getConnection(), sqlFile);
}
}
Modified:
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/integration/JDBCGreylistHandler.java
URL:
http://svn.apache.org/viewvc/james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/integration/JDBCGreylistHandler.java?rev=904432&r1=904431&r2=904432&view=diff
==============================================================================
---
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/integration/JDBCGreylistHandler.java
(original)
+++
james/server/trunk/smtpserver-function/src/main/java/org/apache/james/smtpserver/integration/JDBCGreylistHandler.java
Fri Jan 29 09:29:43 2010
@@ -249,7 +249,7 @@
setSqlFileUrl(sFile);
- if (!sqlFileUrl.startsWith("file://")) {
+ if (!sqlFileUrl.startsWith("file://") &&
!sqlFileUrl.startsWith("classpath://")) {
throw new ConfigurationException(
"Malformed sqlFile - Must be of the format
\"file://<filename>\".");
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]