private byte[] GetCompressed(byte[] buffer) { switch (Compression) { case CompressionType.None: return(buffer); case CompressionType.ZLib: return(ZlibStream.CompressBuffer(buffer)); case CompressionType.Snappy: return(SnappyCodec.Compress(buffer)); case CompressionType.Doboz: return(DobozCodec.Encode(buffer, 0, buffer.Length)); case CompressionType.LZ4: return(LZ4.LZ4Codec.Encode(buffer, 0, buffer.Length)); case CompressionType.LZ4HC: return(LZ4.LZ4Codec.EncodeHC(buffer, 0, buffer.Length)); default: throw new MissingCompressionException("Unhandled compression algorithm.") { }; } }