1234567891011121314151617181920212223242526272829 |
- using System;
- using System.Collections.Generic;
- using System.IO;
- using System.IO.Compression;
- using System.Linq;
- using System.Threading.Tasks;
- namespace JsonRPC4.Common.Tools
- {
- public class DefaultStreamCompressor : IStreamCompressor
- {
- public bool TryGetCompressionStream(Stream uncompressedStream, string encoding, CompressionMode mode, out Stream compressedStream)
- {
- switch (encoding)
- {
- case "gzip":
- compressedStream = new GZipStream(uncompressedStream, mode, leaveOpen: false);
- return true;
- case "deflate":
- compressedStream = new DeflateStream(uncompressedStream, mode, leaveOpen: false);
- return true;
- default:
- compressedStream = uncompressedStream;
- return false;
- }
- }
- }
- }
|