// 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; using System.Collections.Generic; using Microsoft.AspNetCore.Mvc.Abstractions; using Microsoft.AspNetCore.Mvc.ModelBinding; namespace Microsoft.AspNetCore.Mvc.ApiExplorer { /// /// Represents an API exposed by this application. /// public class ApiDescription { /// /// Gets or sets for this api. /// public ActionDescriptor ActionDescriptor { get; set; } /// /// Gets or sets group name for this api. /// public string GroupName { get; set; } /// /// Gets or sets the supported HTTP method for this api, or null if all HTTP methods are supported. /// public string HttpMethod { get; set; } /// /// Gets a list of for this api. /// public IList ParameterDescriptions { get; } = new List(); /// /// Gets arbitrary metadata properties associated with the . /// public IDictionary Properties { get; } = new Dictionary(); /// /// Gets or sets relative url path template (relative to application root) for this api. /// public string RelativePath { get; set; } /// /// Gets the list of possible formats for a response. /// /// /// Will be empty if the action returns no response, or if the response type is unclear. Use /// ProducesAttribute on an action method to specify a response type. /// public IList SupportedRequestFormats { get; } = new List(); /// /// Gets the list of possible formats for a response. /// /// /// Will be empty if the action returns no response, or if the response type is unclear. Use /// ProducesAttribute on an action method to specify a response type. /// public IList SupportedResponseTypes { get; } = new List(); } }