Esempio n. 1
0
 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);
        }