Issue #136334: NodeOp.actionsForPath. diff --git a/autoproject.core/nbproject/project.xml b/autoproject.core/nbproject/project.xml --- a/autoproject.core/nbproject/project.xml +++ b/autoproject.core/nbproject/project.xml @@ -95,7 +95,7 @@ - 7.4 + 7.6 diff --git a/autoproject.core/src/org/netbeans/modules/autoproject/core/LogicalViewImpl.java b/autoproject.core/src/org/netbeans/modules/autoproject/core/LogicalViewImpl.java --- a/autoproject.core/src/org/netbeans/modules/autoproject/core/LogicalViewImpl.java +++ b/autoproject.core/src/org/netbeans/modules/autoproject/core/LogicalViewImpl.java @@ -44,7 +44,6 @@ import java.util.List; import java.util.MissingResourceException; import javax.swing.Action; -import javax.swing.JSeparator; import org.netbeans.api.project.Project; import org.netbeans.api.project.ProjectUtils; import org.netbeans.spi.project.ActionProvider; @@ -55,6 +54,7 @@ import org.openide.actions.FindAction; import org.openide.nodes.AbstractNode; import org.openide.nodes.Node; +import org.openide.nodes.NodeOp; import org.openide.util.Lookup; import org.openide.util.NbBundle; import org.openide.util.Utilities; @@ -127,8 +127,8 @@ } } } - addFromLayers(actions, "Projects/Profiler_Actions_temporary"); //NOI18N - addFromLayers(actions, "Projects/org-netbeans-modules-autoproject/Actions"); // NOI18N + actions.addAll(NodeOp.actionsForPath("Projects/Profiler_Actions_temporary")); //NOI18N + actions.addAll(NodeOp.actionsForPath("Projects/org-netbeans-modules-autoproject/Actions")); // NOI18N actions.add(null); actions.add(CommonProjectActions.setAsMainProjectAction()); actions.add(CommonProjectActions.openSubprojectsAction()); @@ -142,22 +142,12 @@ actions.add(null); */ actions.add(SystemAction.get(FindAction.class)); - addFromLayers(actions, "Projects/Actions"); // NOI18N + actions.addAll(NodeOp.actionsForPath("Projects/Actions")); // NOI18N actions.add(null); /* XXX actions.add(CommonProjectActions.customizeProjectAction()); */ return actions.toArray(new Action[actions.size()]); - } - private static void addFromLayers(List actions, String path) { - Lookup look = Lookups.forPath(path); - for (Object next : look.lookupAll(Object.class)) { - if (next instanceof Action) { - actions.add((Action) next); - } else if (next instanceof JSeparator) { - actions.add(null); - } - } } /* XXX no rename support currently: diff --git a/bluej-suite/bluej/nbproject/genfiles.properties b/bluej-suite/bluej/nbproject/genfiles.properties --- a/bluej-suite/bluej/nbproject/genfiles.properties +++ b/bluej-suite/bluej/nbproject/genfiles.properties @@ -3,6 +3,6 @@ build.xml.stylesheet.CRC32=05353c81 # This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml. # Do not edit this file. You may delete it but then the IDE will never regenerate such files for you. -nbproject/build-impl.xml.data.CRC32=ea3a93ce +nbproject/build-impl.xml.data.CRC32=e9e48e37 nbproject/build-impl.xml.script.CRC32=44346c8c nbproject/build-impl.xml.stylesheet.CRC32=deb65f65 diff --git a/bluej-suite/bluej/nbproject/project.xml b/bluej-suite/bluej/nbproject/project.xml --- a/bluej-suite/bluej/nbproject/project.xml +++ b/bluej-suite/bluej/nbproject/project.xml @@ -206,7 +206,7 @@ - 6.7.1 + 7.6 diff --git a/bluej-suite/bluej/src/org/netbeans/bluej/nodes/BluejLogicalViewRootNode.java b/bluej-suite/bluej/src/org/netbeans/bluej/nodes/BluejLogicalViewRootNode.java --- a/bluej-suite/bluej/src/org/netbeans/bluej/nodes/BluejLogicalViewRootNode.java +++ b/bluej-suite/bluej/src/org/netbeans/bluej/nodes/BluejLogicalViewRootNode.java @@ -42,11 +42,9 @@ package org.netbeans.bluej.nodes; import java.util.ArrayList; -import java.util.Iterator; import java.util.List; import java.util.ResourceBundle; import javax.swing.Action; -import javax.swing.JSeparator; import org.netbeans.api.java.project.JavaProjectConstants; import org.netbeans.api.project.ProjectInformation; import org.netbeans.api.project.ProjectUtils; @@ -58,18 +56,14 @@ import org.netbeans.spi.project.ActionProvider; import org.netbeans.spi.project.ui.support.CommonProjectActions; import org.netbeans.spi.project.ui.support.ProjectSensitiveActions; -import org.openide.ErrorManager; import org.openide.actions.FindAction; import org.openide.actions.ToolsAction; import org.openide.filesystems.FileObject; -import org.openide.filesystems.Repository; -import org.openide.loaders.DataFolder; import org.openide.loaders.DataObject; -import org.openide.loaders.DataObjectNotFoundException; -import org.openide.loaders.FolderLookup; import org.openide.nodes.AbstractNode; import org.openide.nodes.FilterNode; import org.openide.nodes.Node; +import org.openide.nodes.NodeOp; import org.openide.util.Lookup; import org.openide.util.NbBundle; import org.openide.util.actions.SystemAction; @@ -136,31 +130,8 @@ actions.add(SystemAction.get(FindAction.class)); // honor 57874 contact - - try { - FileObject fo = Repository.getDefault().getDefaultFileSystem().findResource("Projects/Actions"); // NOI18N - if (fo != null) { - DataObject dobj = DataObject.find(fo); - FolderLookup actionRegistry = new FolderLookup((DataFolder)dobj); - Lookup.Template query = new Lookup.Template(Object.class); - Lookup lookup = actionRegistry.getLookup(); - Iterator it = lookup.lookup(query).allInstances().iterator(); - if (it.hasNext()) { - actions.add(null); - } - while (it.hasNext()) { - Object next = it.next(); - if (next instanceof Action) { - actions.add(next); - } else if (next instanceof JSeparator) { - actions.add(null); - } - } - } - } catch (DataObjectNotFoundException ex) { - // data folder for existing fileobject expected - ErrorManager.getDefault().notify(ex); - } + actions.add(null); + actions.addAll(NodeOp.actionsForPath("Projects/Actions")); // NOI18N actions.add(null); actions.add(SystemAction.get(ToolsAction.class)); diff --git a/contrib/latex/guiproject/nbproject/genfiles.properties b/contrib/latex/guiproject/nbproject/genfiles.properties --- a/contrib/latex/guiproject/nbproject/genfiles.properties +++ b/contrib/latex/guiproject/nbproject/genfiles.properties @@ -3,6 +3,6 @@ build.xml.stylesheet.CRC32=1101b4cf # This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml. # Do not edit this file. You may delete it but then the IDE will never regenerate such files for you. -nbproject/build-impl.xml.data.CRC32=0746c13d +nbproject/build-impl.xml.data.CRC32=3f1a3c64 nbproject/build-impl.xml.script.CRC32=a4116950 -nbproject/build-impl.xml.stylesheet.CRC32=3f8b4615 +nbproject/build-impl.xml.stylesheet.CRC32=deb65f65 diff --git a/contrib/latex/guiproject/nbproject/project.xml b/contrib/latex/guiproject/nbproject/project.xml --- a/contrib/latex/guiproject/nbproject/project.xml +++ b/contrib/latex/guiproject/nbproject/project.xml @@ -57,15 +57,6 @@ - org.netbeans.modules.gsf.api - - - - 1 - - - - org.netbeans.modules.editor.highlights @@ -89,6 +80,15 @@ 2 + + + + + org.netbeans.modules.gsf.api + + + + 1 @@ -230,7 +230,7 @@ - 6.2 + 7.6 diff --git a/contrib/latex/guiproject/src/org/netbeans/modules/latex/guiproject/LaTeXGUIProject.java b/contrib/latex/guiproject/src/org/netbeans/modules/latex/guiproject/LaTeXGUIProject.java --- a/contrib/latex/guiproject/src/org/netbeans/modules/latex/guiproject/LaTeXGUIProject.java +++ b/contrib/latex/guiproject/src/org/netbeans/modules/latex/guiproject/LaTeXGUIProject.java @@ -61,7 +61,6 @@ import javax.swing.Action; import javax.swing.Icon; import javax.swing.ImageIcon; -import javax.swing.JSeparator; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; import org.netbeans.api.project.Project; @@ -82,15 +81,13 @@ import org.openide.filesystems.FileStatusListener; import org.openide.filesystems.FileSystem; import org.openide.filesystems.FileUtil; -import org.openide.filesystems.Repository; -import org.openide.loaders.DataFolder; import org.openide.loaders.DataObject; import org.openide.loaders.DataObjectNotFoundException; -import org.openide.loaders.FolderLookup; import org.openide.nodes.AbstractNode; import org.openide.nodes.Children; import org.openide.nodes.FilterNode; import org.openide.nodes.Node; +import org.openide.nodes.NodeOp; import org.openide.util.ChangeSupport; import org.openide.util.Lookup; import org.openide.util.RequestProcessor; @@ -284,33 +281,8 @@ actions.add(null); // honor 57874 contact - - try { - Repository repository = Repository.getDefault(); - FileSystem sfs = repository.getDefaultFileSystem(); - FileObject fo = sfs.findResource("Projects/Actions"); // NOI18N - if (fo != null) { - DataObject dobj = DataObject.find(fo); - FolderLookup actionRegistry = new FolderLookup((DataFolder)dobj); - Lookup.Template query = new Lookup.Template(Object.class); - Lookup lookup = actionRegistry.getLookup(); - Iterator it = lookup.lookup(query).allInstances().iterator(); - if (it.hasNext()) { - actions.add(null); - } - while (it.hasNext()) { - Object next = it.next(); - if (next instanceof Action) { - actions.add(next); - } else if (next instanceof JSeparator) { - actions.add(null); - } - } - } - } catch (DataObjectNotFoundException ex) { - // data folder for exitinf fileobject expected - ErrorManager.getDefault().notify(ex); - } + actions.add(null); + actions.addAll(NodeOp.actionsForPath("Projects/Actions")); // NOI18N actions.add(null); actions.add(CommonProjectActions.customizeProjectAction()); diff --git a/erlang.project/nbproject/project.xml b/erlang.project/nbproject/project.xml --- a/erlang.project/nbproject/project.xml +++ b/erlang.project/nbproject/project.xml @@ -180,7 +180,7 @@ - 7.3 + 7.6 diff --git a/erlang.project/src/org/netbeans/modules/erlang/project/ui/RubyLogicalViewProvider.java b/erlang.project/src/org/netbeans/modules/erlang/project/ui/RubyLogicalViewProvider.java --- a/erlang.project/src/org/netbeans/modules/erlang/project/ui/RubyLogicalViewProvider.java +++ b/erlang.project/src/org/netbeans/modules/erlang/project/ui/RubyLogicalViewProvider.java @@ -44,11 +44,9 @@ import java.awt.Image; import java.io.CharConversionException; import java.util.ArrayList; -import java.util.Collection; import java.util.List; import java.util.ResourceBundle; import javax.swing.Action; -import javax.swing.JSeparator; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; import org.netbeans.api.project.FileOwnerQuery; @@ -77,6 +75,7 @@ import org.openide.loaders.DataObject; import org.openide.nodes.AbstractNode; import org.openide.nodes.Node; +import org.openide.nodes.NodeOp; import org.openide.util.HelpCtx; import org.openide.util.NbBundle; import org.openide.util.Utilities; @@ -367,18 +366,8 @@ actions.add(SystemAction.get(FindAction.class)); // honor 57874 contact - - Collection res = Lookups.forPath("Projects/Actions").lookupAll(Object.class); // NOI18N - if (!res.isEmpty()) { - actions.add(null); - for (Object next : res) { - if (next instanceof Action) { - actions.add((Action) next); - } else if (next instanceof JSeparator) { - actions.add(null); - } - } - } + actions.add(null); + actions.addAll(NodeOp.actionsForPath("Projects/Actions")); // NOI18N actions.add(null); // if (broken) { diff --git a/scala.project/nbproject/project.xml b/scala.project/nbproject/project.xml --- a/scala.project/nbproject/project.xml +++ b/scala.project/nbproject/project.xml @@ -311,7 +311,7 @@ - 6.5 + 7.6 diff --git a/scala.project/src/org/netbeans/modules/scala/project/ui/J2SELogicalViewProvider.java b/scala.project/src/org/netbeans/modules/scala/project/ui/J2SELogicalViewProvider.java --- a/scala.project/src/org/netbeans/modules/scala/project/ui/J2SELogicalViewProvider.java +++ b/scala.project/src/org/netbeans/modules/scala/project/ui/J2SELogicalViewProvider.java @@ -52,7 +52,6 @@ import java.util.ResourceBundle; import javax.swing.AbstractAction; import javax.swing.Action; -import javax.swing.JSeparator; import javax.swing.event.ChangeEvent; import javax.swing.event.ChangeListener; import org.netbeans.api.scala.platform.ScalaPlatform; @@ -85,6 +84,7 @@ import org.openide.modules.SpecificationVersion; import org.openide.nodes.AbstractNode; import org.openide.nodes.Node; +import org.openide.nodes.NodeOp; import org.openide.util.ChangeSupport; import org.openide.util.HelpCtx; import org.openide.util.Lookup; @@ -325,8 +325,8 @@ actions.add(ProjectSensitiveActions.projectCommandAction(JavaProjectConstants.COMMAND_JAVADOC, bundle.getString("LBL_JavadocAction_Name"), null)); // NOI18N actions.add(null); actions.add(ProjectSensitiveActions.projectCommandAction(ActionProvider.COMMAND_RUN, bundle.getString("LBL_RunAction_Name"), null)); // NOI18N - addFromLayers(actions, "Projects/Debugger_Actions_temporary"); //NOI18N - addFromLayers(actions, "Projects/Profiler_Actions_temporary"); //NOI18N + actions.addAll(NodeOp.actionsForPath("Projects/Debugger_Actions_temporary")); //NOI18N + actions.addAll(NodeOp.actionsForPath("Projects/Profiler_Actions_temporary")); //NOI18N actions.add(ProjectSensitiveActions.projectCommandAction(ActionProvider.COMMAND_TEST, bundle.getString("LBL_TestAction_Name"), null)); // NOI18N actions.add(CommonProjectActions.setProjectConfigurationAction()); actions.add(null); @@ -342,7 +342,7 @@ actions.add(SystemAction.get(FindAction.class)); // honor 57874 contact - addFromLayers(actions, "Projects/Actions"); //NOI18N + actions.addAll(NodeOp.actionsForPath("Projects/Actions")); //NOI18N actions.add(null); if (broken) { @@ -352,17 +352,6 @@ return actions.toArray(new Action[actions.size()]); - } - - private void addFromLayers(List actions, String path) { - Lookup look = Lookups.forPath(path); - for (Object next : look.lookupAll(Object.class)) { - if (next instanceof Action) { - actions.add((Action) next); - } else if (next instanceof JSeparator) { - actions.add(null); - } - } } private void setBroken(boolean broken) { diff --git a/themebuilder/src/org/netbeans/modules/themebuilder/project/view/ThemeBuilderViewProvider.java b/themebuilder/src/org/netbeans/modules/themebuilder/project/view/ThemeBuilderViewProvider.java --- a/themebuilder/src/org/netbeans/modules/themebuilder/project/view/ThemeBuilderViewProvider.java +++ b/themebuilder/src/org/netbeans/modules/themebuilder/project/view/ThemeBuilderViewProvider.java @@ -66,7 +66,6 @@ import org.openide.filesystems.FileObject; import org.openide.loaders.DataFolder; import org.openide.loaders.DataObjectNotFoundException; -import org.openide.nodes.AbstractNode; import org.openide.nodes.AbstractNode; import org.openide.nodes.Children; import org.openide.nodes.FilterNode; @@ -169,16 +168,7 @@ actions.add(null); actions.add(SystemAction.get(FindAction.class)); actions.add(null); - /*FileObject fo = Repository.getDefault().getDefaultFileSystem().findResource("Projects/Actions"); // NOI18N - if (fo != null) { - for (Object next : new FolderLookup(DataFolder.findFolder(fo)).getLookup().lookupAll(Object.class)) { - if (next instanceof Action) { - actions.add((Action) next); - } else if (next instanceof JSeparator) { - actions.add(null); - } - } - }*/ + // org.openide.nodes 7.6: actions.addAll(NodeOp.actionsForPath("Projects/Actions")); // NOI18N actions.add(null); actions.add(SystemAction.get(ToolsAction.class)); actions.add(null);