Exemple #1
0
        /// <summary>
        /// Initializes a new instance of the <see cref="DefaultApiVersionDescriptionProvider"/> class.
        /// </summary>
        /// <param name="actionDescriptorCollectionProvider">The <see cref="IActionDescriptorCollectionProvider">provider</see> used to enumerate the actions within an application.</param>
        /// <param name="groupNameFormatter">The <see cref="IApiVersionGroupNameFormatter">formatter</see> used to get group names for API versions.</param>
        public DefaultApiVersionDescriptionProvider(IActionDescriptorCollectionProvider actionDescriptorCollectionProvider, IApiVersionGroupNameFormatter groupNameFormatter)
        {
            Arg.NotNull(actionDescriptorCollectionProvider, nameof(actionDescriptorCollectionProvider));
            Arg.NotNull(groupNameFormatter, nameof(groupNameFormatter));

            apiVersionDescriptions = new Lazy <IReadOnlyList <ApiVersionDescription> >(() => EnumerateApiVersions(actionDescriptorCollectionProvider));
            GroupNameFormatter     = groupNameFormatter;
        }
Exemple #2
0
        /// <summary>
        /// Initializes a new instance of <see cref="VersionedApiDescriptionProvider"/> class.
        /// </summary>
        /// <param name="groupNameFormatter">The <see cref="IApiVersionGroupNameFormatter">formatter</see> used to get group names for API versions.</param>
        /// <param name="metadadataProvider">The <see cref="IModelMetadataProvider">provider</see> used to retrieve model metadata.</param>
        public VersionedApiDescriptionProvider(IApiVersionGroupNameFormatter groupNameFormatter, IModelMetadataProvider metadadataProvider)
        {
            Arg.NotNull(groupNameFormatter, nameof(groupNameFormatter));
            Arg.NotNull(metadadataProvider, nameof(metadadataProvider));

            GroupNameFormatter = groupNameFormatter;
            MetadadataProvider = metadadataProvider;
        }
Exemple #3
0
        /// <summary>
        /// Initializes a new instance of <see cref="VersionedApiDescriptionProvider"/> class.
        /// </summary>
        /// <param name="groupNameFormatter">The <see cref="IApiVersionGroupNameFormatter">formatter</see> used to get group names for API versions.</param>
        /// <param name="metadadataProvider">The <see cref="IModelMetadataProvider">provider</see> used to retrieve model metadata.</param>
        /// <param name="apiVersioningOptions">The <see cref="IOptions{TOptions}">container</see> of configured <see cref="ApiVersioningOptions">API versioning options</see>.</param>
        public VersionedApiDescriptionProvider(
            IApiVersionGroupNameFormatter groupNameFormatter,
            IModelMetadataProvider metadadataProvider,
            IOptions <ApiVersioningOptions> apiVersioningOptions)
        {
            Arg.NotNull(groupNameFormatter, nameof(groupNameFormatter));
            Arg.NotNull(metadadataProvider, nameof(metadadataProvider));
            Arg.NotNull(apiVersioningOptions, nameof(apiVersioningOptions));

            GroupNameFormatter = groupNameFormatter;
            MetadadataProvider = metadadataProvider;
            options            = apiVersioningOptions;
        }