예제 #1
0
 /// <summary>
 /// 使用队列方式
 /// </summary>
 /// <param name="messageHandler"></param>
 /// <param name="jT808ConfigurationAccessor"></param>
 /// <param name="jT808Config"></param>
 /// <param name="loggerFactory"></param>
 /// <param name="jT808SessionManager"></param>
 public JT808TcpServer(
     JT808MessageHandler messageHandler,
     IOptions <JT808Configuration> jT808ConfigurationAccessor,
     IJT808Config jT808Config,
     ILoggerFactory loggerFactory,
     JT808SessionManager jT808SessionManager)
 {
     MessageHandler = messageHandler;
     SessionManager = jT808SessionManager;
     Logger         = loggerFactory.CreateLogger <JT808TcpServer>();
     Serializer     = jT808Config.GetSerializer();
     Configuration  = jT808ConfigurationAccessor.Value;
     InitServer();
 }
예제 #2
0
 public JT808UdpServer(
     IOptions <JT808Configuration> jT808ConfigurationAccessor,
     IJT808Config jT808Config,
     ILoggerFactory loggerFactory,
     JT808SessionManager jT808SessionManager,
     JT808MessageHandler messageHandler)
 {
     SessionManager  = jT808SessionManager;
     Logger          = loggerFactory.CreateLogger("JT808UdpServer");
     Serializer      = jT808Config.GetSerializer();
     Configuration   = jT808ConfigurationAccessor.Value;
     MessageHandler  = messageHandler;
     LocalIPEndPoint = new System.Net.IPEndPoint(IPAddress.Any, Configuration.UdpPort);
     server          = new Socket(LocalIPEndPoint.AddressFamily, SocketType.Dgram, ProtocolType.Udp);
     server.Bind(LocalIPEndPoint);
 }
예제 #3
0
 /// <summary>
 /// 使用队列方式
 /// </summary>
 /// <param name="configurationMonitor"></param>
 /// <param name="msgProducer"></param>
 /// <param name="msgReplyLoggingProducer"></param>
 /// <param name="messageHandler"></param>
 /// <param name="jT808Config"></param>
 /// <param name="loggerFactory"></param>
 /// <param name="jT808SessionManager"></param>
 public JT808TcpServer(
     IOptionsMonitor <JT808Configuration> configurationMonitor,
     IJT808MsgProducer msgProducer,
     IJT808MsgReplyLoggingProducer msgReplyLoggingProducer,
     JT808MessageHandler messageHandler,
     IJT808Config jT808Config,
     ILoggerFactory loggerFactory,
     JT808SessionManager jT808SessionManager)
 {
     MessageHandler          = messageHandler;
     MsgProducer             = msgProducer;
     MsgReplyLoggingProducer = msgReplyLoggingProducer;
     ConfigurationMonitor    = configurationMonitor;
     SessionManager          = jT808SessionManager;
     Logger     = loggerFactory.CreateLogger <JT808TcpServer>();
     Serializer = jT808Config.GetSerializer();
     InitServer();
 }
예제 #4
0
 public JT808UdpServer(
     IOptionsMonitor <JT808Configuration> configurationMonitor,
     IJT808MsgProducer msgProducer,
     IJT808MsgReplyLoggingProducer msgReplyLoggingProducer,
     IJT808Config jT808Config,
     ILoggerFactory loggerFactory,
     JT808SessionManager jT808SessionManager,
     JT808MessageHandler messageHandler)
 {
     SessionManager          = jT808SessionManager;
     MsgProducer             = msgProducer;
     ConfigurationMonitor    = configurationMonitor;
     MsgReplyLoggingProducer = msgReplyLoggingProducer;
     Logger          = loggerFactory.CreateLogger <JT808UdpServer>();
     Serializer      = jT808Config.GetSerializer();
     MessageHandler  = messageHandler;
     LocalIPEndPoint = new System.Net.IPEndPoint(IPAddress.Any, ConfigurationMonitor.CurrentValue.UdpPort);
     server          = new Socket(LocalIPEndPoint.AddressFamily, SocketType.Dgram, ProtocolType.Udp);
     server.Bind(LocalIPEndPoint);
 }