/// <summary> /// Initializes a new instance of the ScaleRule class. /// </summary> /// <param name="metricTrigger">The metric trigger object</param> /// <param name="scaleAction">The scale action object</param> public ScaleRule(Monitor.Models.MetricTrigger metricTrigger, Monitor.Models.ScaleAction scaleAction) : base( metricTrigger: metricTrigger, scaleAction: scaleAction) { this.MetricTrigger = metricTrigger != null ? new MetricTrigger(metricTrigger) : null; this.ScaleAction = scaleAction != null ? new ScaleAction(scaleAction) : null; }
/// <summary> /// Initializes a new instance of the MetricTrigger class. /// </summary> /// <param name="metricTrigger">The MetricTrigger object</param> public MetricTrigger(Monitor.Models.MetricTrigger metricTrigger) : base( metricName: metricTrigger?.MetricName, metricResourceUri: metricTrigger?.MetricResourceUri, timeGrain: metricTrigger == null ? default(System.TimeSpan) : metricTrigger.TimeGrain, operatorProperty: metricTrigger == null ? default(Monitor.Models.ComparisonOperationType) : metricTrigger.OperatorProperty, statistic: metricTrigger == null ? default(Monitor.Models.MetricStatisticType) : metricTrigger.Statistic, threshold: metricTrigger == null ? 0 : metricTrigger.Threshold, timeAggregation: metricTrigger == null ? default(Monitor.Models.TimeAggregationType) : metricTrigger.TimeAggregation, timeWindow: metricTrigger == null ? default(System.TimeSpan) : metricTrigger.TimeWindow) { if (metricTrigger != null) { this.OperatorProperty = TransitionHelpers.ConvertNamespace(metricTrigger.OperatorProperty); this.Statistic = TransitionHelpers.ConvertNamespace(metricTrigger.Statistic); this.TimeAggregation = TransitionHelpers.ConvertNamespace(metricTrigger.TimeAggregation); } }