public ApplicationModel BuildModel() { var applicationModel = new ApplicationModel(); foreach (var filter in _globalFilters) { applicationModel.Filters.Add(filter); } var assemblies = _assemblyProvider.CandidateAssemblies; var types = assemblies.SelectMany(a => a.DefinedTypes); if (_logger.IsEnabled(LogLevel.Verbose)) { foreach (var assembly in assemblies) { _logger.WriteVerbose(new AssemblyValues(assembly)); } } foreach (var type in types) { var controllerModel = _applicationModelBuilder.BuildControllerModel(type); if (controllerModel != null) { controllerModel.Application = applicationModel; applicationModel.Controllers.Add(controllerModel); } } return(applicationModel); }
internal protected ApplicationModel BuildModel() { var applicationModel = new ApplicationModel(); foreach (var filter in _globalFilters) { applicationModel.Filters.Add(filter); } foreach (var type in _controllerTypeProvider.ControllerTypes) { var controllerModel = _applicationModelBuilder.BuildControllerModel(type); if (controllerModel != null) { controllerModel.Application = applicationModel; applicationModel.Controllers.Add(controllerModel); } } return(applicationModel); }
public ApplicationModel BuildModel() { var applicationModel = new ApplicationModel(); applicationModel.Filters.AddRange(_globalFilters); var assemblies = _assemblyProvider.CandidateAssemblies; var types = assemblies.SelectMany(a => a.DefinedTypes); foreach (var type in types) { var controllerModel = _applicationModelBuilder.BuildControllerModel(type); if (controllerModel != null) { controllerModel.Application = applicationModel; applicationModel.Controllers.Add(controllerModel); } } return(applicationModel); }
private IEnumerable <Accion> Scavenge() { var actions = new List <Accion>(); foreach (var type in _controllerTypeProvider.ControllerTypes) { var controllerModel = _applicationModelBuilder.BuildControllerModel(type); if (controllerModel == null) { continue; } foreach (var actionModel in controllerModel.Actions) { foreach (var httpMethod in actionModel.HttpMethods) { var keyParts = new[] { httpMethod, actionModel.ActionName, controllerModel.ControllerName }; var key = String.Join(":", keyParts); var action = new Accion { AccionId = key }; actions.Add(action); } } } return(actions); }