public static IApplicationBuilder UseStreams(this IApplicationBuilder builder, StreamResource streams) => builder.MapWhen(IsMatch, Configure(streams));
public static IApplicationBuilder UseStreams(this IApplicationBuilder builder, StreamResource streams) => builder .UseMiddlewareLogging(typeof(StreamsMiddleware)) .MapWhen(HttpMethod.Get, inner => inner.UseAccept(Constants.MediaTypes.HalJson).Use(GetStream(streams))) .MapWhen(HttpMethod.Delete, inner => inner.Use(DeleteStream(streams))) .MapWhen( HttpMethod.Post, inner => inner.UseAccept(Constants.MediaTypes.HalJson).Use(AppendStream(streams))) .UseAllowedMethods(streams);