using System; using System.Linq; using System.Collections.Generic; using System.Text; namespace APT.Infrastructure.Core { public class LibMessageManager: ILibMessageManager { private readonly List _messages = new List(); public void AddMessage(EFMessageType type, string message) { AddMessage(type, string.Empty, message); } public void AddMessage(EFMessageType type, string code, string message) { lock (_messages) { _messages.Add(new EFApiActionMessage() { Code = code, MessageType = type, Message = message, }); } } public void AddMessage(EFApiActionMessage message) { lock (_messages) { _messages.Add(message); } } public void StoreMessage(EFApiActionResult ret) { if (ret == null) return; if (_messages == null || !_messages.Any()) return; ret.Messages.AddRange(_messages); if (ret.Messages.Any(t => t.MessageType == EFMessageType.Error)) ret.IsError = true; } } }