/// <summary> /// Creates new Metric for given Monitored System based on existing metric. /// </summary> public NICEMetric(NICEMetric metric, string monitoredSystemName) { Name = metric.Name + " " + monitoredSystemName; Group = metric.Group; MeasurementUnit = metric.MeasurementUnit; Type = metric.Type; ColorID = metric.ColorID; IsAggregationEnable = metric.IsAggregationEnable; }
public override bool Equals(object obj) { if (obj == null) { return(false); } if (!(obj is NICEMetric)) { return(false); } NICEMetric castedObj = (NICEMetric)obj; return(Equals(castedObj)); }
/// <summary> /// Better equals to increase performance by saving boxing /// </summary> /// <param name="valueType"></param> /// <returns>true if the given value type is equal to this one and false otherwise</returns> public bool Equals(NICEMetric valueType) { if (valueType == null) { return(false); } if (ReferenceEquals(this, valueType)) { return(true); } if ((Type != valueType.Type) || (!Name.Equals(valueType.Name, StringComparison.OrdinalIgnoreCase)) || (!Group.Equals(valueType.Group, StringComparison.OrdinalIgnoreCase)) || (!MeasurementUnit.Equals(valueType.MeasurementUnit, StringComparison.OrdinalIgnoreCase)) || (IsAggregationEnable != valueType.IsAggregationEnable) ) { return(false); } return(true); }
/// <summary> /// Equals - measurement unit comparison is case sensitive. /// </summary> /// <param name="valueType1"> /// The value type 1. /// </param> /// <param name="valueType2"> /// The value type 2. /// </param> /// <returns> /// The <see cref="bool"/>. /// </returns> public static bool EqualsCaseSensitiveUnit(NICEMetric valueType1, NICEMetric valueType2) { if (valueType2 == null) { return(false); } if (ReferenceEquals(valueType1, valueType2)) { return(true); } if ((valueType1.Type != valueType2.Type) || (!valueType1.Name.Equals(valueType2.Name, StringComparison.OrdinalIgnoreCase)) || (!valueType1.Group.Equals(valueType2.Group, StringComparison.OrdinalIgnoreCase)) || (!valueType1.MeasurementUnit.Equals(valueType2.MeasurementUnit)) || (valueType1.IsAggregationEnable != valueType2.IsAggregationEnable)) { return(false); } return(true); }