/** * Return a list of projects which can be built * * @return */ protected final List<AbstractProject<?, ?>> getProjects(String viewName) { List<AbstractProject<?, ?>> projects = new ArrayList<AbstractProject<?, ?>>(); Collection<TopLevelItem> items = Jenkins.getInstance().getItems(); View view = null; BulkBuilderAction bulkBuilderAction = new BulkBuilderAction(); if (viewName != null) { for (View currentView : bulkBuilderAction.getViews()) { if (currentView.getViewName().equals(viewName)) { view = currentView; } } if (view != null) { items = view.getItems(); } } for (AbstractProject<?, ?> project : Util.createSubList(items, AbstractProject.class)) { if (!project.isBuildable()) { continue; } projects.add(project); } return projects; }