/// <summary> /// Gets the statistics from the remote. /// </summary> public async Task <GetStatsResult> GetStatsAsync(Context context) { CounterSet counters = new CounterSet(); // Get stats iff compatible with service and client if ((_serviceCapabilities & Capabilities.GetStats) != 0 && (_clientCapabilities & Capabilities.GetStats) != 0) { var response = await RunClientActionAndThrowIfFailedAsync(context, async() => await _client.GetStatsAsync(new GetStatsRequest())); if (response.Success) { foreach (var entry in response.Statistics) { counters.Add(entry.Key, entry.Value); } } } return(new GetStatsResult(counters)); }
/// <inheritdoc /> protected override AsyncUnaryCall <GetStatsResponse> GetStatsAsync(GetStatsRequest getStatsRequest) { return(_client.GetStatsAsync(getStatsRequest)); }