/// <summary>
        /// Get a new <see cref="FeedItem"/> from converted <paramref name="entries"/>.
        /// </summary>
        /// <param name="feedItemId">The <see cref="FeedItemTo"/> of the current item</param>
        /// <param name="entries">The list of <see cref="TextEntry"/> to convert</param>
        /// <returns><see cref="FeedItem"/></returns>
        private FeedItem ToFeedItem(FeedItemId feedItemId, List <TextEntry> entries)
        {
            var messages = new List <FeedMessage>(entries.Count);

            foreach (var entry in entries)
            {
                var body    = FeedMessageBody.With(entry.EntryData);
                var message = FeedMessage.With(entry.Id, body, entry.TypeName, entry.TypeVersion);
                messages.Add(message);
            }

            if (_feed.MessagesPerFeedItem == entries.Count)
            {
                return(FeedItem.ArchivedFeedItemWith(feedItemId, feedItemId.Next(), feedItemId.Previous(), messages));
            }

            return(FeedItem.CurrentFeedWith(feedItemId, feedItemId.Previous(), messages));
        }
Exemplo n.º 2
0
 /// <summary>
 /// Gets a new <see cref="FeedMessage"/> with the given properties.
 /// </summary>
 /// <param name="feedMessageId">The id to assign to this message</param>
 /// <param name="body">The payload</param>
 /// <param name="typeName">The the name of the type of message</param>
 /// <param name="typeVersion">The version of the type of message</param>
 /// <returns><see cref="FeedMessage"/></returns>
 public static FeedMessage With(string feedMessageId, FeedMessageBody body, string typeName, int typeVersion) =>
 new FeedMessage(feedMessageId, body, typeName, typeVersion);