protected override void OnOperationRequest(OperationRequest operationRequest, SendParameters sendParameters) { OperationResponse response; switch ((OperationCode)operationRequest.OperationCode) { default: response = new OperationResponse(operationRequest.OperationCode) { ReturnCode = (short)ReturnCode.OperationInvalid, DebugMessage = "Unknown operation code" }; break; case OperationCode.GetServerList: { var responseObject = new GetServerListResponse { ServerList = this.application.ServerInfoCollection.GetInfo() }; response = new OperationResponse(operationRequest.OperationCode, responseObject); break; } case OperationCode.GetServerVersion: { var responseObject = new GetServerVersionResponse { serverVersion = application.appVersion.ToString() }; response = new OperationResponse(operationRequest.OperationCode, responseObject); break; } case OperationCode.GetNews: { GetNewsRequest request = new GetNewsRequest(Protocol, operationRequest); if (!request.IsValid) { response = new OperationResponse(operationRequest.OperationCode) { ReturnCode = (short)ReturnCode.InvalidOperationParameter, DebugMessage = "lang" }; } else { Hashtable newsHash = application.news.GetNews(request.lang); GetNewsResponse responseObject = new GetNewsResponse { news = newsHash }; response = new OperationResponse(operationRequest.OperationCode, responseObject); } break; } } if (response != null) { this.SendOperationResponse(response, sendParameters); } }
private void setUpNewsResponse(GetNewsResponse r) => AddStep("set up response", () => { dummyAPI.HandleRequest = request => { if (!(request is GetNewsRequest getNewsRequest)) { return;
private void setUpNewsResponse(GetNewsResponse r, string testName = "Set up response") => AddStep(testName, () => { dummyAPI.HandleRequest = request => { if (!(request is GetNewsRequest getNewsRequest)) { return(false);
public async Task <ActionResult <GetNewsResponse> > GetAllNews() { var news = await newsService.GetAllNewsAsync().ConfigureAwait(false); var ret = new GetNewsResponse { Success = true }; ret.News.AddRange(news); return(ret); }
public override Task <GetNewsResponse> GetNews(GetNewsRequest request, ServerCallContext context) { var basePageFilter = new BasicPageFilter() { PageIndex = request.PageIndex, PageSize = request.PageSize, }; var news = _newsService.GetNews(basePageFilter).Select(n => NewsGrpcConverter.ToMessage(n)).ToList(); var response = new GetNewsResponse(); response.News.AddRange(news); return(Task.FromResult(response)); }
public static GetNewsResponse Execute(ElementRequest request) { var news = DbHelper.GetNews(Guid.Parse(request.Txt)); var img_for_news = DbHelper.GetPhotoForNews(news.id_news); var photo = new List <Photo>(); if (!img_for_news.Any() && news.type == 1) { photo.Add(new Photo { Url = "url(./content/img/news.png)" }); } foreach (var item in img_for_news) { photo.Add(new Photo { Id = item.id_img_for_news.ToString(), Url = item.url_bd }); } var response = new GetNewsResponse { News = new FullNews { Id = news.id_news.ToString(), Text = news.text, Title = news.title, Date = news.date.ToShortDateString(), Type = news.type, Top = news.top, Photo = photo, UrlVideo = DbHelper.GetVideoForNews(news.id_news), CommandOne = news.id_command_one.ToString(), CommandTwo = news.id_command_two.ToString() } }; return(response); }
private void onSuccess(GetNewsResponse response) { cancellationToken?.Cancel(); // only needs to be updated on the initial load, as the content won't change during pagination. if (lastCursor == null) { SidebarMetadataUpdated?.Invoke(response.SidebarMetadata); } // store cursor for next pagination request. lastCursor = response.Cursor; LoadComponentsAsync(response.NewsPosts.Select(p => new NewsCard(p)).ToList(), loaded => { content.AddRange(loaded); showMore.IsLoading = false; showMore.Alpha = response.Cursor != null ? 1 : 0; }, (cancellationToken = new CancellationTokenSource()).Token); }
private void onSuccess(GetNewsResponse response) { cancellationToken?.Cancel(); lastCursor = response.Cursor; var flow = new FillFlowContainer <NewsCard> { RelativeSizeAxes = Axes.X, AutoSizeAxes = Axes.Y, Direction = FillDirection.Vertical, Spacing = new Vector2(0, 10), Children = response.NewsPosts.Select(p => new NewsCard(p)).ToList() }; LoadComponentAsync(flow, loaded => { content.Add(loaded); showMore.IsLoading = false; showMore.Alpha = lastCursor == null ? 0 : 1; }, (cancellationToken = new CancellationTokenSource()).Token); }
public async Task <List <GetNewsResponse> > News(CancellationToken cancellationToken) { var feed = FeedReader.Read("https://waven-game.com/feed/"); var articleImagesUrl = new List <string>(); List <FeedItem> articles = new List <FeedItem>(); foreach (var item in feed.Items) { ArticleFeedModel article = new ArticleFeedModel(); article.InitByFeedItem(item); string html2; using (WebClient client = new WebClient()) { html2 = client.DownloadString(item.Link); } HtmlDocument doc = new HtmlDocument(); doc.LoadHtml(html2); foreach (HtmlNode img in doc.DocumentNode.SelectNodes("//img")) { var articleImageEnteteUrl = img.GetAttributeValue("src", null); if (!articleImageEnteteUrl.Contains("logo")) { article.EnteteUrl = articleImageEnteteUrl; articles.Add(article); break; } } } var json = JsonConvert.SerializeObject(articles); var newsResponse = GetNewsResponse.FromJson(json); return(newsResponse); }