// Copyright (c) .NET Foundation. All rights reserved. // Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information. using System.Collections.Generic; using System.Diagnostics; using Microsoft.AspNetCore.Mvc.Filters; namespace Microsoft.AspNetCore.Mvc.ApplicationModels { [DebuggerDisplay("ApplicationModel: Controllers: {Controllers.Count}, Filters: {Filters.Count}")] public class ApplicationModel : IPropertyModel, IFilterModel, IApiExplorerModel { public ApplicationModel() { ApiExplorer = new ApiExplorerModel(); Controllers = new List(); Filters = new List(); Properties = new Dictionary(); } /// /// Gets or sets the for the application. /// /// /// allows configuration of default settings /// for ApiExplorer that apply to all actions unless overridden by /// or . /// /// If using to set to /// true, this setting will only be honored for actions which use attribute routing. /// public ApiExplorerModel ApiExplorer { get; set; } public IList Controllers { get; private set; } public IList Filters { get; private set; } /// /// Gets a set of properties associated with all actions. /// These properties will be copied to . /// public IDictionary Properties { get; } } }