private List<Workspace> getWorkspaces() { Brix brix = getBrix(); List<Workspace> workspaces = new ArrayList<Workspace>(); Workspace current = getModelObject(); for (Plugin p : brix.getPlugins()) { List<Workspace> filtered = brix.filterVisibleWorkspaces(p.getWorkspaces(current, false), Context.ADMINISTRATION); for (Workspace w : filtered) { if (workspaceNameCache == null) { workspaceNameCache = new HashMap<String, String>(); } workspaceNameCache.put(w.getId(), p.getUserVisibleName(w, false)); workspaces.add(w); } } if (!workspaces.contains(current)) { workspaces.add(current); } return workspaces; }