diff -r 55cd0ce718c6 apisupport.refactoring/nbproject/project.xml
--- a/apisupport.refactoring/nbproject/project.xml Fri Mar 27 08:43:46 2009 +0100
+++ b/apisupport.refactoring/nbproject/project.xml Wed Apr 01 17:49:34 2009 +0200
@@ -112,7 +112,7 @@
1
- 1.22
+ 1.34
diff -r 55cd0ce718c6 apisupport.refactoring/src/org/netbeans/modules/apisupport/refactoring/RetoucheUtils.java
--- a/apisupport.refactoring/src/org/netbeans/modules/apisupport/refactoring/RetoucheUtils.java Fri Mar 27 08:43:46 2009 +0100
+++ b/apisupport.refactoring/src/org/netbeans/modules/apisupport/refactoring/RetoucheUtils.java Wed Apr 01 17:49:34 2009 +0200
@@ -201,13 +201,7 @@
public static boolean isFileInOpenProject(FileObject file) {
assert file != null;
Project p = FileOwnerQuery.getOwner(file);
- Project[] opened = OpenProjects.getDefault().getOpenProjects();
- for (int i = 0; i1
- 1.33
+ 1.34
diff -r 55cd0ce718c6 cnd.refactoring/src/org/netbeans/modules/cnd/refactoring/support/CsmRefactoringUtils.java
--- a/cnd.refactoring/src/org/netbeans/modules/cnd/refactoring/support/CsmRefactoringUtils.java Fri Mar 27 08:43:46 2009 +0100
+++ b/cnd.refactoring/src/org/netbeans/modules/cnd/refactoring/support/CsmRefactoringUtils.java Wed Apr 01 17:49:34 2009 +0200
@@ -89,13 +89,7 @@
return false;
}
Project p = FileOwnerQuery.getOwner(f);
- Project[] opened = OpenProjects.getDefault().getOpenProjects();
- for (int i = 0; i < opened.length; i++) {
- if (p.equals(opened[i]) || opened[i].equals(p)) {
- return true;
- }
- }
- return false;
+ return OpenProjects.getDefault().isProjectOpen(p);
}
public static boolean isRefactorable(FileObject fo) {
diff -r 55cd0ce718c6 groovy.refactoring/nbproject/project.xml
--- a/groovy.refactoring/nbproject/project.xml Fri Mar 27 08:43:46 2009 +0100
+++ b/groovy.refactoring/nbproject/project.xml Wed Apr 01 17:49:34 2009 +0200
@@ -20,6 +20,15 @@
0.7
+
+
+
+ org.netbeans.modules.csl.api
+
+
+
+ 0-1
+ 1.8
@@ -49,23 +58,6 @@
- org.netbeans.modules.csl.api
-
-
-
- 0-1
- 1.8
-
-
-
- org.netbeans.modules.parsing.api
-
-
-
- 1.0
-
-
- org.netbeans.modules.java.project
@@ -92,6 +84,14 @@
+ org.netbeans.modules.parsing.api
+
+
+
+ 1.0
+
+
+ org.netbeans.modules.projectapi
@@ -106,7 +106,7 @@
1
- 1.31
+ 1.34
diff -r 55cd0ce718c6 groovy.refactoring/src/org/netbeans/modules/groovy/refactoring/RefactoringUtil.java
--- a/groovy.refactoring/src/org/netbeans/modules/groovy/refactoring/RefactoringUtil.java Fri Mar 27 08:43:46 2009 +0100
+++ b/groovy.refactoring/src/org/netbeans/modules/groovy/refactoring/RefactoringUtil.java Wed Apr 01 17:49:34 2009 +0200
@@ -142,17 +142,14 @@
public static boolean isOnSourceClasspath(FileObject fo) {
Project p = FileOwnerQuery.getOwner(fo);
if (p==null) return false;
- Project[] opened = OpenProjects.getDefault().getOpenProjects();
- for (int i = 0; i {
+ ProjectState s;
+
+ public Project run() throws IOException {
+ for (ProjectFactory pf : Lookup.getDefault().lookupAll(ProjectFactory.class)) {
+ Project p = pf.loadProject(getProjectDirectory(), s);
+ if (p != null) {
+ return p;
+ }
+ }
+ return null;
+ }
+ }
+ FindProject findProject = new FindProject();
+ findProject.s = s;
+ Project p = ProjectManager.mutex().readAccess(findProject);
if (p == FeatureNonProject.this) {
throw new IllegalStateException("New project shall be found! " + p); // NOI18N
}
diff -r 55cd0ce718c6 j2ee.jpa.refactoring/nbproject/project.xml
--- a/j2ee.jpa.refactoring/nbproject/project.xml Fri Mar 27 08:43:46 2009 +0100
+++ b/j2ee.jpa.refactoring/nbproject/project.xml Wed Apr 01 17:49:34 2009 +0200
@@ -107,7 +107,7 @@
1
- 1.24
+ 1.34
diff -r 55cd0ce718c6 j2ee.jpa.refactoring/src/org/netbeans/modules/j2ee/jpa/refactoring/RefactoringUtil.java
--- a/j2ee.jpa.refactoring/src/org/netbeans/modules/j2ee/jpa/refactoring/RefactoringUtil.java Fri Mar 27 08:43:46 2009 +0100
+++ b/j2ee.jpa.refactoring/src/org/netbeans/modules/j2ee/jpa/refactoring/RefactoringUtil.java Wed Apr 01 17:49:34 2009 +0200
@@ -129,17 +129,14 @@
public static boolean isOnSourceClasspath(FileObject fo) {
Project p = FileOwnerQuery.getOwner(fo);
if (p==null) return false;
- Project[] opened = OpenProjects.getDefault().getOpenProjects();
- for (int i = 0; i1
- 1.30
+ 1.34
diff -r 55cd0ce718c6 php.refactoring/src/org/netbeans/modules/refactoring/php/findusages/RefactoringUtils.java
--- a/php.refactoring/src/org/netbeans/modules/refactoring/php/findusages/RefactoringUtils.java Fri Mar 27 08:43:46 2009 +0100
+++ b/php.refactoring/src/org/netbeans/modules/refactoring/php/findusages/RefactoringUtils.java Wed Apr 01 17:49:34 2009 +0200
@@ -227,13 +227,7 @@
public static boolean isFileInOpenProject(FileObject file) {
assert file != null;
Project p = FileOwnerQuery.getOwner(file);
- Project[] opened = OpenProjects.getDefault().getOpenProjects();
- for (int i = 0; i < opened.length; i++) {
- if (p.equals(opened[i]) || opened[i].equals(p)) {
- return true;
- }
- }
- return false;
+ return OpenProjects.getDefault().isProjectOpen(p);
}
public static boolean isOnSourceClasspath(FileObject fo) {
diff -r 55cd0ce718c6 projectui/test/unit/src/org/netbeans/modules/project/ui/OpenProjectListDuplicatesTest.java
--- a/projectui/test/unit/src/org/netbeans/modules/project/ui/OpenProjectListDuplicatesTest.java Fri Mar 27 08:43:46 2009 +0100
+++ b/projectui/test/unit/src/org/netbeans/modules/project/ui/OpenProjectListDuplicatesTest.java Wed Apr 01 17:49:34 2009 +0200
@@ -114,10 +114,16 @@
}
LOG.info("Before first open");
- OpenProjects.getDefault().open(new Project[] { new Fake() }, false);
+ Fake f = new Fake();
+ assertFalse("null is not open", OpenProjects.getDefault().isProjectOpen(null));
+ OpenProjects.getDefault().open(new Project[] { f }, false);
+ assertTrue("Fake is open", OpenProjects.getDefault().isProjectOpen(f));
+ assertTrue("Fake is open, but real one is reported open too", OpenProjects.getDefault().isProjectOpen(p));
LOG.info("After first and Before 2nd open");
OpenProjects.getDefault().open(new Project[] { p }, false);
LOG.info("After 2nd open");
+ assertTrue("Real one is open", OpenProjects.getDefault().isProjectOpen(p));
+ assertTrue("Fake is open too", OpenProjects.getDefault().isProjectOpen(f));
List arr = Arrays.asList(OpenProjects.getDefault().openProjects().get());
@@ -129,6 +135,8 @@
if (OpenProjects.getDefault().getOpenProjects().length != 0) {
fail("All projects shall be closed: " + Arrays.asList(OpenProjects.getDefault().getOpenProjects()));
}
+ assertFalse("No project is opened", OpenProjects.getDefault().isProjectOpen(p));
+ assertFalse("No project is opened", OpenProjects.getDefault().isProjectOpen(f));
assertEquals("Close hook called", 1, TestProjectOpenedHookImpl.closed);
}
diff -r 55cd0ce718c6 projectuiapi/apichanges.xml
--- a/projectuiapi/apichanges.xml Fri Mar 27 08:43:46 2009 +0100
+++ b/projectuiapi/apichanges.xml Wed Apr 01 17:49:34 2009 +0200
@@ -104,6 +104,23 @@
+
+
+ Utility method OpenProjects.isProjectOpen
+
+
+
+
+
+
+ It came to our attention that often users of OpenProjects
+ want to find out if their project is opened or not. To simplify
+ such code we offer a handy utility method.
+