public override void ExecuteCmdlet() { ListPoolUsageOptions options = new ListPoolUsageOptions(this.BatchContext, this.AdditionalBehaviors) { StartTime = this.StartTime, EndTime = this.EndTime, Filter = this.Filter, }; foreach (PSPoolUsageMetrics poolUsageMetrics in BatchClient.ListPoolUsageMetrics(options)) { WriteObject(poolUsageMetrics); } }
/// <summary> /// Lists the usage metrics, aggregated by pool across individual time intervals, for the specified account. /// </summary> /// <param name="options">The options to use when aggregating usage for pools.</param> public IEnumerable <PSPoolUsageMetrics> ListPoolUsageMetrics(ListPoolUsageOptions options) { string verboseLogString = null; ODATADetailLevel detailLevel = null; if (!string.IsNullOrEmpty(options.Filter)) { verboseLogString = Resources.GetPoolUsageMetricsByFilter; detailLevel = new ODATADetailLevel(filterClause: options.Filter); } else { verboseLogString = Resources.GetPoolUsageMetricsByNoFilter; } PoolOperations poolOperations = options.Context.BatchOMClient.PoolOperations; IPagedEnumerable <PoolUsageMetrics> poolUsageMetrics = poolOperations.ListPoolUsageMetrics(options.StartTime, options.EndTime, detailLevel, options.AdditionalBehaviors); return(PSPagedEnumerable <PSPoolUsageMetrics, PoolUsageMetrics> .CreateWithMaxCount( poolUsageMetrics, p => new PSPoolUsageMetrics(p), Int32.MaxValue, () => WriteVerbose(verboseLogString))); }
/// <summary> /// Lists the usage metrics, aggregated by pool across individual time intervals, for the specified account. /// </summary> /// <param name="options">The options to use when aggregating usage for pools.</param> public IEnumerable<PSPoolUsageMetrics> ListPoolUsageMetrics(ListPoolUsageOptions options) { string verboseLogString = null; ODATADetailLevel detailLevel = null; if (!string.IsNullOrEmpty(options.Filter)) { verboseLogString = Resources.GetPoolUsageMetricsByFilter; detailLevel = new ODATADetailLevel(filterClause: options.Filter); } else { verboseLogString = Resources.GetPoolUsageMetricsByNoFilter; } PoolOperations poolOperations = options.Context.BatchOMClient.PoolOperations; IPagedEnumerable<PoolUsageMetrics> poolUsageMetrics = poolOperations.ListPoolUsageMetrics(options.StartTime, options.EndTime, detailLevel, options.AdditionalBehaviors); return PSPagedEnumerable<PSPoolUsageMetrics, PoolUsageMetrics>.CreateWithMaxCount( poolUsageMetrics, p => new PSPoolUsageMetrics(p), Int32.MaxValue, () => WriteVerbose(verboseLogString)); }