示例#1
0
        /// <summary>
        /// Returns a list of valid runspaces based on current parameter set.
        /// </summary>
        /// <returns>IReadOnlyList</returns>
        protected IReadOnlyList <Runspace> GetRunspaces()
        {
            IReadOnlyList <Runspace> results = null;

            if ((ParameterSetName == CommonRunspaceCommandBase.RunspaceNameParameterSet) && ((RunspaceName == null) || RunspaceName.Length == 0))
            {
                results = GetRunspaceUtils.GetAllRunspaces();
            }
            else
            {
                switch (ParameterSetName)
                {
                case CommonRunspaceCommandBase.RunspaceNameParameterSet:
                    results = GetRunspaceUtils.GetRunspacesByName(RunspaceName);
                    break;

                case CommonRunspaceCommandBase.RunspaceIdParameterSet:
                    results = GetRunspaceUtils.GetRunspacesById(RunspaceId);
                    break;

                case CommonRunspaceCommandBase.RunspaceParameterSet:
                    results = new ReadOnlyCollection <Runspace>(new List <Runspace>(Runspace));
                    break;

                case CommonRunspaceCommandBase.RunspaceInstanceIdParameterSet:
                    results = GetRunspaceUtils.GetRunspacesByInstanceId(RunspaceInstanceId);
                    break;
                }
            }

            return(results);
        }
        /// <summary>
        /// Returns a list of valid runspaces based on current parameter set.
        /// </summary>
        /// <returns>IReadOnlyList.</returns>
        protected IReadOnlyList <Runspace> GetRunspaces()
        {
            IReadOnlyList <Runspace> results = null;

            if ((ParameterSetName == CommonRunspaceCommandBase.RunspaceNameParameterSet) && ((RunspaceName is null) || RunspaceName.Length == 0))
            {
                results = GetRunspaceUtils.GetAllRunspaces();
            }
        /// <summary>
        /// Process record.
        /// </summary>
        protected override void ProcessRecord()
        {
            IReadOnlyList <Runspace> results;

            if ((ParameterSetName == GetRunspaceCommand.NameParameterSet) && ((Name is null) || Name.Length == 0))
            {
                results = GetRunspaceUtils.GetAllRunspaces();
            }
        /// <summary>
        /// Process record
        /// </summary>
        protected override void ProcessRecord()
        {
            IReadOnlyList <Runspace> results;

            if ((ParameterSetName == GetRunspaceCommand.NameParameterSet) && ((Name == null) || Name.Length == 0))
            {
                results = GetRunspaceUtils.GetAllRunspaces();
            }
            else
            {
                switch (ParameterSetName)
                {
                case GetRunspaceCommand.NameParameterSet:
                    results = GetRunspaceUtils.GetRunspacesByName(Name);
                    break;

                case GetRunspaceCommand.IdParameterSet:
                    results = GetRunspaceUtils.GetRunspacesById(Id);
                    break;

                case GetRunspaceCommand.InstanceIdParameterSet:
                    results = GetRunspaceUtils.GetRunspacesByInstanceId(InstanceId);
                    break;

                default:
                    Dbg.Assert(false, "Unknown parameter set in GetRunspaceCommand");
                    results = new List <Runspace>().AsReadOnly();
                    break;
                }
            }

            foreach (Runspace runspace in results)
            {
                WriteObject(runspace);
            }
        }