Some cleanup of action invoker and related code

The action invoker no longer needs access to model metadata or to the
input formatter selector. This change removes the same as constructor
parameters and cleans up tests which use the invoker.
This commit is contained in:
Ryan Nowak 2015-01-12 16:44:39 -08:00
parent 61d9c2cbf8
commit 08b83fefc3
4 changed files with 2 additions and 29 deletions

View File

@ -22,9 +22,7 @@ namespace Microsoft.AspNet.Mvc
[NotNull] INestedProviderManager<FilterProviderContext> filterProvider,
[NotNull] IControllerFactory controllerFactory,
[NotNull] ControllerActionDescriptor descriptor,
[NotNull] IModelMetadataProvider modelMetadataProvider,
[NotNull] IInputFormattersProvider inputFormatterProvider,
[NotNull] IInputFormatterSelector inputFormatterSelector,
[NotNull] IControllerActionArgumentBinder controllerActionArgumentBinder,
[NotNull] IModelBinderProvider modelBinderProvider,
[NotNull] IModelValidatorProviderProvider modelValidatorProviderProvider,
@ -33,9 +31,7 @@ namespace Microsoft.AspNet.Mvc
: base(
actionContext,
filterProvider,
modelMetadataProvider,
inputFormatterProvider,
inputFormatterSelector,
inputFormatterProvider,
modelBinderProvider,
modelValidatorProviderProvider,
valueProviderFactoryProvider,

View File

@ -13,9 +13,7 @@ namespace Microsoft.AspNet.Mvc
private readonly IControllerFactory _controllerFactory;
private readonly INestedProviderManager<FilterProviderContext> _filterProvider;
private readonly IInputFormattersProvider _inputFormattersProvider;
private readonly IInputFormatterSelector _inputFormatterSelector;
private readonly IModelBinderProvider _modelBinderProvider;
private readonly IModelMetadataProvider _modelMetadataProvider;
private readonly IModelValidatorProviderProvider _modelValidationProviderProvider;
private readonly IValueProviderFactoryProvider _valueProviderFactoryProvider;
private readonly IScopedInstance<ActionBindingContext> _actionBindingContextAccessor;
@ -25,8 +23,6 @@ namespace Microsoft.AspNet.Mvc
IInputFormattersProvider inputFormattersProvider,
INestedProviderManager<FilterProviderContext> filterProvider,
IControllerActionArgumentBinder argumentBinder,
IModelMetadataProvider modelMetadataProvider,
IInputFormatterSelector inputFormatterSelector,
IModelBinderProvider modelBinderProvider,
IModelValidatorProviderProvider modelValidationProviderProvider,
IValueProviderFactoryProvider valueProviderFactoryProvider,
@ -36,9 +32,7 @@ namespace Microsoft.AspNet.Mvc
_inputFormattersProvider = inputFormattersProvider;
_filterProvider = filterProvider;
_argumentBinder = argumentBinder;
_modelMetadataProvider = modelMetadataProvider;
_modelBinderProvider = modelBinderProvider;
_inputFormatterSelector = inputFormatterSelector;
_modelValidationProviderProvider = modelValidationProviderProvider;
_valueProviderFactoryProvider = valueProviderFactoryProvider;
_actionBindingContextAccessor = actionBindingContextAccessor;
@ -60,9 +54,7 @@ namespace Microsoft.AspNet.Mvc
_filterProvider,
_controllerFactory,
actionDescriptor,
_modelMetadataProvider,
_inputFormattersProvider,
_inputFormatterSelector,
_argumentBinder,
_modelBinderProvider,
_modelValidationProviderProvider,

View File

@ -15,10 +15,8 @@ namespace Microsoft.AspNet.Mvc
{
public abstract class FilterActionInvoker : IActionInvoker
{
private readonly IModelMetadataProvider _modelMetadataProvider;
private readonly INestedProviderManager<FilterProviderContext> _filterProvider;
private readonly IInputFormattersProvider _inputFormatterProvider;
private readonly IInputFormatterSelector _inputFormatterSelector;
private readonly IModelBinderProvider _modelBinderProvider;
private readonly IModelValidatorProviderProvider _modelValidatorProviderProvider;
private readonly IValueProviderFactoryProvider _valueProviderFactoryProvider;
@ -43,9 +41,7 @@ namespace Microsoft.AspNet.Mvc
public FilterActionInvoker(
[NotNull] ActionContext actionContext,
[NotNull] INestedProviderManager<FilterProviderContext> filterProvider,
[NotNull] IModelMetadataProvider modelMetadataProvider,
[NotNull] IInputFormattersProvider inputFormatterProvider,
[NotNull] IInputFormatterSelector inputFormatterSelector,
[NotNull] IModelBinderProvider modelBinderProvider,
[NotNull] IModelValidatorProviderProvider modelValidatorProviderProvider,
[NotNull] IValueProviderFactoryProvider valueProviderFactoryProvider,
@ -54,9 +50,7 @@ namespace Microsoft.AspNet.Mvc
ActionContext = actionContext;
_filterProvider = filterProvider;
_modelMetadataProvider = modelMetadataProvider;
_inputFormatterProvider = inputFormatterProvider;
_inputFormatterSelector = inputFormatterSelector;
_modelBinderProvider = modelBinderProvider;
_modelValidatorProviderProvider = modelValidatorProviderProvider;
_valueProviderFactoryProvider = valueProviderFactoryProvider;

View File

@ -1979,9 +1979,7 @@ namespace Microsoft.AspNet.Mvc
filterProvider.Object,
controllerFactory,
actionDescriptor,
new EmptyModelMetadataProvider(),
inputFormattersProvider.Object,
new DefaultInputFormatterSelector(),
Mock.Of<IControllerActionArgumentBinder>(),
new MockModelBinderProvider(),
new MockModelValidatorProviderProvider(),
@ -2015,7 +2013,6 @@ namespace Microsoft.AspNet.Mvc
};
var binder = new Mock<IModelBinder>();
var metadataProvider = new EmptyModelMetadataProvider();
binder.Setup(b => b.BindModelAsync(It.IsAny<ModelBindingContext>()))
.Returns(Task.FromResult(result: false));
var context = new Mock<HttpContext>();
@ -2037,10 +2034,8 @@ namespace Microsoft.AspNet.Mvc
Mock.Of<INestedProviderManager<FilterProviderContext>>(),
controllerFactory.Object,
actionDescriptor,
metadataProvider,
inputFormattersProvider.Object,
new DefaultInputFormatterSelector(),
new DefaultControllerActionArgumentBinder(metadataProvider),
new DefaultControllerActionArgumentBinder(new EmptyModelMetadataProvider()),
new MockModelBinderProvider() { ModelBinders = new List<IModelBinder>() { binder.Object } },
new MockModelValidatorProviderProvider(),
new MockValueProviderFactoryProvider(),
@ -2103,9 +2098,7 @@ namespace Microsoft.AspNet.Mvc
INestedProviderManager<FilterProviderContext> filterProvider,
Mock<IControllerFactory> controllerFactoryMock,
ControllerActionDescriptor descriptor,
IModelMetadataProvider modelMetadataProvider,
IInputFormattersProvider inputFormattersProvider,
IInputFormatterSelector inputFormatterSelector,
IControllerActionArgumentBinder controllerActionArgumentBinder,
IModelBinderProvider modelBinderProvider,
IModelValidatorProviderProvider modelValidatorProviderProvider,
@ -2116,9 +2109,7 @@ namespace Microsoft.AspNet.Mvc
filterProvider,
controllerFactoryMock.Object,
descriptor,
modelMetadataProvider,
inputFormattersProvider,
inputFormatterSelector,
controllerActionArgumentBinder,
modelBinderProvider,
modelValidatorProviderProvider,