Index: ModuleManager.java =================================================================== RCS file: /cvs/core/src/org/netbeans/core/modules/ModuleManager.java,v retrieving revision 1.17 diff -u -r1.17 ModuleManager.java --- ModuleManager.java 15 Nov 2001 11:46:03 -0000 1.17 +++ ModuleManager.java 5 Aug 2002 15:38:53 -0000 @@ -23,8 +23,9 @@ import java.beans.PropertyChangeListener; import java.beans.PropertyChangeEvent; import java.io.IOException; -import java.io.File; +import java.io.*; import org.openide.util.*; +import org.openide.util.actions.SystemAction; import org.openide.modules.ModuleInfo; import java.net.URL; import java.util.jar.Manifest; @@ -483,6 +484,7 @@ ev.log(Events.PERF_TICK, "prepared " + m.getCodeName() ); // NOI18N } ev.log(Events.PERF_END, "module preparation" ); // NOI18N + } catch (InvalidException ie) { // Remember that there was a problem with this guy. @@ -530,9 +532,10 @@ nueclassloaders.add(((Module)teIt.next()).getClassLoader()); } classLoader.append((ClassLoader[])(nueclassloaders.toArray(new ClassLoader[nueclassloaders.size()]))); - } else { + } else { // Can't happen? Util.err.log("enable: no class loader yet, not appending"); } +loadActions(); Util.err.log("enable: continuing to installation"); installer.load(toEnable); } @@ -552,7 +555,31 @@ } ev.log(Events.FINISH_ENABLE_MODULES, modules); } - + +void loadActions() { + try { + System.err.println("Start forced action loading"); + List l = new ArrayList(); + BufferedReader br = new BufferedReader( new FileReader("/tmp/actions.list")); + String line; + while ((line = br.readLine()) != null) l.add(line); + br.close(); + + ClassLoader cl = getClassLoader(); + long time = System.currentTimeMillis(); + Iterator it = l.iterator(); + while(it.hasNext()) { + String name = (String)it.next(); + Class cls = cl.loadClass(name); + SystemAction sa = SystemAction.get(cls); + } + time = System.currentTimeMillis() - time; + + System.err.println("Done forced action loading, took " + time + "ms"); + } catch (Exception e) { + e.printStackTrace(); + } +} /** Disable a set of modules together. * Must not be required by any enabled * modules (except one another).