private static Workspace InvokeGetPowerBIWorkspace(System.Management.Automation.PowerShell ps, PowerBIUserScope scope, OperationType type, Guid?id = null) { var first = 5000; var skip = 0; while (true) { ps.Commands.Clear(); var parameters = new Dictionary <string, object>() { { nameof(GetPowerBIWorkspace.Scope), scope.ToString() }, { nameof(GetPowerBIWorkspace.First), first }, { nameof(GetPowerBIWorkspace.Skip), skip } }; ps.AddCommand(GetPowerBIWorkspaceCmdletInfo).AddParameters(parameters); var results = ps.Invoke(); if (results.Any()) { var workspace = GetWorkspaceForOperationType(results, type, id); if (workspace != null) { ps.Commands.Clear(); return(workspace); } } if (results.Count < first) { break; } skip += first; } TestUtilities.AssertNoCmdletErrors(ps); ps.Commands.Clear(); return(null); }
public static Workspace GetFirstWorkspace(System.Management.Automation.PowerShell ps, PowerBIUserScope scope) { var results = InvokeGetPowerBIWorkspace(ps, scope); if (results.Any()) { var workspaces = results.Select(x => (Workspace)x.BaseObject); return(workspaces.First()); } return(null); }
public static Workspace GetFirstWorkspace(System.Management.Automation.PowerShell ps, PowerBIUserScope scope) { return(InvokeGetPowerBIWorkspace(ps, scope, OperationType.GetFirstWorkspace)); }
private static ICollection <PSObject> InvokeGetPowerBIWorkspace(System.Management.Automation.PowerShell ps, PowerBIUserScope scope) { ps.Commands.Clear(); ps.AddCommand(GetPowerBIWorkspaceCmdletInfo).AddParameter(nameof(GetPowerBIWorkspace.Scope), scope.ToString()); var results = ps.Invoke(); TestUtilities.AssertNoCmdletErrors(ps); ps.Commands.Clear(); return(results); }