internal void Merge(RepairSteps stepsToMerge) { if (stepsToMerge == null) { throw new ArgumentNullException("stepsToMerge"); } this.MasterRum = RumInfo.Merge(this.MasterRum, stepsToMerge.MasterRum); foreach (RumInfo rum in stepsToMerge.OccurrenceRums.Values) { this.AddOccurrenceRum(rum); } }
private void AddOccurrenceRum(RumInfo rum) { if (this.MasterRum.IsNullOp) { ExDateTime value = rum.OccurrenceOriginalStartTime.Value; if (this.OccurrenceRums.ContainsKey(value)) { this.OccurrenceRums[value] = RumInfo.Merge(this.OccurrenceRums[value], rum); return; } this.OccurrenceRums.Add(rum.OccurrenceOriginalStartTime.Value, rum); } }
internal void AddStep(RumInfo rum) { if (rum == null) { throw new ArgumentNullException("rum", "RUM cannot be null."); } if (!rum.IsNullOp) { if (rum.IsOccurrenceRum) { this.AddOccurrenceRum(rum); return; } this.MasterRum = RumInfo.Merge(this.MasterRum, rum); this.OccurrenceRums.Clear(); } }