//Deze methode voegt een Scheduled Downtime toe. public ScheduledDownTime AddScheduledDT(string ovmId, DateTime start, DateTime eind, string email) { //Maakt een nieuwe Scheduled Downtime aan. ScheduledDownTime SDT = new ScheduledDownTime() { OvmId = ovmId, Eind = eind, Start = start, Gebruikersnaam = email }; //Deze wordt aangemaakt in de SSHRepository. return(repo.CreateScheduledDT(SDT)); }
internal static bool IsEquivalentTo(this ScheduledDownTime sdt1, ScheduledDownTime sdt2) { var fundamentalsMatch = sdt1.CheckpointId == sdt2.CheckpointId && sdt1.CheckpointName == sdt2.CheckpointName && sdt1.DataSourceInstanceId == sdt2.DataSourceInstanceId && sdt1.DataSourceInstanceGroupId == sdt2.DataSourceInstanceGroupId && sdt1.DataSourceInstanceGroupName == sdt2.DataSourceInstanceGroupName && sdt1.RecurrenceType == sdt2.RecurrenceType && sdt1.TimeZone == sdt2.TimeZone && sdt1.Type == sdt2.Type && sdt1.WebsiteGroupId == sdt2.WebsiteGroupId && sdt1.WebsiteGroupName == sdt2.WebsiteGroupName && sdt1.WebsiteId == sdt2.WebsiteId && sdt1.WebsiteName == sdt2.WebsiteName; if (!fundamentalsMatch) { return(false); } return(sdt1.RecurrenceType switch { ScheduledDownTimeRecurrenceType.OneTime => sdt1.StartDateTimeMs == sdt2.StartDateTimeMs && sdt1.EndDateTimeMs == sdt2.EndDateTimeMs, ScheduledDownTimeRecurrenceType.Daily or ScheduledDownTimeRecurrenceType.Weekly or ScheduledDownTimeRecurrenceType.Monthly or ScheduledDownTimeRecurrenceType.MonthlyByWeek => sdt1.Hour == sdt2.Hour && sdt1.Minute == sdt2.Minute && sdt1.EndHour == sdt2.EndHour && sdt1.EndMinute == sdt2.EndMinute && sdt1.MonthDay == sdt2.MonthDay && sdt1.WeekDay == sdt2.WeekDay && sdt1.WeekOfMonth == sdt2.WeekOfMonth, _ => throw new NotSupportedException($"Recurrence Type {sdt1.RecurrenceType} not supported."), });
//Deze methode verwijdert een Scheduled Downtime uit de databank. public void DeleteScheduledDT(ScheduledDownTime SDT) { ctx.ScheduleTDLijst.Remove(ReadScheduledDTById(SDT.id)); ctx.SaveChanges(); }
//Deze methode voegt een Scheduled Downtime toe aan de databank. public ScheduledDownTime CreateScheduledDT(ScheduledDownTime SDT) { ctx.ScheduleTDLijst.Add(SDT); ctx.SaveChanges(); return(SDT); }
//Deze methode verwijdert een Scheduled Downtime. public void RemoveScheduledDT(ScheduledDownTime SDT) { repo.DeleteScheduledDT(SDT); }