public UdpInit Load(Type type) { world.Globel.AddComponent <PIDComponent>(); world.Globel.AddComponent <ConnectorsComponent>(); world.Globel.AddComponent <SocketComponent>(); MsgMaper.Load(type); return(this); }
public override Task Run(UdpResult result, ConnectorsComponent connectors, UdpSender sender) { return(Task.Factory.StartNew(() => { uint eid; if (connectors.dictionary.TryGetValue(result.endPoint, out eid)) { ushort func = result.stream.GetUShort(); IPaylodable paylodable = MsgMaper.Get(func); if (paylodable == null) { return; } paylodable.GetFrom(result.stream); APDealer dealer = world.GetBehavior <APDealer>(MsgMaper.Get(paylodable.GetType().Name)); dealer?.Deal(eid, paylodable); ByteStream.Return(result.stream as ByteStream); } })); }