Exemplo n.º 1
0
        private PageResultInfoViewModel GetPageInfoView(IEnumerable <PageInfoModel> pagesInfo)
        {
            var resultInfoView = new PageResultInfoViewModel();

            if (pagesInfo != null)
            {
                resultInfoView.Pages           = pagesInfo.OrderByDescending(x => x.ResponseTime).ToList();
                resultInfoView.AverageResponse = pagesInfo.Average(x => x.ResponseTime);
            }

            if (resultInfoView.Pages == null)
            {
                resultInfoView.Success = false;
            }
            else
            {
                resultInfoView.Success = true;
            }

            if (resultInfoView.Success)
            {
                resultInfoView.HostUrl = Helper.GetHost(pagesInfo.First().Url);
            }
            else
            {
                resultInfoView.HostUrl = string.Empty;
            }

            return(resultInfoView);
        }
Exemplo n.º 2
0
        public async Task <PageResultInfoViewModel> Results(string url)
        {
            try
            {
                url = Helper.RemoveAfter(url);

                if (string.IsNullOrEmpty(url))
                {
                    return(PageResultInfoViewModel.ErrorWithResult(", Url is empty"));
                }

                if (!await Helper.ExistUrl(url))
                {
                    return(PageResultInfoViewModel.ErrorWithResult(url));
                }

                IEnumerable <SiteInfoModel> siteInfos = await _siteCollector.Collect(url);

                IEnumerable <PageInfoModel> pagesInfo = await AddUpdateResults(siteInfos);

                return(GetPageInfoView(pagesInfo));
            }
            catch (Exception ex)
            {
                throw ex;
            }
        }
Exemplo n.º 3
0
        public async Task <ActionResult> GetResults(string url)
        {
            if (_homeControllerService == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.InternalServerError,
                                                "homeControllerService is null"));
            }

            try
            {
                PageResultInfoViewModel res = await _homeControllerService.Results(url);

                return(Json(res, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest, ex.Message));
            }
        }