using JT808.Gateway.Abstractions;
using Microsoft.Extensions.DependencyInjection;
using System;
using System.Collections.Generic;
using System.Text;
namespace JT808.Gateway.SessionNotice
{
public static class JT808SessionNoticeExtensions
{
///
/// 会话通知服务(不同的消费者实例)
///
///
///
public static IJT808ClientBuilder AddSessionNotice(this IJT808ClientBuilder jT808ClientBuilder)
{
jT808ClientBuilder.JT808Builder.Services.AddSingleton();
jT808ClientBuilder.JT808Builder.Services.AddHostedService();
return jT808ClientBuilder;
}
///
/// 消息会话通知服务(不同的消费者实例)
///
/// 自定义会话通知服务
///
///
public static IJT808ClientBuilder AddSessionNotice(this IJT808ClientBuilder jT808ClientBuilder)
where TSessionNoticeService : JT808SessionNoticeService
{
jT808ClientBuilder.JT808Builder.Services.AddSingleton();
jT808ClientBuilder.JT808Builder.Services.AddHostedService();
return jT808ClientBuilder;
}
///
/// 会话通知服务(不同的消费者实例)
///
///
///
public static IJT808GatewayBuilder AddSessionNotice(this IJT808GatewayBuilder jT808NormalGatewayBuilder)
{
jT808NormalGatewayBuilder.JT808Builder.Services.AddSingleton();
jT808NormalGatewayBuilder.JT808Builder.Services.AddHostedService();
return jT808NormalGatewayBuilder;
}
///
/// 消息会话通知服务(不同的消费者实例)
///
/// 自定义会话通知服务
///
///
public static IJT808GatewayBuilder AddSessionNotice(this IJT808GatewayBuilder jT808NormalGatewayBuilder)
where TSessionNoticeService : JT808SessionNoticeService
{
jT808NormalGatewayBuilder.JT808Builder.Services.AddSingleton();
jT808NormalGatewayBuilder.JT808Builder.Services.AddHostedService();
return jT808NormalGatewayBuilder;
}
}
}