1
2
3
4
5
6
7
8
9
10
11 package org.mule.module.reboot;
12
13 import java.net.URL;
14 import java.net.URLClassLoader;
15 import java.util.List;
16
17 import org.apache.commons.logging.Log;
18 import org.apache.commons.logging.LogFactory;
19
20
21
22
23 public class MuleContainerSystemClassLoader extends URLClassLoader
24 {
25
26 protected transient Log logger = LogFactory.getLog(getClass());
27
28 public MuleContainerSystemClassLoader()
29 {
30 super(new URL[0]);
31 try
32 {
33 DefaultMuleClassPathConfig classPath = new DefaultMuleClassPathConfig(MuleContainerBootstrap.lookupMuleHome(),
34 MuleContainerBootstrap.lookupMuleBase());
35 @SuppressWarnings("unchecked")
36 final List<URL> urlsList = classPath.getURLs();
37 for (URL url : urlsList)
38 {
39 addURL(url);
40 }
41 }
42 catch (Exception e)
43 {
44 if (logger.isDebugEnabled())
45 {
46 logger.debug(e);
47 }
48 }
49 }
50 }