public RpcClient Build() { var streamCompressor = new DefaultStreamCompressor(); var httpClientFactory = new DefaultHttpClientFactory(); var transportClient = new HttpRpcTransportClient( streamCompressor, httpClientFactory, encoding: this.options.Encoding, contentType: this.options.ContentType, headers: this.options.Headers, httpAuthHeaderFactory: this.httpAuthHeaderFactory); var requestSerializer = new DefaultRequestJsonSerializer(this.jsonSerializerSettings); return(new RpcClient(this.BaseUrl, transportClient, requestSerializer, this.Events)); }
public static void RunCompression() { var compressor = new DefaultStreamCompressor(); const string text = "df;lkajsd;flkja;lksdjf;lkajsd;lkfjl;aksjdfl;kjas;kldjfkl;ajsd;lkfjalk;sdjflk;ajsd;klfjal;ksdjfl;kajsdklf;j"; using (Stream inputStream = new MemoryStream(Encoding.UTF8.GetBytes(text))) { for (int i = 0; i < 1_000_000; i++) { using (MemoryStream compressedStream = new MemoryStream((int)inputStream.Length)) { compressor.Compress(inputStream, compressedStream, CompressionType.Gzip); compressedStream.Position = 0; using (MemoryStream uncompressedStream = new MemoryStream((int)inputStream.Length)) { compressor.Decompress(compressedStream, uncompressedStream, CompressionType.Gzip); } } } } }