public override void ExecuteCmdlet()
        {
            if (ParameterSetName == StreamAnalyticsObjectsInResourceGroup)
            {
                if (ResourceGroupName != null && string.IsNullOrWhiteSpace(ResourceGroupName))
                {
                    throw new PSArgumentNullException("ResourceGroupName");
                }
            }

            string propertiesToExpand = "inputs,transformation,outputs,functions";
            if (NoExpand.IsPresent)
            {
                propertiesToExpand = string.Empty;
            }

            JobFilterOptions filterOptions = new JobFilterOptions
            {
                JobName = Name,
                ResourceGroupName = ResourceGroupName,
                PropertiesToExpand = propertiesToExpand
            };

            WriteObject(StreamAnalyticsClient.FilterPSJobs(filterOptions), true);
        }
        public virtual List<PSJob> FilterPSJobs(JobFilterOptions filterOptions)
        {
            if (filterOptions == null)
            {
                throw new ArgumentNullException("filterOptions");
            }

            List<PSJob> jobs = new List<PSJob>();

            if (!string.IsNullOrWhiteSpace(filterOptions.JobName))
            {
                if (string.IsNullOrWhiteSpace(filterOptions.ResourceGroupName))
                {
                    throw new ArgumentException(Resources.ResourceGroupNameCannotBeEmpty);
                }

                jobs.Add(GetJob(filterOptions.ResourceGroupName, filterOptions.JobName,
                    filterOptions.PropertiesToExpand));
            }
            else if (!string.IsNullOrWhiteSpace(filterOptions.ResourceGroupName))
            {
                jobs.AddRange(ListJobs(filterOptions.ResourceGroupName, filterOptions.PropertiesToExpand));
            }
            else
            {
                jobs.AddRange(ListJobs(filterOptions.PropertiesToExpand));
            }

            return jobs;
        }
        public virtual List <PSJob> FilterPSJobs(JobFilterOptions filterOptions)
        {
            if (filterOptions == null)
            {
                throw new ArgumentNullException("filterOptions");
            }

            List <PSJob> jobs = new List <PSJob>();

            if (!string.IsNullOrWhiteSpace(filterOptions.JobName))
            {
                if (string.IsNullOrWhiteSpace(filterOptions.ResourceGroupName))
                {
                    throw new ArgumentException(Resources.ResourceGroupNameCannotBeEmpty);
                }

                jobs.Add(GetJob(filterOptions.ResourceGroupName, filterOptions.JobName,
                                filterOptions.PropertiesToExpand));
            }
            else if (!string.IsNullOrWhiteSpace(filterOptions.ResourceGroupName))
            {
                jobs.AddRange(ListJobs(filterOptions.ResourceGroupName, filterOptions.PropertiesToExpand));
            }
            else
            {
                jobs.AddRange(ListJobs(filterOptions.PropertiesToExpand));
            }

            return(jobs);
        }