using DotNetty.Transport.Channels;
using HybirdFrameworkCore.Autofac.Attribute;
using log4net;
using Newtonsoft.Json;
using Service.Car.Msg.Car.Resp;
using Service.Car.Msg.Host.Req;
using Service.Car.Server;
namespace Service.Car.Handler;
///
///
///
[Order(8)]
[Scope("InstancePerDependency")]
public class LockMsgRespHandler : SimpleChannelInboundHandler, IBaseHandler
{
private static readonly ILog Log = LogManager.GetLogger(typeof(LockMsgRespHandler));
///
///
///
///
///
///
protected override void ChannelRead0(IChannelHandlerContext ctx, LockMsgResp msg)
{
LockMsg? lockMsg = CarServerMgr.CarServer.LockMsgPair.Req;
Log.Info($"receive LockMsgResp = {JsonConvert.SerializeObject(msg)}, lockMsg={JsonConvert.SerializeObject(lockMsg)}");
if (lockMsg != null && lockMsg.CarNo == msg.CarNo)
{
CarServerMgr.CarServer.LockMsgPair.SetResp(msg);
}
}
}