public List<Workspace> call() throws Exception { final Server server = createServer(); final MockableVersionControlClient vcc = server.getVersionControlClient(); final TaskListener listener = server.getListener(); final PrintStream logger = listener.getLogger(); final String listWorkspacesMessage = String.format(ListingWorkspacesTemplate, server.getUrl()); logger.println(listWorkspacesMessage); final com.microsoft.tfs.core.clients.versioncontrol.soapextensions.Workspace[] sdkWorkspaces = vcc.queryWorkspaces( null, null, Util.fixEmpty(computer), WorkspacePermissions.NONE_OR_NOT_SUPPORTED); final List<Workspace> result = new ArrayList<Workspace>(sdkWorkspaces.length); for (final com.microsoft.tfs.core.clients.versioncontrol.soapextensions.Workspace sdkWorkspace : sdkWorkspaces) { final String name = sdkWorkspace.getName(); final String computer = sdkWorkspace.getComputer(); final String ownerName = sdkWorkspace.getOwnerName(); final String comment = Util.fixNull(sdkWorkspace.getComment()); final Workspace workspace = new Workspace(name, computer, ownerName, comment); result.add(workspace); } log(result, logger); return result; }