Remove indirection in DependencyInjection (#52140)
authorPavel Krymets <pavel@krymets.com>
Wed, 26 May 2021 06:52:11 +0000 (23:52 -0700)
committerGitHub <noreply@github.com>
Wed, 26 May 2021 06:52:11 +0000 (23:52 -0700)
commitecdb90e03e07932d546899c58ec38ec2d064ea7d
treea9f2b41e07d4df33bce685d586cd7661272f5f42
parentef6096dd9e67110f94d2189caecc581cdd86fa31
Remove indirection in DependencyInjection (#52140)

- Remove indirection
- Get rid of scope state and lock on ResolvedServices
- Don't run customer code under the lock
- No public API changes
21 files changed:
src/libraries/Microsoft.Extensions.DependencyInjection/src/DependencyInjectionEventSource.cs
src/libraries/Microsoft.Extensions.DependencyInjection/src/ScopeState.cs [deleted file]
src/libraries/Microsoft.Extensions.DependencyInjection/src/ServiceCollectionContainerBuilderExtensions.cs
src/libraries/Microsoft.Extensions.DependencyInjection/src/ServiceLookup/CallSiteRuntimeResolver.cs
src/libraries/Microsoft.Extensions.DependencyInjection/src/ServiceLookup/CompiledServiceProviderEngine.cs
src/libraries/Microsoft.Extensions.DependencyInjection/src/ServiceLookup/DynamicServiceProviderEngine.cs
src/libraries/Microsoft.Extensions.DependencyInjection/src/ServiceLookup/Expressions/ExpressionResolverBuilder.cs
src/libraries/Microsoft.Extensions.DependencyInjection/src/ServiceLookup/Expressions/ExpressionsServiceProviderEngine.cs
src/libraries/Microsoft.Extensions.DependencyInjection/src/ServiceLookup/ILEmit/ILEmitResolverBuilder.cs
src/libraries/Microsoft.Extensions.DependencyInjection/src/ServiceLookup/ILEmit/ILEmitServiceProviderEngine.cs
src/libraries/Microsoft.Extensions.DependencyInjection/src/ServiceLookup/IServiceProviderEngine.cs [deleted file]
src/libraries/Microsoft.Extensions.DependencyInjection/src/ServiceLookup/IServiceProviderEngineCallback.cs [deleted file]
src/libraries/Microsoft.Extensions.DependencyInjection/src/ServiceLookup/RuntimeServiceProviderEngine.cs
src/libraries/Microsoft.Extensions.DependencyInjection/src/ServiceLookup/ServiceProviderEngine.cs
src/libraries/Microsoft.Extensions.DependencyInjection/src/ServiceLookup/ServiceProviderEngineScope.cs
src/libraries/Microsoft.Extensions.DependencyInjection/src/ServiceLookup/ServiceScopeFactoryCallSite.cs
src/libraries/Microsoft.Extensions.DependencyInjection/src/ServiceLookup/SingletonCallSite.cs [deleted file]
src/libraries/Microsoft.Extensions.DependencyInjection/src/ServiceProvider.cs
src/libraries/Microsoft.Extensions.DependencyInjection/tests/DI.Tests/CallSiteTests.cs
src/libraries/Microsoft.Extensions.DependencyInjection/tests/DI.Tests/ServiceCollectionContainerBuilderTestExtensions.cs
src/libraries/Microsoft.Extensions.DependencyInjection/tests/DI.Tests/ServiceProviderEngineScopeTests.cs