Author: bago
Date: Wed Jan 4 08:56:41 2006
New Revision: 365943
URL: http://svn.apache.org/viewcvs?rev=365943&view=rev
Log:
Removed custom classloader for matcher/mailet loader. Now the container should
already provide a complete classloader (JAMES-418).
Modified:
james/server/trunk/src/java/org/apache/james/transport/JamesMailetLoader.java
james/server/trunk/src/java/org/apache/james/transport/JamesMatcherLoader.java
james/server/trunk/src/java/org/apache/james/transport/Loader.java
Modified:
james/server/trunk/src/java/org/apache/james/transport/JamesMailetLoader.java
URL:
http://svn.apache.org/viewcvs/james/server/trunk/src/java/org/apache/james/transport/JamesMailetLoader.java?rev=365943&r1=365942&r2=365943&view=diff
==============================================================================
---
james/server/trunk/src/java/org/apache/james/transport/JamesMailetLoader.java
(original)
+++
james/server/trunk/src/java/org/apache/james/transport/JamesMailetLoader.java
Wed Jan 4 08:56:41 2006
@@ -14,7 +14,6 @@
* implied. See the License for the specific language governing *
* permissions and limitations under the License. *
***********************************************************************/
-
package org.apache.james.transport;
import javax.mail.MessagingException;
@@ -33,12 +32,12 @@
* @see
org.apache.avalon.framework.configuration.Configurable#configure(Configuration)
*/
public void configure(Configuration conf) throws ConfigurationException {
- getPackages(conf,MAILET_PACKAGE);
- configureMailetClassLoader();
+ getPackages(conf,MAILET_PACKAGE);
}
- /* (non-Javadoc)
- * @see
org.apache.james.transport.MailetLoader#getMailet(java.lang.String,
org.apache.avalon.framework.configuration.Configuration)
- */
+
+ /**
+ * @see org.apache.james.services.MailetLoader#getMailet(java.lang.String,
org.apache.avalon.framework.configuration.Configuration)
+ */
public Mailet getMailet(String mailetName, Configuration configuration)
throws MessagingException {
try {
@@ -49,7 +48,7 @@
configImpl.setMailetName(mailetName);
configImpl.setConfiguration(configuration);
configImpl.setMailetContext(mailetContext);
- Mailet mailet = (Mailet)
mailetClassLoader.loadClass(className).newInstance();
+ Mailet mailet = (Mailet)
Thread.currentThread().getContextClassLoader().loadClass(className).newInstance();
mailet.init(configImpl);
return mailet;
} catch (ClassNotFoundException cnfe) {
Modified:
james/server/trunk/src/java/org/apache/james/transport/JamesMatcherLoader.java
URL:
http://svn.apache.org/viewcvs/james/server/trunk/src/java/org/apache/james/transport/JamesMatcherLoader.java?rev=365943&r1=365942&r2=365943&view=diff
==============================================================================
---
james/server/trunk/src/java/org/apache/james/transport/JamesMatcherLoader.java
(original)
+++
james/server/trunk/src/java/org/apache/james/transport/JamesMatcherLoader.java
Wed Jan 4 08:56:41 2006
@@ -34,7 +34,6 @@
*/
public void configure(Configuration conf) throws ConfigurationException {
getPackages(conf,MATCHER_PACKAGE);
- configureMailetClassLoader();
}
/* (non-Javadoc)
@@ -55,7 +54,7 @@
configImpl.setMatcherName(matchName);
configImpl.setCondition(condition);
configImpl.setMailetContext(mailetContext);
- Matcher matcher = (Matcher)
mailetClassLoader.loadClass(className).newInstance();
+ Matcher matcher = (Matcher)
Thread.currentThread().getContextClassLoader().loadClass(className).newInstance();
matcher.init(configImpl);
return matcher;
} catch (ClassNotFoundException cnfe) {
Modified: james/server/trunk/src/java/org/apache/james/transport/Loader.java
URL:
http://svn.apache.org/viewcvs/james/server/trunk/src/java/org/apache/james/transport/Loader.java?rev=365943&r1=365942&r2=365943&view=diff
==============================================================================
--- james/server/trunk/src/java/org/apache/james/transport/Loader.java
(original)
+++ james/server/trunk/src/java/org/apache/james/transport/Loader.java Wed Jan
4 08:56:41 2006
@@ -14,12 +14,8 @@
* implied. See the License for the specific language governing *
* permissions and limitations under the License. *
***********************************************************************/
-
package org.apache.james.transport;
import java.io.File;
-import java.net.MalformedURLException;
-import java.net.URL;
-import java.net.URLClassLoader;
import java.util.Vector;
import org.apache.avalon.framework.activity.Initializable;
@@ -41,7 +37,7 @@
* $Id$
*/
public abstract class Loader extends AbstractLogEnabled implements
Contextualizable, Serviceable, Configurable, Initializable {
- protected ClassLoader mailetClassLoader = null;
+
protected String baseDirectory = null;
protected final String MAILET_PACKAGE = "mailetpackage";
protected final String MATCHER_PACKAGE = "matcherpackage";
@@ -89,38 +85,6 @@
}
packages.addElement(packageName);
}
- }
- /**
- * Method getMailetClassLoader.
- */
- protected void configureMailetClassLoader() {
- File base = new File(baseDirectory + "/SAR-INF/lib");
- String[] flist = base.list();
- Vector jarlist = new Vector();
- URL[] classPath = null;
- try {
- jarlist.add(new URL("file:///" + baseDirectory +
"/SAR-INF/classes/"));
- } catch (MalformedURLException e) {
- getLogger().error(
- "can't add "
- + "file:///"
- + baseDirectory
- + "/SAR-INF/classes/ to mailet classloader");
- }
- if (flist != null) {
- for (int i = 0; i < flist.length; i++) {
- try {
- if (flist[i].indexOf("jar") == flist[i].length() - 3) {
- jarlist.add(new URL("file:///" + baseDirectory
+"/SAR-INF/lib/"+ flist[i]));
- getLogger().debug("added file:///" + baseDirectory
+"/SAR-INF/lib/" + flist[i] + " to mailet Classloader");
- }
- } catch (MalformedURLException e) {
- getLogger().error("can't add file:///" + baseDirectory
+"/SAR-INF/lib/"+ flist[i] + " to mailet classloader");
- }
- }
- }
- classPath = (URL[]) jarlist.toArray(new URL[jarlist.size()]);
- mailetClassLoader = new URLClassLoader(classPath,
this.getClass().getClassLoader());
}
/**
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]