public void ZlibTest() { BinaryStream stream = new BinaryStream(); stream.WriteStringUtf8("abcdefg"); byte[] compressionZlib = CompressionManager.CompressionZlib(stream, CompressionLevel.Fastest, true); BinaryStream stream2 = new BinaryStream(compressionZlib); byte[] decompressionZlib = CompressionManager.DecompressionZlib(stream2, true); BinaryStream stream3 = new BinaryStream(decompressionZlib); Assert.True(stream3.ReadStringUtf8() == "abcdefg"); }
public void SendDataPacket(DataPacket packet, bool needAck = false, Reliability reliability = Reliability.Reliable, CompressionLevel compressionLevel = CompressionLevel.Fastest) { packet.EncodeHeader(); packet.EncodePayload(); NetworkStream stream = new NetworkStream(); stream.WriteVarInt((int)packet.Length); stream.WriteBytes(packet.GetBuffer()); byte[] payload = CompressionManager.CompressionZlib(stream, compressionLevel, true); BatchPacket batch = new BatchPacket(); batch.Payload = payload; batch.EndPoint = ClientPeer.PeerEndPoint; ClientPeer.SendEncapsulatedPacket(batch, reliability, packet.Channel); }