public static void UpdateVolatileDataWithExactDate(int id, ExactAiringTimeData data) { if (_volatileDataCache.ContainsKey(id)) { _volatileDataCache[id].ExactAiringTime = data; _volatileDataCache[id].LastFailedAiringTimeFetchAttempt = null; } }
public ExactAiringTimeData ExtractAiringTime(string broadcastLine) { var parts = broadcastLine.Split(':'); if (parts[0] == "Broadcast" && parts[1] != "Unknown") { try { var time = new ExactAiringTimeData(); var timeParts = string.Join(":", parts.Skip(1)).Split(' '); DayOfWeek day = DayOfWeek.Monday; switch (timeParts[1]) { case "Mondays": day = DayOfWeek.Monday; break; case "Tuesdays": day = DayOfWeek.Tuesday; break; case "Wednesdays": day = DayOfWeek.Wednesday; break; case "Thursdays": day = DayOfWeek.Thursday; break; case "Fridays": day = DayOfWeek.Friday; break; case "Saturdays": day = DayOfWeek.Saturday; break; case "Sundays": day = DayOfWeek.Sunday; break; } time.DayOfWeek = day; time.Time = TimeSpan.Parse(timeParts[3]); return(time); } catch (Exception) { return(null); } } return(null); }