コード例 #1
0
        public void RemoveSelectedMessages()
        {
            List <Message> removeMessages = LocalMessages.Where(m => m.Selecting).ToList();

            removeMessages.ForEach(m => _db.Entry(m).State = EntityState.Deleted);
            _db.SaveChanges();
            GroupChat.RemoveMessages(groupChat.Messages, removeMessages);
            groupChat.UpdateChat(removeMessages);
        }
コード例 #2
0
        public void GotMessage(Message newMessage)
        {
            Message copyNewMessage = new Message(newMessage);

            LocalMessages.Add(copyNewMessage);
            if (LocalMessages.Count > GroupChat.limitMessage)
            {
                LocalMessages.RemoveRange(0, LocalMessages.Count - GroupChat.limitMessage);
            }
        }
コード例 #3
0
        public static LocalMessages[] GetLocalMessagesesMqReceiveBody(byte[] body)
        {
            string json = Encoding.UTF8.GetString(body);

            if (string.IsNullOrEmpty(json))
            {
                return(new LocalMessages[0]);
            }
            var result = VirtualRoot.JsonSerializer.Deserialize <LocalMessages[]>(json);

            if (result == null)
            {
                result = new LocalMessages[0];
            }
            return(result);
        }
コード例 #4
0
 public static void LocalMessages(LocalMessages localMessages)
 {
     lock (_lockForLocalMessageses) {
         _localMessageses.Add(localMessages);
     }
 }
コード例 #5
0
        public void ChangedMessage(string textMessage, Message editingMessage)
        {
            var message = LocalMessages.FirstOrDefault(m => m.Id == editingMessage.Id);

            message.Text = textMessage;
        }
コード例 #6
0
 public void SendLocal(params IPluginLocalMessage[] messages)
 {
     LocalMessages.AddRange(messages);
     LocalMessageSent.Raise(this, new CommandEventArgs(messages));
 }