Exemple #1
0
        /// <summary>
        /// 
        /// </summary>
        /// <param name="iTweetId"></param>
        public static void AddTweetToMemCache(int iTweetId, Guid guidUser, string tweetText, DateTime dtTweetTime)
        {
            lock (lockObject)
            {

                if (MemCacheTweet == null)
                {
                    MemCacheTweet = new Dictionary<int, TweetStruct>();
                    listTweets = new LinkedList<int>();
                }

                TweetStruct tweet = new TweetStruct();
                tweet.guidTweet = iTweetId;
                tweet.guidUser = guidUser;
                tweet.tweetText = tweetText;
                tweet.DtTweetTime = dtTweetTime;

                //__Record new tweet
                MemCacheTweet.Add(iTweetId, tweet);
                listTweets.AddFirst(iTweetId);

                //__check size limit and adjust if necessary
                if (listTweets.Count >= MAX_MEMCACHE_TWEETS)
                {
                    int remove = listTweets.Last.Value;
                    listTweets.RemoveLast();
                    MemCacheTweet.Remove(remove);
                }
            }
        }
Exemple #2
0
 public static TweetStruct GetTweet(int iTweetId)
 {
     if (MemCacheTweet.ContainsKey(iTweetId))
     {
         return MemCacheTweet[iTweetId];
     }
     TweetStruct nullTweet = new TweetStruct();
     nullTweet.guidTweet = -1;
     return nullTweet;
 }