// Copyright (c) .NET Foundation. All rights reserved. // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. using System.IO; namespace Microsoft.AspNetCore.ResponseCompression { /// /// Provides a specific compression implementation to compress HTTP responses. /// public interface ICompressionProvider { /// /// The encoding name used in the 'Accept-Encoding' request header and 'Content-Encoding' response header. /// string EncodingName { get; } /// /// Indicates if the given provider supports Flush and FlushAsync. If not, compression may be disabled in some scenarios. /// bool SupportsFlush { get; } /// /// Create a new compression stream. /// /// The stream where the compressed data have to be written. /// The compression stream. Stream CreateStream(Stream outputStream); } }