Esempio n. 1
0
        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);
        }
Esempio n. 2
0
        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);
        }
Esempio n. 3
0
        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);
        }
Esempio n. 4
0
        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);
        }