示例#1
0
        internal static Stream Create(HttpCompression type, Stream stream, bool leaveOpen = true)
        {
            switch (type)
            {
            case HttpCompression.Gzip:
                return(new GZipStream(stream, CompressionMode.Decompress, leaveOpen));

            case HttpCompression.Deflate:
                return(new DeflateStream(stream, CompressionMode.Decompress, leaveOpen));

            case HttpCompression.Brotli:
                return(new BrotliSharpLib.BrotliStream(stream, CompressionMode.Decompress, leaveOpen));

            default:
                throw new Exception($"Unsupported decompression mode: {type}");
            }
        }
示例#2
0
 public override int GetHashCode()
 {
     unchecked
     {
         var hashCode = RequestTimeout.GetHashCode();
         hashCode = (hashCode * 397) ^ PingTimeout.GetHashCode();
         hashCode = (hashCode * 397) ^ KeepAliveTime;
         hashCode = (hashCode * 397) ^ KeepAliveInterval;
         hashCode = (hashCode * 397) ^ Pipelined.GetHashCode();
         hashCode = (hashCode * 397) ^ HttpCompression.GetHashCode();
         hashCode = (hashCode * 397) ^ (Headers?.GetHashCode() ?? 0);
         hashCode = (hashCode * 397) ^ (ProxyAddress?.GetHashCode() ?? 0);
         hashCode = (hashCode * 397) ^ (ProxyUsername?.GetHashCode() ?? 0);
         hashCode = (hashCode * 397) ^ (ProxyPassword?.GetHashCode() ?? 0);
         hashCode = (hashCode * 397) ^ DisableAutomaticProxyDetection.GetHashCode();
         hashCode = (hashCode * 397) ^ (BasicAuthorizationCredentials?.GetHashCode() ?? 0);
         hashCode = (hashCode * 397) ^ (ConnectionSettings?.GetHashCode() ?? 0);
         hashCode = (hashCode * 397) ^ (MemoryStreamFactory?.GetHashCode() ?? 0);
         return(hashCode);
     }
 }
示例#3
0
		public static Stream GetInputStream(Stream inputStream, HttpCompression contentCompression)
		{
			switch (contentCompression)
			{
				case HttpCompression.Gzip:
				{
					return new GZipStream(inputStream, CompressionMode.Decompress, false);
				}

				case HttpCompression.Deflate:
				{
					return new DeflateStream(inputStream, CompressionMode.Decompress, false);
				}

				default:
				{
					return inputStream;
				}
			}
		}