예제 #1
0
        public TweetFavorited(TweetId tweetId, string userId)
        {
            TweetId = tweetId;
            UserId  = userId;

            When = DateTime.UtcNow;
        }
예제 #2
0
 public Tweet(TweetId id, string text)
 {
     Id   = id;
     Text = text;
 }
예제 #3
0
 public TweetPosted(TweetId tweetId, string userId, string message)
 {
     TweetId = tweetId;
     UserId  = userId;
     Message = message;
 }
예제 #4
0
 public Task FavoriteAsync(TweetId tweetId, string favoritedByUserId)
 {
     return(_runtime.PushAsync($"{tweetId}/favs", new TweetFavorited(tweetId, favoritedByUserId)));
 }
예제 #5
0
        public async Task <IEnumerable <Tuple <string, DateTime> > > FavsOfTweetAsync(TweetId tweetId)
        {
            var recorded = await _streams
                           .OpenReadOnly($"{tweetId}/favs")
                           .RecordAsync();

            return(recorded.Data
                   .Cast <TweetFavorited>()
                   .Select(f => new Tuple <string, DateTime>(f.UserId, f.When)));
        }
예제 #6
0
 public Tweet TweetById(TweetId tweetId)
 {
     return(_tweets[tweetId]);
 }