4 implementations of IFeatureCollection
Microsoft.AspNetCore.Server.Kestrel.Core (1)
Internal\Http\HttpProtocol.Generated.cs (1)
21internal partial class HttpProtocol : IFeatureCollection,
Microsoft.AspNetCore.Server.Kestrel.Transport.Quic (2)
src\aspnetcore\src\Servers\Kestrel\shared\TransportConnection.Generated.cs (1)
16internal partial class TransportConnection : IFeatureCollection,
src\aspnetcore\src\Servers\Kestrel\shared\TransportMultiplexedConnection.Generated.cs (1)
16internal partial class TransportMultiplexedConnection : IFeatureCollection,
Microsoft.Extensions.Features (1)
FeatureCollection.cs (1)
18public class FeatureCollection : IFeatureCollection
150 references to IFeatureCollection
Microsoft.AspNetCore (2)
WebApplication.cs (2)
77internal IFeatureCollection ServerFeatures => _host.Services.GetRequiredService<IServer>().Features; 78IFeatureCollection IApplicationBuilder.ServerFeatures => ServerFeatures;
Microsoft.AspNetCore.Connections.Abstractions (6)
BaseConnectionContext.cs (1)
26public abstract IFeatureCollection Features { get; }
DefaultConnectionContext.cs (1)
75public override IFeatureCollection Features { get; }
IMulitplexedConnectionListener.cs (1)
35ValueTask<MultiplexedConnectionContext?> AcceptAsync(IFeatureCollection? features = null, CancellationToken cancellationToken = default);
IMultiplexedConnectionFactory.cs (1)
25ValueTask<MultiplexedConnectionContext> ConnectAsync(EndPoint endpoint, IFeatureCollection? features = null, CancellationToken cancellationToken = default);
IMultiplexedConnectionListenerFactory.cs (1)
23ValueTask<IMultiplexedConnectionListener> BindAsync(EndPoint endpoint, IFeatureCollection? features = null, CancellationToken cancellationToken = default);
MultiplexedConnectionContext.cs (1)
29public abstract ValueTask<ConnectionContext> ConnectAsync(IFeatureCollection? features = null, CancellationToken cancellationToken = default);
Microsoft.AspNetCore.Hosting (8)
Builder\ApplicationBuilderFactory.cs (2)
30/// <param name="serverFeatures">An <see cref="IFeatureCollection"/> of HTTP features.</param> 32public IApplicationBuilder CreateBuilder(IFeatureCollection serverFeatures)
Builder\IApplicationBuilderFactory.cs (2)
17/// <param name="serverFeatures">An <see cref="IFeatureCollection"/> of HTTP features.</param> 19IApplicationBuilder CreateBuilder(IFeatureCollection serverFeatures);
Http\DefaultHttpContextFactory.cs (2)
44public HttpContext Create(IFeatureCollection featureCollection) 54internal void Initialize(DefaultHttpContext httpContext, IFeatureCollection featureCollection)
Internal\HostingApplication.cs (1)
50public Context CreateContext(IFeatureCollection contextFeatures)
Internal\WebHost.cs (1)
87public IFeatureCollection ServerFeatures
Microsoft.AspNetCore.Hosting.Abstractions (2)
IWebHost.cs (2)
16/// The <see cref="IFeatureCollection"/> exposed by the configured server. 18IFeatureCollection ServerFeatures { get; }
Microsoft.AspNetCore.Hosting.Server.Abstractions (2)
IHttpApplication.cs (1)
19TContext CreateContext(IFeatureCollection contextFeatures);
IServer.cs (1)
16IFeatureCollection Features { get; }
Microsoft.AspNetCore.Http (46)
Builder\ApplicationBuilder.cs (4)
87/// Gets the <see cref="IFeatureCollection"/> for server features. 92public IFeatureCollection ServerFeatures 96return GetProperty<IFeatureCollection>(ServerFeaturesKey)!; 209public IFeatureCollection ServerFeatures => _applicationBuilder.ServerFeatures;
DefaultHttpContext.cs (10)
28private static readonly Func<IFeatureCollection, IItemsFeature> _newItemsFeature = f => new ItemsFeature(); 30private static readonly Func<IFeatureCollection, IHttpAuthenticationFeature> _newHttpAuthenticationFeature = f => new HttpAuthenticationFeature(); 31private static readonly Func<IFeatureCollection, IHttpRequestLifetimeFeature> _newHttpRequestLifetimeFeature = f => new HttpRequestLifetimeFeature(); 32private static readonly Func<IFeatureCollection, ISessionFeature> _newSessionFeature = f => new DefaultSessionFeature(); 33private static readonly Func<IFeatureCollection, ISessionFeature?> _nullSessionFeature = f => null; 34private static readonly Func<IFeatureCollection, IHttpRequestIdentifierFeature> _newHttpRequestIdentifierFeature = f => new HttpRequestIdentifierFeature(); 63public DefaultHttpContext(IFeatureCollection features) 77public void Initialize(IFeatureCollection features) 139public override IFeatureCollection Features => _features.Collection ?? ContextDisposed(); 232private static IFeatureCollection ContextDisposed()
Features\QueryFeature.cs (3)
17private static readonly Func<IFeatureCollection, IHttpRequestFeature?> _nullRequestFeature = f => null; 38/// <param name="features">The <see cref="IFeatureCollection"/> to initialize.</param> 39public QueryFeature(IFeatureCollection features)
Features\RequestCookiesFeature.cs (3)
15private static readonly Func<IFeatureCollection, IHttpRequestFeature?> _nullRequestFeature = f => null; 35/// <param name="features">The <see cref="IFeatureCollection"/> to initialize.</param> 36public RequestCookiesFeature(IFeatureCollection features)
Features\ResponseCookiesFeature.cs (5)
14private readonly IFeatureCollection _features; 21/// <see cref="IFeatureCollection"/> containing all defined features, including this 24public ResponseCookiesFeature(IFeatureCollection features) 33/// <see cref="IFeatureCollection"/> containing all defined features, including this 38public ResponseCookiesFeature(IFeatureCollection features, ObjectPool<StringBuilder>? builderPool)
Internal\DefaultConnectionInfo.cs (6)
14private static readonly Func<IFeatureCollection, IHttpConnectionFeature> _newHttpConnectionFeature = f => new HttpConnectionFeature(); 15private static readonly Func<IFeatureCollection, ITlsConnectionFeature> _newTlsConnectionFeature = f => new TlsConnectionFeature(); 16private static readonly Func<IFeatureCollection, IConnectionLifetimeNotificationFeature> _newConnectionLifetime = f => new DefaultConnectionLifetimeNotificationFeature(f.Get<IHttpResponseFeature>()); 20public DefaultConnectionInfo(IFeatureCollection features) 25public void Initialize(IFeatureCollection features) 30public void Initialize(IFeatureCollection features, int revision)
Internal\DefaultHttpRequest.cs (4)
16private static readonly Func<IFeatureCollection, IHttpRequestFeature?> _nullRequestFeature = f => null; 17private static readonly Func<IFeatureCollection, IQueryFeature?> _newQueryFeature = f => new QueryFeature(f); 19private static readonly Func<IFeatureCollection, IRequestCookiesFeature> _newRequestCookiesFeature = f => new RequestCookiesFeature(f); 20private static readonly Func<IFeatureCollection, IRouteValuesFeature> _newRouteValuesFeature = f => new RouteValuesFeature();
Internal\DefaultHttpResponse.cs (3)
17private static readonly Func<IFeatureCollection, IHttpResponseFeature?> _nullResponseFeature = f => null; 18private static readonly Func<IFeatureCollection, IHttpResponseBodyFeature?> _nullResponseBodyFeature = f => null; 19private static readonly Func<IFeatureCollection, IResponseCookiesFeature?> _newResponseCookiesFeature = f => new ResponseCookiesFeature(f);
Internal\DefaultWebSocketManager.cs (5)
13private static readonly Func<IFeatureCollection, IHttpRequestFeature?> _nullRequestFeature = f => null; 14private static readonly Func<IFeatureCollection, IHttpWebSocketFeature?> _nullWebSocketFeature = f => null; 19public DefaultWebSocketManager(IFeatureCollection features) 24public void Initialize(IFeatureCollection features) 29public void Initialize(IFeatureCollection features, int revision)
Internal\ResponseCookies.cs (2)
17private readonly IFeatureCollection _features; 23internal ResponseCookies(IFeatureCollection features)
RequestFormReaderExtensions.cs (1)
32var features = request.HttpContext.Features;
Microsoft.AspNetCore.Http.Abstractions (5)
HttpContext.cs (3)
22public abstract IFeatureCollection Features { get; } 106private sealed class HttpContextFeatureDebugView(IFeatureCollection features) 108private readonly IFeatureCollection _features = features;
IApplicationBuilder.cs (1)
25IFeatureCollection ServerFeatures { get; }
IHttpContextFactory.cs (1)
18HttpContext Create(IFeatureCollection featureCollection);
Microsoft.AspNetCore.Http.Connections (3)
Internal\HttpConnectionContext.cs (1)
164public override IFeatureCollection Features { get; }
Internal\HttpConnectionDispatcher.cs (1)
443private static bool ServerHasWebSockets(IFeatureCollection features)
src\aspnetcore\src\Shared\ConnectionEndpointTags.cs (1)
22public static void AddConnectionEndpointTags(ref TagList tags, IFeatureCollection features)
Microsoft.AspNetCore.Http.Features (1)
Properties\AssemblyInfo.cs (1)
7[assembly: TypeForwardedTo(typeof(IFeatureCollection))]
Microsoft.AspNetCore.Mvc.Core (1)
Filters\RequestFormLimitsFilter.cs (1)
34var features = context.HttpContext.Features;
Microsoft.AspNetCore.Server.Kestrel.Core (22)
HttpsConfigurationService.cs (1)
205public override IFeatureCollection Features => _inner.Features;
Internal\BaseHttpConnectionContext.cs (2)
20IFeatureCollection connectionFeatures, 43public IFeatureCollection ConnectionFeatures { get; }
Internal\Http\HttpProtocol.cs (1)
104public IFeatureCollection ConnectionFeatures => _context.ConnectionFeatures;
Internal\Http\HttpProtocol.Generated.cs (5)
183bool IFeatureCollection.IsReadOnly => false; 185int IFeatureCollection.Revision => _featureRevision; 187object? IFeatureCollection.this[Type key] 491TFeature? IFeatureCollection.Get<TFeature>() where TFeature : default 651void IFeatureCollection.Set<TFeature>(TFeature? feature) where TFeature : default
Internal\Http2\Http2Connection.cs (1)
216public IFeatureCollection ConnectionFeatures => _context.ConnectionFeatures;
Internal\Http2\Http2StreamContext.cs (1)
21IFeatureCollection connectionFeatures,
Internal\Http3\Http3StreamContext.cs (1)
21IFeatureCollection connectionFeatures,
Internal\HttpConnectionContext.cs (1)
21IFeatureCollection connectionFeatures,
Internal\HttpMultiplexedConnectionContext.cs (1)
20IFeatureCollection connectionFeatures,
Internal\KestrelServerImpl.cs (1)
113public IFeatureCollection Features { get; }
Internal\WebTransport\WebTransportStream.cs (2)
22private readonly IFeatureCollection _features; 32public override IFeatureCollection Features => _features;
KestrelServer.cs (1)
45public IFeatureCollection Features => _innerKestrelServer.Features;
Middleware\LoggingMultiplexedConnectionMiddleware.cs (3)
44public override IFeatureCollection Features => _inner.Features; 67public override async ValueTask<ConnectionContext> ConnectAsync(IFeatureCollection? features = null, CancellationToken cancellationToken = default) 121public override IFeatureCollection Features => _inner.Features;
src\aspnetcore\src\Shared\ConnectionEndpointTags.cs (1)
22public static void AddConnectionEndpointTags(ref TagList tags, IFeatureCollection features)
Microsoft.AspNetCore.Server.Kestrel.Transport.Quic (16)
Internal\QuicConnectionContext.cs (1)
210public override async ValueTask<ConnectionContext> ConnectAsync(IFeatureCollection? features = null, CancellationToken cancellationToken = default)
Internal\QuicConnectionListener.cs (1)
146public async ValueTask<MultiplexedConnectionContext?> AcceptAsync(IFeatureCollection? features = null, CancellationToken cancellationToken = default)
QuicTransportFactory.cs (1)
38public async ValueTask<IMultiplexedConnectionListener> BindAsync(EndPoint endpoint, IFeatureCollection? features = null, CancellationToken cancellationToken = default)
src\aspnetcore\src\Servers\Kestrel\shared\TransportConnection.cs (2)
20public IFeatureCollection? MultiplexedConnectionFeatures { get; protected set; } 36public override IFeatureCollection Features => this;
src\aspnetcore\src\Servers\Kestrel\shared\TransportConnection.Generated.cs (5)
125bool IFeatureCollection.IsReadOnly => false; 127int IFeatureCollection.Revision => _featureRevision; 129object? IFeatureCollection.this[Type key] 265TFeature? IFeatureCollection.Get<TFeature>() where TFeature : default 341void IFeatureCollection.Set<TFeature>(TFeature? feature) where TFeature : default
src\aspnetcore\src\Servers\Kestrel\shared\TransportMultiplexedConnection.cs (1)
30public override IFeatureCollection Features => this;
src\aspnetcore\src\Servers\Kestrel\shared\TransportMultiplexedConnection.Generated.cs (5)
112bool IFeatureCollection.IsReadOnly => false; 114int IFeatureCollection.Revision => _featureRevision; 116object? IFeatureCollection.this[Type key] 204TFeature? IFeatureCollection.Get<TFeature>() where TFeature : default 251void IFeatureCollection.Set<TFeature>(TFeature? feature) where TFeature : default
Microsoft.AspNetCore.SignalR.Core (4)
HubCallerContext.cs (1)
37public abstract IFeatureCollection Features { get; }
HubConnectionContext.cs (1)
148public virtual IFeatureCollection Features => _connectionContext.Features;
Internal\DefaultHubCallerContext.cs (1)
34public override IFeatureCollection Features => _connection.Features;
src\aspnetcore\src\Shared\ConnectionEndpointTags.cs (1)
22public static void AddConnectionEndpointTags(ref TagList tags, IFeatureCollection features)
Microsoft.Extensions.Features (22)
FeatureCollection.cs (3)
14/// Default implementation for <see cref="IFeatureCollection"/>. 21private readonly IFeatureCollection? _defaults; 49public FeatureCollection(IFeatureCollection defaults)
FeatureCollectionExtensions.cs (4)
10/// Extension methods for getting feature from <see cref="IFeatureCollection"/> 18/// <param name="featureCollection">The <see cref="IFeatureCollection"/>.</param> 21public static TFeature GetRequiredFeature<TFeature>(this IFeatureCollection featureCollection) 36public static object GetRequiredFeature(this IFeatureCollection featureCollection, Type key)
FeatureReference.cs (4)
29/// <param name="features">The <see cref="IFeatureCollection"/>.</param> 31public T? Fetch(IFeatureCollection features) 45/// <param name="features">The <see cref="IFeatureCollection"/> to update.</param> 48public T Update(IFeatureCollection features, T feature)
FeatureReferences.cs (11)
18/// <param name="collection">The <see cref="IFeatureCollection"/>.</param> 19public FeatureReferences(IFeatureCollection collection) 29/// <param name="collection">The <see cref="IFeatureCollection"/> to initialize with.</param> 31public void Initalize(IFeatureCollection collection) 40/// <param name="collection">The <see cref="IFeatureCollection"/> to initialize with.</param> 41/// <param name="revision">The version of the <see cref="IFeatureCollection"/>.</param> 43public void Initalize(IFeatureCollection collection, int revision) 50/// Gets the <see cref="IFeatureCollection"/>. 52public IFeatureCollection Collection { get; private set; } 143public TFeature? Fetch<TFeature>(ref TFeature? cached, Func<IFeatureCollection, TFeature?> factory) 154throw new ObjectDisposedException(nameof(Collection), nameof(IFeatureCollection) + " has been disposed.");
Microsoft.Extensions.ServiceDiscovery (1)
ServiceEndpointBuilder.cs (1)
30public IFeatureCollection Features => _features;
Microsoft.Extensions.ServiceDiscovery.Abstractions (8)
Internal\ServiceEndpointImpl.cs (2)
9internal sealed class ServiceEndpointImpl(EndPoint endPoint, IFeatureCollection? features = null) : ServiceEndpoint 13public override IFeatureCollection Features { get; } = features ?? new FeatureCollection();
IServiceEndpointBuilder.cs (1)
22IFeatureCollection Features { get; }
ServiceEndpoint.cs (2)
24public abstract IFeatureCollection Features { get; } 32public static ServiceEndpoint Create(EndPoint endPoint, IFeatureCollection? features = null)
ServiceEndpointSource.cs (3)
25public ServiceEndpointSource(List<ServiceEndpoint>? endpoints, IChangeToken changeToken, IFeatureCollection features) 48public IFeatureCollection Features { get; } 65public IFeatureCollection Features => value.Features;
Microsoft.Extensions.ServiceDiscovery.Tests (1)
ExtensionsServicePublicApiTests.cs (1)
210IFeatureCollection features = null!;