|
- using System.Threading.Tasks;
- using Microsoft.Extensions.Hosting;
- using System.Threading;
- using JT808.Gateway.PubSub;
-
- namespace JT808.Gateway.BusinessServices.MsgLogging
- {
- public class JT808MsgDownLoggingHostedService : IHostedService
- {
- private readonly IJT808MsgReplyConsumer jT808MsgReplyConsumer;
- private readonly IJT808MsgLogging jT808MsgLogging;
- public JT808MsgDownLoggingHostedService(
- IJT808MsgLogging jT808MsgLogging,
- IJT808MsgReplyConsumer jT808MsgReplyConsumer)
- {
- this.jT808MsgReplyConsumer = jT808MsgReplyConsumer;
- this.jT808MsgLogging = jT808MsgLogging;
- }
-
- public Task StartAsync(CancellationToken cancellationToken)
- {
- jT808MsgReplyConsumer.Subscribe();
- jT808MsgReplyConsumer.OnMessage(item=>
- {
- jT808MsgLogging.Processor(item, JT808MsgLoggingType.down);
- });
- return Task.CompletedTask;
- }
-
- public Task StopAsync(CancellationToken cancellationToken)
- {
- jT808MsgReplyConsumer.Unsubscribe();
- return Task.CompletedTask;
- }
- }
- }
|