public async Task <IActionResult> getGplusfeeds(long boardId, int skip, int count)
        {
            try
            {
                DatabaseRepository dbr = new DatabaseRepository(_logger, _env);
                Domain.Socioboard.Models.MongoBoards board = BoardMeRepository.getBoard(boardId, _redisCache, _appSettings, _logger, dbr);
                MongoRepository        mongorepo           = new MongoRepository("MongoBoardGplusHashTag", _appSettings);
                MongoBoardGplusHashTag gplushashtag        = await mongorepo.FindFirstOrDefault <MongoBoardGplusHashTag>(x => x.Boardid.Equals(board.boardId)).ConfigureAwait(false);

                List <MongoBoardGplusFeeds> GplusFeedsList = GplusRepository.AddBoardGplusTagFeeds(gplushashtag.Displayname, board.gplusHashTag, _appSettings, _logger);
                if (GplusFeedsList.Count == 0)
                {
                    MongoRepository boardrepo = new MongoRepository("MongoBoardGplusFeeds", _appSettings);
                    var             builder   = Builders <MongoBoardGplusFeeds> .Sort;
                    var             sort      = builder.Descending(t => t.Publishedtime);
                    IList <MongoBoardGplusFeeds> objTwitterPagelist = await boardrepo.FindWithRange <MongoBoardGplusFeeds>(t => t.Gplusboardaccprofileid.Equals(board.gplusHashTag) && t.Feedlink != null, sort, skip, count);

                    List <MongoBoardGplusFeeds> lstBGFeeds = objTwitterPagelist.ToList();
                    foreach (var items_lstBGFeed in lstBGFeeds)
                    {
                        if (items_lstBGFeed.FromName.Any(c => char.IsSymbol(c)) || items_lstBGFeed.Title.Contains("¾"))
                        {
                            objTwitterPagelist.Remove(items_lstBGFeed);
                        }
                    }
                    return(Ok(objTwitterPagelist));
                }
                return(Ok(GplusFeedsList));
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.StackTrace);
                return(Ok("Something Went Wrong"));
            }
        }
Exemple #2
0
        /// <summary>
        /// create an Gplus Hash Tag and fetch all feeds with hash tag and saves in Db
        /// </summary>
        /// <param name="hashTag"> hashtag needs to search.</param>
        /// <param name="boardId"> board id to which we need to add the hasttag.</param>
        /// <param name="_redisCache"> redis cache object</param>
        /// <param name="settings">Application settings class </param>
        /// <param name="_logger"> Serial log object</param>
        /// <returns> gplus hashtag id.</returns>
        public async Task <string> AddGplusHashTag(string hashTag, string boardId, Helper.Cache _redisCache, Helper.AppSettings settings, ILogger _logger)
        {
            MongoBoardGplusHashTag bgpacc = new MongoBoardGplusHashTag {
                Id = ObjectId.GenerateNewId(), strId = ObjectId.GenerateNewId().ToString(), Aboutme = string.Empty, Boardid = boardId, Circledbycount = string.Empty, Coverphotourl = string.Empty, Displayname = hashTag.ToLower(), Entrydate = DateTime.UtcNow.ToString(), Nickname = hashTag, Pageid = "tag", Pageurl = string.Empty, Plusonecount = string.Empty, Profileimageurl = string.Empty, Tagline = string.Empty
            };
            MongoRepository boardrepo = new MongoRepository("MongoBoardGplusHashTag", settings);
            IList <MongoBoardGplusHashTag> objgplusPagelist = await boardrepo.Find <MongoBoardGplusHashTag>(t => t.Displayname.Equals(hashTag.ToLower()) && t.Pageid.Equals("tag")).ConfigureAwait(false);

            if (objgplusPagelist.Count() > 0)
            {
                return(objgplusPagelist.First().strId.ToString());
            }
            await boardrepo.Add <MongoBoardGplusHashTag>(bgpacc).ConfigureAwait(false);

            //AddBoardGplusTagFeeds(hashTag, bgpacc.strId.ToString(),_redisCache,settings, _logger);
            return(bgpacc.strId.ToString());
        }
Exemple #3
0
        public string AddGplusHashTag(string hashTag, string boardId)
        {
            MongoBoardGplusHashTag bgpacc = new MongoBoardGplusHashTag {
                Id = ObjectId.GenerateNewId(), strId = ObjectId.GenerateNewId().ToString(), Aboutme = string.Empty, Boardid = boardId, Circledbycount = string.Empty, Coverphotourl = string.Empty, Displayname = hashTag.ToLower(), Entrydate = DateTime.UtcNow.ToString(), Nickname = hashTag, Pageid = "tag", Pageurl = string.Empty, Plusonecount = string.Empty, Profileimageurl = string.Empty, Tagline = string.Empty
            };
            MongoRepository boardrepo = new MongoRepository("MongoBoardGplusHashTag");
            //var ret= boardrepo.Find<MongoBoardGplusHashTag>(t => t.Displayname.Equals(hashTag.ToLower()) && t.Pageid.Equals("tag"));
            var ret  = boardrepo.Find <MongoBoardGplusHashTag>(t => t.strId.Equals(hashTag) && t.Pageid.Equals("tag"));
            var task = Task.Run(async() =>
            {
                return(await ret);
            });
            IList <MongoBoardGplusHashTag> objgplusPagelist = task.Result;

            if (objgplusPagelist.Count() > 0)
            {
                AddBoardGplusTagFeeds(objgplusPagelist.First().Displayname, objgplusPagelist.First().strId.ToString());
            }
            return(objgplusPagelist.First().strId.ToString());
        }
Exemple #4
0
        public async Task <string> AddGplusHashTagFBPlugin(string hashTag, string boardId, Helper.Cache _redisCache, Helper.AppSettings _appSettings, ILogger _logger)
        {
            MongoBoardGplusHashTag bgpacc = new MongoBoardGplusHashTag {
                Id = ObjectId.GenerateNewId(), strId = ObjectId.GenerateNewId().ToString(), Aboutme = string.Empty, Boardid = boardId, Circledbycount = string.Empty, Coverphotourl = string.Empty, Displayname = hashTag.ToLower(), Entrydate = DateTime.UtcNow.ToString(), Nickname = hashTag, Pageid = "tag", Pageurl = string.Empty, Plusonecount = string.Empty, Profileimageurl = string.Empty, Tagline = string.Empty
            };
            MongoRepository boardrepo = new MongoRepository("MongoBoardGplusHashTag", _appSettings);

            try
            {
                var ret  = boardrepo.Find <MongoBoardGplusHashTag>(t => t.Displayname.Equals(hashTag.ToLower()) && t.Pageid.Equals("tag"));
                var task = Task.Run(async() =>
                {
                    return(await ret);
                });
                IList <MongoBoardGplusHashTag> objgplusPagelist = task.Result.ToList();
                if (objgplusPagelist.Count() > 0)
                {
                    return(objgplusPagelist.First().strId.ToString());
                }
                boardrepo.Add <MongoBoardGplusHashTag>(bgpacc);
                new Thread(delegate()
                {
                    AddBoardGplusTagFeeds(hashTag, bgpacc.strId.ToString(), _appSettings);
                }).Start();
                return(bgpacc.strId.ToString());
            }
            catch (Exception)
            {
                boardrepo.Add <MongoBoardGplusHashTag>(bgpacc);
                new Thread(delegate()
                {
                    AddBoardGplusTagFeeds(hashTag, bgpacc.strId.ToString(), _appSettings);
                }).Start();
                return(bgpacc.strId.ToString());
            }
        }