示例#1
0
        protected virtual IMessageAcceptance AcceptMessages(Message[] msgs)
        {
            var bookmarks = _queueStorage.Global(actions => _receivedMsgs.Filter(msgs, message => message.Id)
                                                 .Select(x => acceptedBookmarks(actions, x))
                                                 .ToList());

            return(new MessageAcceptance(this, bookmarks, msgs, _queueStorage));
        }
        protected virtual IMessageAcceptance AcceptMessages(Message[] msgs)
        {
            var bookmarks = new List <MessageBookmark>();

            queueStorage.Global(actions =>
            {
                foreach (var msg in receivedMsgs.Filter(msgs, message => message.Id))
                {
                    var queue    = actions.GetQueue(msg.Queue);
                    var bookmark = queue.Enqueue(msg);
                    bookmarks.Add(bookmark);
                }
                actions.Commit();
            });
            return(new MessageAcceptance(this, bookmarks, msgs, queueStorage));
        }