using Google.Protobuf; using Google.Protobuf.WellKnownTypes; using ServerCore; using ServerBase; using ServerCommon; using ServerCommon.BusinessLogDomain; using MetaAssets; namespace GameServer.PacketHandler; [PacketHandler("", typeof(ServerMessage.Types.OS2GS_REQ_CREATE_CALIUM_CONTENT_STORAGE), typeof(ReqCreateCaliumContentStorageMQPacketHandler), typeof(RabbitMQ4Game))] public class ReqCreateCaliumContentStorageMQPacketHandler : PacketRecvHandler { public override async Task onProcessPacket(ISession session, IMessage recvMessage) { var server_logic = GameServerApp.getServerLogic(); var rabbitMq = server_logic.getRabbitMqConnector() as RabbitMqConnector; NullReferenceCheckHelper.throwIfNull(rabbitMq, () => "rabbitMq is null !!!"); var msg = recvMessage as ServerMessage; ArgumentNullException.ThrowIfNull(msg); Log.getLogger().info($"ReqCreateCaliumContentStorageMQPacketHandler"); var handler = new ReqCreateCaliumContentStorageHandler(); var result = await handler.createCaliumContentStorage(msg.ReqCreateContentStorage.ContentId, msg.ReqCreateContentStorage.Calium); var response = new ServerMessage(); response.AckCreateContentStorage = new(); response.AckCreateContentStorage.Result = result; rabbitMq.SendMessage(msg.ReqCreateContentStorage.RequestServerName, response); return new(); } }