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);
        }
コード例 #2
0
        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);
            }
        }