You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

52 lines
1.3KB

  1. using HealthMonitor.Service.Resolver.Interface;
  2. using HealthMonitor.Service.Sub;
  3. using HealthMonitor.Service.Sub.Interface;
  4. using System.Collections.Concurrent;
  5. namespace HealthMonitor.WebApi
  6. {
  7. public class PackageProcess : IDisposable
  8. {
  9. private readonly ILogger<PackageProcess> _logger;
  10. private readonly MsgManager _msgManager;
  11. public PackageProcess(ILogger<PackageProcess> logger, MsgManager msgManager)
  12. {
  13. _logger = logger;
  14. _msgManager = msgManager;
  15. }
  16. public async Task<bool> ResolveAsync()
  17. {
  18. // ConcurrentQueue<Message> messageQueue = new ConcurrentQueue<Message>();
  19. var resolver = _msgManager.GetMsgResolver();
  20. try
  21. {
  22. if (resolver != null)
  23. {
  24. // resolver.SetResolveInfo();
  25. await resolver.ExecuteMessageAsync().ConfigureAwait(false);
  26. }
  27. }
  28. catch (Exception ex)
  29. {
  30. Console.WriteLine(ex.Message);
  31. //_logger.LogError($"[{msg.MessageId}] 未处理异常 message: {ex.Message}\n {ex.StackTrace}");
  32. }
  33. return true;
  34. }
  35. public void Dispose()
  36. {
  37. throw new NotImplementedException();
  38. }
  39. }
  40. }