Index: java/j2seproject/build.xml
===================================================================
RCS file: /cvs/java/j2seproject/build.xml,v
retrieving revision 1.3
diff -u -r1.3 build.xml
--- java/j2seproject/build.xml 12 May 2004 16:05:17 -0000 1.3
+++ java/j2seproject/build.xml 17 Aug 2004 13:38:39 -0000
@@ -21,7 +21,7 @@
-
+
Index: java/j2seproject/nbproject/project.xml
===================================================================
RCS file: /cvs/java/j2seproject/nbproject/project.xml,v
retrieving revision 1.10
diff -u -r1.10 project.xml
--- java/j2seproject/nbproject/project.xml 15 Jun 2004 11:38:13 -0000 1.10
+++ java/j2seproject/nbproject/project.xml 17 Aug 2004 13:38:39 -0000
@@ -140,6 +140,15 @@
+
+ org.openidex.util
+
+
+
+ 3
+ 3.3
+
+
Index: java/j2seproject/src/org/netbeans/modules/java/j2seproject/ui/J2SEPhysicalViewProvider.java
===================================================================
RCS file: /cvs/java/j2seproject/src/org/netbeans/modules/java/j2seproject/ui/J2SEPhysicalViewProvider.java,v
retrieving revision 1.24
diff -u -r1.24 J2SEPhysicalViewProvider.java
--- java/j2seproject/src/org/netbeans/modules/java/j2seproject/ui/J2SEPhysicalViewProvider.java 24 Jun 2004 20:04:19 -0000 1.24
+++ java/j2seproject/src/org/netbeans/modules/java/j2seproject/ui/J2SEPhysicalViewProvider.java 17 Aug 2004 13:38:39 -0000
@@ -37,6 +37,8 @@
import javax.swing.Action;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
+import org.openidex.search.DelegatingSearchInfo;
+import org.openidex.search.SearchInfoFactory;
import org.netbeans.api.java.project.JavaProjectConstants;
import org.netbeans.api.project.FileOwnerQuery;
import org.netbeans.api.project.Project;
@@ -166,7 +168,14 @@
private boolean broken;
public J2SELogicalViewRootNode() {
- super( new LogicalViewChildren( project ), Lookups.singleton(project));
+ this( new DelegatingSearchInfo());
+ }
+
+ private J2SELogicalViewRootNode(DelegatingSearchInfo searchInfo) {
+ super( new LogicalViewChildren( project ),
+ Lookups.fixed( new Object[] { project, searchInfo } ));
+ searchInfo.setDelegate( SearchInfoFactory
+ .createSearchInfoBySubnodes( this ) );
setIconBase( "org/netbeans/modules/java/j2seproject/ui/resources/j2seProject" ); // NOI18N
setName( ProjectUtils.getInformation( project ).getDisplayName() );
if (hasBrokenLinks(helper, resolver)) {
Index: java/project/nbproject/project.xml
===================================================================
RCS file: /cvs/java/project/nbproject/project.xml,v
retrieving revision 1.14
diff -u -r1.14 project.xml
--- java/project/nbproject/project.xml 4 Aug 2004 10:13:38 -0000 1.14
+++ java/project/nbproject/project.xml 17 Aug 2004 13:38:40 -0000
@@ -86,7 +86,7 @@
3
- 3.2
+ 3.3
Index: java/project/src/org/netbeans/spi/java/project/support/ui/PackageRootNode.java
===================================================================
RCS file: /cvs/java/project/src/org/netbeans/spi/java/project/support/ui/PackageRootNode.java,v
retrieving revision 1.7
diff -u -r1.7 PackageRootNode.java
--- java/project/src/org/netbeans/spi/java/project/support/ui/PackageRootNode.java 12 Aug 2004 10:45:19 -0000 1.7
+++ java/project/src/org/netbeans/spi/java/project/support/ui/PackageRootNode.java 17 Aug 2004 13:38:40 -0000
@@ -40,6 +40,7 @@
import org.openide.util.Lookup;
import org.openide.util.Utilities;
import org.openide.util.lookup.Lookups;
+import org.openidex.search.SearchInfoFactory;
/** Node displaying a packages in given SourceGroup
@@ -169,7 +170,12 @@
// XXX Remove DataFolder when paste, find and refresh are reimplemented
FileObject rootFolder = group.getRootFolder();
DataFolder dataFolder = DataFolder.findFolder( rootFolder );
- return Lookups.fixed( new Object[]{ dataFolder, new PathFinder( group ) } );
+ return Lookups.fixed( new Object[]{ dataFolder,
+ new PathFinder( group ),
+ SearchInfoFactory.createSearchInfo( rootFolder,
+ true, //recursive
+ true, //check sharability
+ true )} ); //check visibility
}
/** If contained in the lookup can perform the search for a node
Index: java/project/src/org/netbeans/spi/java/project/support/ui/PackageViewChildren.java
===================================================================
RCS file: /cvs/java/project/src/org/netbeans/spi/java/project/support/ui/PackageViewChildren.java,v
retrieving revision 1.26
diff -u -r1.26 PackageViewChildren.java
--- java/project/src/org/netbeans/spi/java/project/support/ui/PackageViewChildren.java 12 Aug 2004 10:45:19 -0000 1.26
+++ java/project/src/org/netbeans/spi/java/project/support/ui/PackageViewChildren.java 17 Aug 2004 13:38:40 -0000
@@ -56,7 +56,7 @@
import org.openide.util.datatransfer.PasteType;
import org.openide.util.lookup.Lookups;
import org.openide.util.lookup.ProxyLookup;
-import org.openidex.search.SimpleSearchInfo;
+import org.openidex.search.SearchInfoFactory;
/**
* Display of Java sources in a package structure rather than folder structure.
@@ -419,7 +419,11 @@
new ProxyLookup(new Lookup[] {
Lookups.singleton(new NoFoldersContainer (dataFolder)),
dataFolder.getNodeDelegate().getLookup(),
- Lookups.singleton(new SimpleSearchInfo(dataFolder, false)),
+ Lookups.singleton(SearchInfoFactory.createSearchInfo(
+ dataFolder.getPrimaryFile(),
+ false, //recursivity
+ true, //sharability
+ true)), //visibility
})
);
this.root = root;
Index: nbbuild/build.properties
===================================================================
RCS file: /cvs/nbbuild/build.properties,v
retrieving revision 1.201
diff -u -r1.201 build.properties
--- nbbuild/build.properties 6 Aug 2004 12:01:46 -0000 1.201
+++ nbbuild/build.properties 17 Aug 2004 13:38:41 -0000
@@ -335,6 +335,7 @@
projects/projectapi, \
projects/projectuiapi, \
projects/libraries, \
+ openidex, \
debuggercore/api, \
debuggercore/viewmodel, \
debuggercore, \
Index: nbbuild/build.xml
===================================================================
RCS file: /cvs/nbbuild/build.xml,v
retrieving revision 1.541
diff -u -r1.541 build.xml
--- nbbuild/build.xml 17 Aug 2004 11:23:41 -0000 1.541
+++ nbbuild/build.xml 17 Aug 2004 13:38:42 -0000
@@ -1090,7 +1090,7 @@
-
+
@@ -1102,7 +1102,7 @@
-
+
Index: projects/projectui/nbproject/project.xml
===================================================================
RCS file: /cvs/projects/projectui/nbproject/project.xml,v
retrieving revision 1.10
diff -u -r1.10 project.xml
--- projects/projectui/nbproject/project.xml 30 Jul 2004 22:33:37 -0000 1.10
+++ projects/projectui/nbproject/project.xml 17 Aug 2004 13:38:42 -0000
@@ -72,15 +72,6 @@
-
- org.openidex.util
-
-
-
- 3
- 3.2
-
-
Index: projects/projectui/src/org/netbeans/modules/project/ui/ProjectsRootNode.java
===================================================================
RCS file: /cvs/projects/projectui/src/org/netbeans/modules/project/ui/ProjectsRootNode.java,v
retrieving revision 1.25
diff -u -r1.25 ProjectsRootNode.java
--- projects/projectui/src/org/netbeans/modules/project/ui/ProjectsRootNode.java 9 Aug 2004 14:08:12 -0000 1.25
+++ projects/projectui/src/org/netbeans/modules/project/ui/ProjectsRootNode.java 17 Aug 2004 13:38:42 -0000
@@ -23,30 +23,20 @@
import java.util.Arrays;
import java.util.Collection;
import java.util.Collections;
-import java.util.Iterator;
import java.util.List;
import java.util.ResourceBundle;
import javax.swing.Action;
import org.netbeans.api.project.Project;
import org.netbeans.api.project.ProjectUtils;
-import org.netbeans.api.project.Sources;
-import org.netbeans.api.project.SourceGroup;
import org.netbeans.spi.project.ui.LogicalViewProvider;
import org.openide.ErrorManager;
-import org.openide.filesystems.FileObject;
-import org.openide.loaders.DataFolder;
import org.openide.nodes.AbstractNode;
import org.openide.nodes.Children;
import org.openide.nodes.Node;
-import org.openide.util.Lookup;
import org.openide.util.NbBundle;
import org.openide.util.Utilities;
import org.openide.util.WeakListeners;
-import org.openide.util.lookup.Lookups;
-import org.openide.util.lookup.ProxyLookup;
import org.openide.xml.XMLUtil;
-import org.openidex.search.SearchInfo;
-import org.openidex.search.SimpleSearchInfo;
/** Root node for list of open projects
* @author Petr Hrebejk
@@ -260,9 +250,7 @@
private static String badgedNamePattern = NbBundle.getMessage( ProjectsRootNode.class, "LBL_MainProject_BadgedNamePattern" );
public BadgingNode( Node n) {
- super( n,
- null,
- new ProxyLookup(new Lookup[] {n.getLookup(), Lookups.singleton(new ProjectNodeSearchInfo(n))}) );
+ super( n );
OpenProjectList.getDefault().addPropertyChangeListener( WeakListeners.propertyChange( this, OpenProjectList.getDefault() ) );
}
@@ -294,63 +282,6 @@
private boolean isMain() {
Project p = (Project)getLookup().lookup( Project.class );
return p != null && OpenProjectList.getDefault().isMainProject( p );
- }
-
- /**
- * SearchInfo object for project nodes.
- *
- * @see SearchInfo
- */
- static final class ProjectNodeSearchInfo implements SearchInfo {
-
- /** */
- private final Node projectNode;
-
- /**
- */
- ProjectNodeSearchInfo(Node n) {
- projectNode = n;
- }
-
- /**
- */
- public boolean canSearch() {
- return true;
- }
-
- /**
- */
- public Iterator objectsToSearch() {
- return createIterator();
- }
-
- /**
- */
- private Iterator createIterator() {
- /* get the project: */
- Project project = (Project) projectNode.getLookup().lookup(Project.class);
- assert project != null;
-
- /* get the Sources object: */
- Sources sources = ProjectUtils.getSources(project);
-
- /* build a delegated SearchInfo object: */
- SourceGroup[] sourceGroups
- = sources.getSourceGroups(Sources.TYPE_GENERIC);
- if (sourceGroups.length == 0) {
- return Collections.EMPTY_LIST.iterator();
- }
- SimpleSearchInfo searchInfo = new SimpleSearchInfo();
- for (int i = 0; i < sourceGroups.length; i++) {
- FileObject sourceRoot = sourceGroups[i].getRootFolder();
- DataFolder dataFolder = DataFolder.findFolder(sourceRoot);
- searchInfo.add(new SimpleSearchInfo(dataFolder, true));
- }
-
- /* return the SearchInfo's iterator: */
- return searchInfo.objectsToSearch();
- }
-
}
}
Index: utilities/nbproject/project.xml
===================================================================
RCS file: /cvs/utilities/nbproject/project.xml,v
retrieving revision 1.5
diff -u -r1.5 project.xml
--- utilities/nbproject/project.xml 15 Jun 2004 11:37:58 -0000 1.5
+++ utilities/nbproject/project.xml 17 Aug 2004 13:38:42 -0000
@@ -65,6 +65,7 @@
3
+ 3.3
Index: utilities/project/nbproject/project.xml
===================================================================
RCS file: /cvs/utilities/project/nbproject/project.xml,v
retrieving revision 1.3
diff -u -r1.3 project.xml
--- utilities/project/nbproject/project.xml 15 Jun 2004 11:37:57 -0000 1.3
+++ utilities/project/nbproject/project.xml 17 Aug 2004 13:38:42 -0000
@@ -39,7 +39,7 @@
3
- 3.2
+ 3.3
Index: utilities/project/src/org/netbeans/modules/search/project/ProjectsSearchAction.java
===================================================================
RCS file: /cvs/utilities/project/src/org/netbeans/modules/search/project/ProjectsSearchAction.java,v
retrieving revision 1.4
diff -u -r1.4 ProjectsSearchAction.java
--- utilities/project/src/org/netbeans/modules/search/project/ProjectsSearchAction.java 9 Aug 2004 14:08:12 -0000 1.4
+++ utilities/project/src/org/netbeans/modules/search/project/ProjectsSearchAction.java 17 Aug 2004 13:38:42 -0000
@@ -16,11 +16,7 @@
import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import java.util.ArrayList;
-import java.util.Collection;
-import java.util.Collections;
-import java.util.Iterator;
import java.util.List;
-import java.util.Set;
import org.netbeans.api.project.Project;
import org.netbeans.api.project.ProjectUtils;
import org.netbeans.api.project.SourceGroup;
@@ -28,9 +24,7 @@
import org.netbeans.api.project.ui.OpenProjects;
import org.netbeans.modules.search.SearchPanel;
import org.netbeans.modules.search.SearchPerformer;
-import org.openide.ErrorManager;
-import org.openide.loaders.DataObject;
-import org.openide.loaders.DataObjectNotFoundException;
+import org.openide.filesystems.FileObject;
import org.openide.nodes.AbstractNode;
import org.openide.nodes.Children;
@@ -39,7 +33,8 @@
import org.openide.util.HelpCtx;
import org.openide.util.NbBundle;
import org.openide.util.lookup.Lookups;
-import org.openidex.search.SimpleSearchInfo;
+import org.openidex.search.SearchInfo;
+import org.openidex.search.SearchInfoFactory;
/**
@@ -98,34 +93,6 @@
/** Where to search */
private Node[] getNodesToSearch() {
- Collection dataObjectsToSearch = getDataObjectsToSearch();
-
- if (dataObjectsToSearch.isEmpty()) {
- return new Node[0];
- }
-
- SimpleSearchInfo searchInfo = new SimpleSearchInfo();
- for (Iterator i = dataObjectsToSearch.iterator(); i.hasNext(); ) {
- DataObject root = (DataObject) i.next();
- if (root instanceof DataObject.Container) {
- searchInfo.add(
- new SimpleSearchInfo((DataObject.Container) root));
- } else {
- searchInfo.add(root);
- }
- }
-
- Node nodeToSearch = new AbstractNode(
- Children.LEAF,
- Lookups.singleton(searchInfo));
- nodeToSearch.setValue(
- SearchPanel.PROP_DIALOG_TITLE,
- NbBundle.getMessage(ProjectsSearchAction.class,
- "LBL_Title_SearchProjects")); //NOI18N
- return new Node[] {nodeToSearch};
- }
-
- private Collection getDataObjectsToSearch() {
Project[] openProjects = OpenProjects.getDefault().getOpenProjects();
if (openProjects.length == 0) {
@@ -138,28 +105,38 @@
* is being removed in another thread than this action was
* invoked from.
*/
- return Collections.EMPTY_LIST;
+ return new Node[0];
}
- List rootDataObjects = new ArrayList(openProjects.length * 2);
-
+ List rootFolders = new ArrayList();
for (int i = 0; i < openProjects.length; i++) {
Sources sources = ProjectUtils.getSources(openProjects[i]);
SourceGroup[] sourceGroups
= sources.getSourceGroups(Sources.TYPE_GENERIC);
for (int j = 0; j < sourceGroups.length; j++) {
- try {
- rootDataObjects.add(
- DataObject.find(sourceGroups[j].getRootFolder()));
- } catch (DataObjectNotFoundException ex) {
- ErrorManager.getDefault().notify(
- ErrorManager.EXCEPTION, ex);
- }
+ rootFolders.add(sourceGroups[j].getRootFolder());
}
}
+
+ if (rootFolders.isEmpty()) {
+ return new Node[0];
+ }
+
+ SearchInfo searchInfo = SearchInfoFactory.createSearchInfo(
+ (FileObject[])
+ rootFolders.toArray(new FileObject[rootFolders.size()]),
+ true, //recursive
+ true, //check sharability
+ true); //check visibility
- return !rootDataObjects.isEmpty() ? rootDataObjects
- : Collections.EMPTY_LIST;
+ Node nodeToSearch = new AbstractNode(
+ Children.LEAF,
+ Lookups.singleton(searchInfo));
+ nodeToSearch.setValue(
+ SearchPanel.PROP_DIALOG_TITLE,
+ NbBundle.getMessage(ProjectsSearchAction.class,
+ "LBL_Title_SearchProjects")); //NOI18N
+ return new Node[] {nodeToSearch};
}
/** Perform this action. */