diff -r e71a52521e19 core.startup/test/unit/src/org/netbeans/core/startup/ModuleListTest.java
--- a/core.startup/test/unit/src/org/netbeans/core/startup/ModuleListTest.java Mon Feb 04 00:16:53 2013 +0100
+++ b/core.startup/test/unit/src/org/netbeans/core/startup/ModuleListTest.java Mon Feb 04 10:29:17 2013 +0100
@@ -71,6 +71,7 @@
import org.openide.filesystems.FileUtil;
import org.openide.filesystems.LocalFileSystem;
import org.openide.modules.InstalledFileLocator;
+import org.openide.modules.ModuleInfo;
import org.openide.modules.Places;
import org.openide.modules.api.PlacesTestUtils;
import org.openide.util.test.MockLookup;
@@ -184,7 +185,7 @@
assertFile(new File(data, "org-bar_disabled.xml"), FileUtil.toFile(bar));
// Check that changes in disk are parsed and applied (#13921)
LoggedPCListener listener2 = new LoggedPCListener();
- Module m1 = mgr.get("org.foo");
+ ModuleInfo m1 = mgr.findCodeNameBase("org.foo");
m1.addPropertyChangeListener(listener2);
copy(new File(data, "org-foo.xml"), foo);
/* Does not seem to refresh reliably enough:
diff -r e71a52521e19 o.n.bootstrap/manifest.mf
--- a/o.n.bootstrap/manifest.mf Mon Feb 04 00:16:53 2013 +0100
+++ b/o.n.bootstrap/manifest.mf Mon Feb 04 10:29:17 2013 +0100
@@ -1,6 +1,6 @@
Manifest-Version: 1.0
OpenIDE-Module: org.netbeans.bootstrap/1
-OpenIDE-Module-Specification-Version: 2.57
+OpenIDE-Module-Specification-Version: 2.58
OpenIDE-Module-Localizing-Bundle: org/netbeans/Bundle.properties
OpenIDE-Module-Recommends: org.netbeans.NetigsoFramework
diff -r e71a52521e19 o.n.bootstrap/nbproject/project.xml
--- a/o.n.bootstrap/nbproject/project.xml Mon Feb 04 00:16:53 2013 +0100
+++ b/o.n.bootstrap/nbproject/project.xml Mon Feb 04 10:29:17 2013 +0100
@@ -54,7 +54,7 @@
- 7.30
+ 7.37
diff -r e71a52521e19 o.n.bootstrap/src/org/netbeans/ModuleManager.java
--- a/o.n.bootstrap/src/org/netbeans/ModuleManager.java Mon Feb 04 00:16:53 2013 +0100
+++ b/o.n.bootstrap/src/org/netbeans/ModuleManager.java Mon Feb 04 10:29:17 2013 +0100
@@ -77,11 +77,8 @@
import java.util.TreeSet;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.Future;
-import java.util.concurrent.TimeUnit;
-import java.util.concurrent.TimeoutException;
import java.util.jar.Manifest;
import java.util.logging.Level;
-import org.openide.LifecycleManager;
import org.openide.modules.Dependency;
import org.openide.modules.ModuleInfo;
import org.openide.modules.Modules;
@@ -353,6 +350,11 @@
return modulesByName.get(codeNameBase);
}
+ @Override
+ public ModuleInfo findCodeNameBase(String cnb) {
+ return get(cnb);
+ }
+
public @Override ModuleInfo ownerOf(Class> clazz) {
ClassLoader cl = clazz.getClassLoader();
if (cl instanceof Util.ModuleProvider) {
diff -r e71a52521e19 openide.modules/manifest.mf
--- a/openide.modules/manifest.mf Mon Feb 04 00:16:53 2013 +0100
+++ b/openide.modules/manifest.mf Mon Feb 04 10:29:17 2013 +0100
@@ -1,5 +1,5 @@
Manifest-Version: 1.0
OpenIDE-Module: org.openide.modules
OpenIDE-Module-Localizing-Bundle: org/openide/modules/Bundle.properties
-OpenIDE-Module-Specification-Version: 7.36
+OpenIDE-Module-Specification-Version: 7.37
diff -r e71a52521e19 openide.modules/src/org/openide/modules/Modules.java
--- a/openide.modules/src/org/openide/modules/Modules.java Mon Feb 04 00:16:53 2013 +0100
+++ b/openide.modules/src/org/openide/modules/Modules.java Mon Feb 04 10:29:17 2013 +0100
@@ -48,7 +48,11 @@
* Information about the set of available {@linkplain ModuleInfo modules}.
* @since org.openide.modules 7.19
*/
-public abstract class Modules {
+public class Modules {
+ /**
+ * Constructor for subclasses.
+ */
+ protected Modules() {}
/**
* Gets the singleton set of modules.
@@ -59,15 +63,25 @@
public static Modules getDefault() {
Modules impl = Lookup.getDefault().lookup(Modules.class);
if (impl == null) {
- impl = new Trivial();
+ impl = new Modules();
}
return impl;
}
- /**
- * Constructor for subclasses.
+ /* Finds a module with given code name base.
+ * @param cnb the {@link ModuleInfo#getCodeNameBase() code name base} of a module
+ * @return the found module or null
, if such module is not known
+ * to the system
+ * @since 7.37
*/
- protected Modules() {}
+ public ModuleInfo findCodeNameBase(String cnb) {
+ for (ModuleInfo module : Lookup.getDefault().lookupAll(ModuleInfo.class)) {
+ if (cnb.equals(module.getCodeNameBase())) {
+ return module;
+ }
+ }
+ return null;
+ }
/**
* Finds the module which loaded a class.
@@ -75,19 +89,12 @@
* @return the owner of the class, or null if it is not owned by any module
* @see ModuleInfo#owns
*/
- public abstract ModuleInfo ownerOf(Class> clazz);
-
- private static class Trivial extends Modules {
-
- public @Override ModuleInfo ownerOf(Class> clazz) {
- for (ModuleInfo module : Lookup.getDefault().lookupAll(ModuleInfo.class)) {
- if (module.owns(clazz)) {
- return module;
- }
+ public ModuleInfo ownerOf(Class> clazz) {
+ for (ModuleInfo module : Lookup.getDefault().lookupAll(ModuleInfo.class)) {
+ if (module.owns(clazz)) {
+ return module;
}
- return null;
}
-
+ return null;
}
-
}