namespace ET.Client
{
    [Event]
    public class NetClientComponentOnReadEvent: BEvent<NetClientComponentOnRead>
    {
        protected override async ETTask OnEvent(NetClientComponentOnRead args)
        {
            Session session = args.Session;
            object message = args.Message;
            if (message is IResponse response)
            {
                session.OnResponse(response);
                return;
            }
            
            // 普通消息或者是Rpc请求消息
            MessageDispatcherComponent.Instance.Handle(session, message);
            await ETTask.CompletedTask;
        }
    }
}