You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by mt...@apache.org on 2009/09/22 19:48:32 UTC
svn commit: r817744 -
/commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/Loader.java
Author: mturk
Date: Tue Sep 22 17:48:32 2009
New Revision: 817744
URL: http://svn.apache.org/viewvc?rev=817744&view=rev
Log:
Load module only if initialized already
Modified:
commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/Loader.java
Modified: commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/Loader.java
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/Loader.java?rev=817744&r1=817743&r2=817744&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/Loader.java (original)
+++ commons/sandbox/runtime/trunk/src/main/java/org/apache/commons/runtime/Loader.java Tue Sep 22 17:48:32 2009
@@ -151,7 +151,7 @@
boolean s = Library.load(Properties.NATIVE_LIBS[i]);
if (i == (Properties.NATIVE_LIBS.length - 1)) {
/* Record the result of the last entry in the
- * list of the libraries
+ * library dependency list (library itself).
*/
rc = s;
}
@@ -173,26 +173,39 @@
public static boolean load(String module)
throws UnsupportedOperatingSystemException
{
+ if (!isLoaded) {
+ /* Cannot load module if main library wasn't initialized.
+ */
+ return false;
+ }
if (mods.containsKey(module))
return true;
+ byte cnt = 0;
boolean rc = false;
String [] md = Properties.getArray("library.load." + module, null);
- if (md != null) {
+ if (md == null) {
+ /* Not listed inside .properties file
+ */
+ rc = Library.load(module);
+ cnt++;
+ }
+ else {
for (int i = 0; i < md.length; i++) {
boolean s = Library.load(md[i]);
if (i == (md.length - 1)) {
/* Record the result of the last entry in the
- * list of the libraries
+ * module dependency list (module itself).
*/
rc = s;
}
+ cnt++;
}
}
if (rc) {
/* Add the module to the list of loaded modules.
*/
- mods.put(module, null);
+ mods.put(module, new Byte(cnt));
return true;
}
else