Make new HttpContext properties virtual (#10613)

This commit is contained in:
Justin Kotalik 2019-05-29 12:47:17 -07:00 committed by GitHub
parent 760df198c8
commit e16aa29e67
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 7 additions and 6 deletions

View File

@ -250,7 +250,7 @@ namespace Microsoft.AspNetCore.Http
{
protected HttpRequest() { }
public abstract System.IO.Stream Body { get; set; }
public abstract System.IO.Pipelines.PipeReader BodyReader { get; set; }
public virtual System.IO.Pipelines.PipeReader BodyReader { get { throw null; } set { } }
public abstract long? ContentLength { get; set; }
public abstract string ContentType { get; set; }
public abstract Microsoft.AspNetCore.Http.IRequestCookieCollection Cookies { get; set; }
@ -274,7 +274,7 @@ namespace Microsoft.AspNetCore.Http
{
protected HttpResponse() { }
public abstract System.IO.Stream Body { get; set; }
public abstract System.IO.Pipelines.PipeWriter BodyWriter { get; set; }
public virtual System.IO.Pipelines.PipeWriter BodyWriter { get { throw null; } set { } }
public abstract long? ContentLength { get; set; }
public abstract string ContentType { get; set; }
public abstract Microsoft.AspNetCore.Http.IResponseCookies Cookies { get; }
@ -290,7 +290,7 @@ namespace Microsoft.AspNetCore.Http
public abstract void Redirect(string location, bool permanent);
public virtual void RegisterForDispose(System.IDisposable disposable) { }
public virtual void RegisterForDisposeAsync(System.IAsyncDisposable disposable) { }
public abstract System.Threading.Tasks.Task StartAsync(System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken));
public virtual System.Threading.Tasks.Task StartAsync(System.Threading.CancellationToken cancellationToken = default(System.Threading.CancellationToken)) { throw null; }
}
public static partial class HttpResponseWritingExtensions
{

View File

@ -1,6 +1,7 @@
// 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;
using System.IO;
using System.IO.Pipelines;
using System.Threading;
@ -106,7 +107,7 @@ namespace Microsoft.AspNetCore.Http
/// <summary>
/// Gets or sets the request body pipe <see cref="PipeReader"/>.
/// </summary>
public abstract PipeReader BodyReader { get; set; }
public virtual PipeReader BodyReader { get => throw new NotImplementedException(); set => throw new NotImplementedException(); }
/// <summary>
/// Checks the Content-Type header for form types.

View File

@ -47,7 +47,7 @@ namespace Microsoft.AspNetCore.Http
/// <summary>
/// Gets or sets the response body pipe <see cref="PipeWriter"/>
/// </summary>
public abstract PipeWriter BodyWriter { get; set; }
public virtual PipeWriter BodyWriter { get => throw new NotImplementedException(); set => throw new NotImplementedException(); }
/// <summary>
/// Gets or sets the value for the <c>Content-Length</c> response header.
@ -129,6 +129,6 @@ namespace Microsoft.AspNetCore.Http
/// <remarks>
/// If the <see cref="IHttpResponseStartFeature"/> isn't set, StartAsync will default to calling HttpResponse.Body.FlushAsync().
/// </remarks>
public abstract Task StartAsync(CancellationToken cancellationToken = default);
public virtual Task StartAsync(CancellationToken cancellationToken = default) { throw new NotImplementedException(); }
}
}