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.
 
 
 

41 regels
1.2 KiB

  1. using JT808.DotNetty.Interfaces;
  2. using System;
  3. using System.Collections.Generic;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using StackExchange.Redis;
  7. using Microsoft.Extensions.Options;
  8. using JT808.DotNetty.Configurations;
  9. using Microsoft.Extensions.Logging;
  10. namespace JT808.DotNetty.Internal
  11. {
  12. internal class JT808SessionPublishingRedisImpl : IJT808SessionPublishing
  13. {
  14. private IConnectionMultiplexer connectionMultiplexer;
  15. private IOptionsMonitor<JT808Configuration> optionsMonitor;
  16. private ILogger<JT808SessionPublishingRedisImpl> logger;
  17. private JT808SessionPublishingRedisImpl(
  18. ILoggerFactory loggerFactory,
  19. IOptionsMonitor<JT808Configuration> optionsMonitor
  20. )
  21. {
  22. this.optionsMonitor = optionsMonitor;
  23. logger = loggerFactory.CreateLogger<JT808SessionPublishingRedisImpl>();
  24. connectionMultiplexer = ConnectionMultiplexer.Connect(optionsMonitor.CurrentValue.RedisHost);
  25. }
  26. public Task PublishAsync(string topicName, string key, string value)
  27. {
  28. if (connectionMultiplexer.IsConnected)
  29. {
  30. }
  31. return Task.CompletedTask;
  32. }
  33. }
  34. }