Xamarin Public Jenkins (auto-signing) 95fdb59ea6 Imported Upstream version 6.6.0.89
Former-commit-id: b39a328747c2f3414dc52e009fb6f0aa80ca2492
2019-09-24 08:53:40 +00:00

33 lines
1.2 KiB
C#

using System.Collections.Generic;
namespace Mono.Documentation.Updater.Statistics
{
/// <summary>
/// The class stores statistics for different frameworks
/// </summary>
public class StatisticsCollector
{
/// <summary>
/// Collected statistics for each framework
/// </summary>
public Dictionary<string, StatisticsStorage> Storages { get; } =
new Dictionary<string, StatisticsStorage>();
/// <summary>
/// Change metric value for the item
/// </summary>
/// <param name="framework">The framework name which statistics is being collected</param>
/// <param name="item">The item which metrics value is changing</param>
/// <param name="metrics">The metrics which value is changing</param>
/// <param name="delta">The value by which the metrics value should be changed</param>
public void AddMetric(string framework, StatisticsItem item, StatisticsMetrics metrics, int delta = 1)
{
if (!Storages.ContainsKey(framework))
{
Storages[framework] = new StatisticsStorage();
}
Storages[framework].AddMetric(item, metrics, delta);
}
}
}