using DotNetty.Transport.Channels; using HybirdFrameworkCore.Autofac.Attribute; using HybirdFrameworkCore.Utils; using log4net; using Newtonsoft.Json; using Service.Charger.Msg.Charger.Req; using Service.Charger.Msg.Charger.Resp; namespace Service.Charger.Handler; /// /// 移库完成 处理器 /// [Order(8)] [Scope("InstancePerDependency")] public class MigrationCompleteReqHandler : SimpleChannelInboundHandler, IBaseHandler { /// /// /// private static ILog Log(string? sn) { if (ObjUtils.IsNotNullOrWhiteSpace(sn)) { return LogManager.GetLogger("Charger" + sn); } return LogManager.GetLogger(typeof(MigrationCompleteReqHandler)); } /// /// /// protected override void ChannelRead0(IChannelHandlerContext ctx, MigrationCompleteReq msg) { if (Client.ClientMgr.TryGetClient(ctx.Channel, out string sn, out var client)) { Log(sn).Info($"process {JsonConvert.SerializeObject(msg)}"); ctx.Channel.WriteAndFlushAsync(new Msg.Host.Resp.MigrationCompleteResq()); } } }