示例#1
0
        internal IPacket Unpack(byte[] data, PackConfig cfg)
        {
            if (cfg != null)
            {
                data = cfg.PreUnpacking(data);
            }

            using (MemoryStream ms = new MemoryStream(data))
                return((IPacket)_nsSerializer.Deserialize(ms));
        }
示例#2
0
        internal byte[] Pack(IPacket p, PackConfig cfg)
        {
            using (MemoryStream ms = new MemoryStream())
            {
                _nsSerializer.Serialize(ms, p);
                byte[] data = ms.ToArray();

                if (cfg != null)
                {
                    data = cfg.PostPacking(data);
                }

                return(data);
            }
        }
示例#3
0
 internal byte[] PackArray(object[] arr, PackConfig cfg)
 {
     return(Pack(new ObjectArrayPacket(arr), cfg));
 }