public override void Execute() { base.Execute(); PSNetworkWatcherConnectionMonitorOutputObject output = new PSNetworkWatcherConnectionMonitorOutputObject() { Type = string.IsNullOrEmpty(this.OutputType) ? "Workspace" : this.OutputType, WorkspaceSettings = new PSConnectionMonitorWorkspaceSettings() { WorkspaceResourceId = WorkspaceResourceId } }; this.ValidateOutput(output); WriteObject(output); }
public void ValidateOutput(PSNetworkWatcherConnectionMonitorOutputObject output) { if (output.Type != null && !output.Type.Equals("Workspace", StringComparison.OrdinalIgnoreCase)) { throw new PSArgumentException(Properties.Resources.InvalidConnectionMonitorOutputType); } if (string.IsNullOrEmpty(output.WorkspaceSettings?.WorkspaceResourceId)) { throw new PSArgumentException(Properties.Resources.WorkspaceResourceIdIsNotProvidedInConnectionMonitorOutput); } string[] SplittedName = output.WorkspaceSettings.WorkspaceResourceId.Split('/'); if (SplittedName.Count() < 9 || string.IsNullOrEmpty(SplittedName[7]) || !SplittedName[7].Equals("workspaces", StringComparison.OrdinalIgnoreCase)) { throw new PSArgumentException(Properties.Resources.InvalidWorkspaceResourceId); } }