示例#1
0
        public static ProgramsResponse MapJsonDataResponseToProgramResponse(JsonDataResponse apiResponse)
        {
            ProgramsResponse programs = new ProgramsResponse();

            programs.response = new List <ProgramResponse>();
            foreach (List <string> programValues in apiResponse.Data)
            {
                ProgramResponse programResponse = new ProgramResponse()
                {
                    GenericType = programValues[0],
                    Id          = programValues[1],
                    IdChannel   = programValues[2],
                    Type        = programValues[3],
                    Title       = programValues[4],
                    Category    = programValues[5],
                    Description = programValues[6],
                    Score       = programValues[7],
                    Image       = programValues[8],
                    EpochStart  = programValues[9],
                    EpochEnd    = programValues[10]
                };
                programs.response.Add(programResponse);
            }

            return(programs);
        }
示例#2
0
        public ProgramsResponse LoadPrimetime(string epoch)
        {
            ProgramsResponse programs = new ProgramsResponse();

            programs.CodeStatus = StatusHelper.GenerateStatus(CodeStatus.Unknown);

            try
            {
                string uri = System.Configuration.ConfigurationManager.ConnectionStrings["primetime"].ToString();
                uri += "?" + epoch;

                using (WebClient wc = new WebClient())
                {
                    string           jsonResponse = wc.DownloadString(uri);
                    JsonDataResponse jsonObject   = JsonConvert.DeserializeObject <JsonDataResponse>(jsonResponse);
                    programs = JsonMapper.MapJsonDataResponseToProgramResponse(jsonObject);
                }

                programs.CodeStatus = StatusHelper.GenerateStatus(CodeStatus.Successful);

                LoggerHelper.LogOuterParams(LoggerLevel.Trace, "LoadPrimetime", ReflectionHelper.GetPropertiesToBeLogged(programs));
            } catch (Exception ex)
            {
                programs.CodeStatus = StatusHelper.GenerateStatus(CodeStatus.Timeout);
                LoggerHelper.LogExceptionParams(LoggerLevel.Exception, "LoadPrimetime", ex);
            }

            return(programs);
        }
示例#3
0
        public ProgramsResponse LoadNowGuideTV(string[] sortBy, string channel)
        {
            ProgramsResponse programs = new ProgramsResponse();

            programs.CodeStatus = StatusHelper.GenerateStatus(CodeStatus.Unknown);

            try
            {
                string uri = System.Configuration.ConfigurationManager.ConnectionStrings["programsNow"].ToString();

                using (WebClient wc = new WebClient())
                {
                    string           jsonResponse = wc.DownloadString(uri);
                    JsonDataResponse jsonObject   = JsonConvert.DeserializeObject <JsonDataResponse>(jsonResponse);
                    programs = JsonMapper.MapJsonDataResponseToProgramResponse(jsonObject);
                }

                if (!String.IsNullOrEmpty(channel))
                {
                    programs.response = programs.response.OrderBy(p => p.IdChannel == channel).ToList();
                }

                if (StringHelper.IsNotNullOrEmpty(sortBy))
                {
                }

                programs.CodeStatus = StatusHelper.GenerateStatus(CodeStatus.Successful);

                LoggerHelper.LogOuterParams(LoggerLevel.Trace, "LoadNowGuideTV", ReflectionHelper.GetPropertiesToBeLogged(programs));
            } catch (Exception ex)
            {
                programs.CodeStatus = StatusHelper.GenerateStatus(CodeStatus.Timeout);
                LoggerHelper.LogExceptionParams(LoggerLevel.Exception, "LoadNowGuideTV", ex);
            }

            return(programs);
        }
示例#4
0
        public string LoadChannelGuide(string idChannel)
        {
            ProgramsResponse programs = ProgramBC.Instance.LoadChannelGuide(idChannel);

            return(ReflectionHelper.GetJsonFromObject(programs));
        }
示例#5
0
        public string LoadPrimetime(string epoch)
        {
            ProgramsResponse programs = ProgramBC.Instance.LoadPrimetime(epoch);

            return(ReflectionHelper.GetJsonFromObject(programs));
        }
示例#6
0
        public string LoadNowGuideTV(string[] sortBy, string channel)
        {
            ProgramsResponse programs = ProgramBC.Instance.LoadNowGuideTV(sortBy, channel);

            return(ReflectionHelper.GetJsonFromObject(programs));
        }