internal List <DimensionSet> GetAllDimensionSets() { if (!_shouldUseDefaultDimensionSet) { return(CustomDimensionSets); } CustomDimensionSets.ForEach(ds => DefaultDimensionSet.AddRange(ds)); var dimensions = new List <DimensionSet>() { DefaultDimensionSet }; return(dimensions); }
internal MetricDirective DeepCloneWithNewMetrics(List <MetricDefinition> metrics) { var clone = new MetricDirective(); clone.CustomDimensionSets = new List <DimensionSet>(); foreach (var dimension in CustomDimensionSets) { clone.CustomDimensionSets.Add(dimension.DeepClone()); } clone.DefaultDimensionSet = DefaultDimensionSet.DeepClone(); clone.Namespace = Namespace; clone._shouldUseDefaultDimensionSet = _shouldUseDefaultDimensionSet; foreach (var metric in metrics) { clone._metrics.Add(metric); } return(clone); }