protected override void OnConvert(BufferEntity cEntity, BaseLogicEntity <TEntity> lEntity) { // 转换字节数据 var msg = OnConvert(lEntity.Entity); var caches = ProtoBufSerialize.Serialize(msg); // 创建通信实体 InitilizeBuffer(cEntity, caches); }
protected virtual void InitilizeBuffer(BufferEntity buffer, byte[] caches) { if (buffer == null) { return; } buffer.FindKey = FindKey; if (buffer.Bytes == null) { buffer.Bytes = new byte[caches.Length]; } else if (buffer.Bytes.Length < caches.Length) { Array.Resize(ref buffer.Bytes, caches.Length); } Array.Copy(caches, 0, buffer.Bytes, 0, caches.Length); buffer.BytesLength = caches.Length; }
protected override void SetRouteing(BufferEntity cEntity, BaseLogicEntity <TEntity> lEntity) { var routeingString = GetRouteingString(lEntity.Entity); cEntity.SetRouteing(routeingString); }