private String getWorkspaceName(Workspace workspace) { if (workspaceNameCache == null) { workspaceNameCache = new HashMap<String, String>(); } String name = workspaceNameCache.get(workspace.getId()); if (name == null) { for (Plugin p : getBrix().getPlugins()) { if (p.isPluginWorkspace(workspace)) { name = p.getUserVisibleName(workspace, false); } workspaceNameCache.put(workspace.getId(), name); } } return name; }
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; }