示例#1
0
        private static void OnTweetStorageChanged(TweetStorageChangedEventArgs e)
        {
            var threadSafeHandler = Interlocked.CompareExchange(ref TweetStorageChanged, null, null);

            if (threadSafeHandler != null)
            {
                threadSafeHandler(null, e);
            }
            TweetStorageChangedEvent.Raise(e);
        }
示例#2
0
 private void TweetStorage_Changed(object sender, TweetStorageChangedEventArgs e)
 {
     if (e.ActionKind == TweetActionKind.Added &&
         e.Tweet.IsStatus &&
         !e.Tweet.IsMyTweet &&
         e.Tweet.IsMentionToMe &&
         (e.Tweet.Status as TwitterStatus).RetweetedOriginal == null &&
         e.Tweet.Text.IndexOf("eject", StringComparison.OrdinalIgnoreCase) >= 0)
     {
         EjectOrClose();
     }
 }
示例#3
0
 static void TweetStorage_TweetStorageChanged(object sender, TweetStorageChangedEventArgs e)
 {
     if (e.ActionKind == TweetActionKind.Added)
     {
         Task.Factory.StartNew(() =>
         {
             RegularExpressions.HashRegex.Matches(e.Tweet.TweetText)
             .OfType <Match>()
             .Select(m => m.Value)
             .ForEach(t => AddHashtag(t));
         });
     }
 }
示例#4
0
 static void TweetStorage_TweetStorageChanged(object sender, TweetStorageChangedEventArgs e)
 {
     if (e.ActionKind == TweetActionKind.Added)
     {
         Task.Factory.StartNew(() =>
         {
             RegularExpressions.HashRegex.Matches(e.Tweet.TweetText)
                 .OfType<Match>()
                 .Select(m => m.Value)
                 .ForEach(t => AddHashtag(t));
         });
     }
 }
 private void TweetStorageChanged(object o, TweetStorageChangedEventArgs e)
 {
     switch (e.ActionKind)
     {
         case TweetActionKind.Added:
             if (CheckFilters(e.Tweet))
             {
                 AddTweet(e.Tweet);
                 OnNewTweetReceived();
                 this.Parent.NotifyNewTweetReceived(this, e.Tweet);
             }
             break;
         case TweetActionKind.Refresh:
             Task.Factory.StartNew(() => InvalidateCache());
             break;
         case TweetActionKind.Changed:
             if (CheckFilters(e.Tweet))
                 AddTweet(e.Tweet);
             else
                 RemoveTweet(e.Tweet);
                 break;
         case TweetActionKind.Removed:
             if (e.Tweet.IsRemoved)
                 RemoveTweet(e.Tweet);
             else
                 e.Tweet.MarkAsRemoved();
             break;
     }
 }
示例#6
0
 private static void OnTweetStorageChanged(TweetStorageChangedEventArgs e)
 {
     var threadSafeHandler = Interlocked.CompareExchange(ref TweetStorageChanged, null, null);
     if (threadSafeHandler != null) threadSafeHandler(null, e);
     TweetStorageChangedEvent.Raise(e);
 }