9 implementations of IOpenApiSchemaTransformer
Microsoft.AspNetCore.OpenApi (2)
Transformers\DelegateOpenApiSchemaTransformer.cs (1)
8internal sealed class DelegateOpenApiSchemaTransformer : IOpenApiSchemaTransformer
Transformers\TypeBasedOpenApiSchemaTransformer.cs (1)
11internal sealed class TypeBasedOpenApiSchemaTransformer : IOpenApiSchemaTransformer
Microsoft.AspNetCore.OpenApi.Microbenchmarks (1)
TransformersBenchmark.cs (1)
175private class SchemaTransformer : IOpenApiSchemaTransformer
Microsoft.AspNetCore.OpenApi.Tests (6)
Transformers\OpenApiOptionsTests.cs (1)
196private class TestOpenApiSchemaTransformer : IOpenApiSchemaTransformer
Transformers\SchemaTransformerTests.cs (3)
954private class ActivatedTransformer : IOpenApiSchemaTransformer 967private class DisposableTransformer : IOpenApiSchemaTransformer, IDisposable 985private class AsyncDisposableTransformer : IOpenApiSchemaTransformer, IAsyncDisposable
Transformers\TypeBasedTransformerLifetimeTests.cs (2)
339private class ActivatedSchemaTransformer : IOpenApiSchemaTransformer 358private class ActivatedSchemaTransformerWithDependency: IOpenApiSchemaTransformer
33 references to IOpenApiSchemaTransformer
Microsoft.AspNetCore.OpenApi (28)
Services\OpenApiDocumentService.cs (13)
67? new IOpenApiSchemaTransformer[_options.SchemaTransformers.Count] 103private async Task ApplyTransformersAsync(OpenApiDocument document, IServiceProvider scopedServiceProvider, IOpenApiSchemaTransformer[] schemaTransformers, CancellationToken cancellationToken) 121internal void InitializeTransformers(IServiceProvider scopedServiceProvider, IOpenApiSchemaTransformer[] schemaTransformers, IOpenApiOperationTransformer[] operationTransformers) 150internal static async Task FinalizeTransformers(IOpenApiSchemaTransformer[] schemaTransformers, IOpenApiOperationTransformer[] operationTransformers) 245IOpenApiSchemaTransformer[] schemaTransformers, 266IOpenApiSchemaTransformer[] schemaTransformers, 311IOpenApiSchemaTransformer[] schemaTransformers, 365IOpenApiSchemaTransformer[] schemaTransformers, 400IOpenApiSchemaTransformer[] schemaTransformers, 439IOpenApiSchemaTransformer[] schemaTransformers, 506private async Task<OpenApiRequestBody?> GetRequestBodyAsync(OpenApiDocument document, ApiDescription description, IServiceProvider scopedServiceProvider, IOpenApiSchemaTransformer[] schemaTransformers, CancellationToken cancellationToken) 530IOpenApiSchemaTransformer[] schemaTransformers, 692IOpenApiSchemaTransformer[] schemaTransformers,
Services\OpenApiOptions.cs (4)
19internal readonly List<IOpenApiSchemaTransformer> SchemaTransformers = []; 140/// <typeparam name="TTransformerType">The type of the <see cref="IOpenApiSchemaTransformer"/> to instantiate.</typeparam> 143where TTransformerType : IOpenApiSchemaTransformer 154public OpenApiOptions AddSchemaTransformer(IOpenApiSchemaTransformer transformer)
Services\Schemas\OpenApiSchemaService.cs (5)
121internal async Task<OpenApiSchema> GetOrCreateUnresolvedSchemaAsync(OpenApiDocument? document, Type type, IServiceProvider scopedServiceProvider, IOpenApiSchemaTransformer[] schemaTransformers, ApiParameterDescription? parameterDescription = null, CancellationToken cancellationToken = default) 140internal async Task<IOpenApiSchema> GetOrCreateSchemaAsync(OpenApiDocument document, Type type, IServiceProvider scopedServiceProvider, IOpenApiSchemaTransformer[] schemaTransformers, ApiParameterDescription? parameterDescription = null, CancellationToken cancellationToken = default) 257internal async Task ApplySchemaTransformersAsync(OpenApiDocument? document, IOpenApiSchema schema, Type type, IServiceProvider scopedServiceProvider, IOpenApiSchemaTransformer[] schemaTransformers, ApiParameterDescription? parameterDescription = null, CancellationToken cancellationToken = default) 277var transformer = schemaTransformers[i]; 286IOpenApiSchemaTransformer transformer,
Transformers\OpenApiDocumentTransformerContext.cs (2)
31internal IOpenApiSchemaTransformer[] SchemaTransformers { get; init; } = []; 39/// the schema with any <see cref="IOpenApiSchemaTransformer"/>s that are registered
Transformers\TypeBasedOpenApiSchemaTransformer.cs (4)
23internal IOpenApiSchemaTransformer InitializeTransformer(IServiceProvider serviceProvider) 25var transformer = _transformerFactory.Invoke(serviceProvider, []) as IOpenApiSchemaTransformer; 26Debug.Assert(transformer != null, $"The type {_transformerType} does not implement {nameof(IOpenApiSchemaTransformer)}.");
Microsoft.AspNetCore.OpenApi.Tests (4)
Transformers\OpenApiOptionsTests.cs (3)
138var insertedTransformer = Assert.Single(options.SchemaTransformers); 156var insertedTransformer = Assert.Single(options.SchemaTransformers); 173var insertedTransformer = Assert.Single(options.SchemaTransformers);
Transformers\SchemaTransformerTests.cs (1)
1004private class ActivatedTransformerWithDependency(Dependency dependency) : IOpenApiSchemaTransformer
Sample (1)
Transformers\AddExternalDocsTransformer.cs (1)
9public sealed class AddExternalDocsTransformer(IConfiguration configuration) : IOpenApiOperationTransformer, IOpenApiSchemaTransformer