internal HttpWebSocketCompressionFeature(HttpContext context, IHttpUpgradeFeature upgradeFeature, WebSocketCompressionOptions options) { _context = context ?? throw new ArgumentNullException(nameof(context)); _upgradeFeature = upgradeFeature ?? throw new ArgumentNullException(nameof(upgradeFeature)); _options = options ?? throw new ArgumentNullException(nameof(options)); }
/// <summary> /// Adds a <see cref="WebSocketCompressionMiddleware"/> to application pipeline with given options. /// </summary> /// <param name="app">The <see cref="IApplicationBuilder"/> passed to Configure method.</param> /// <param name="options">The options.</param> /// <returns>The original app parameter.</returns> public static IApplicationBuilder UseWebSocketsCompression(this IApplicationBuilder app, WebSocketCompressionOptions options) { if (app == null) { throw new ArgumentNullException(nameof(app)); } if (options == null) { throw new ArgumentNullException(nameof(options)); } return(app.UseMiddleware <WebSocketCompressionMiddleware>(Options.Create(options))); }