diff --git a/src/Microsoft.OpenApi.Readers/OpenApiReaderSettings.cs b/src/Microsoft.OpenApi.Readers/OpenApiReaderSettings.cs index 56001e295..25bcbca6f 100644 --- a/src/Microsoft.OpenApi.Readers/OpenApiReaderSettings.cs +++ b/src/Microsoft.OpenApi.Readers/OpenApiReaderSettings.cs @@ -62,6 +62,11 @@ public class OpenApiReaderSettings /// public Uri BaseUrl { get; set; } + /// + /// Allows clients to define a custom DefaultContentType if produces array is empty + /// + public List DefaultContentType { get; set; } + /// /// Function used to provide an alternative loader for accessing external references. /// diff --git a/src/Microsoft.OpenApi.Readers/OpenApiYamlDocumentReader.cs b/src/Microsoft.OpenApi.Readers/OpenApiYamlDocumentReader.cs index 5b87ab7ae..4a120cbbf 100644 --- a/src/Microsoft.OpenApi.Readers/OpenApiYamlDocumentReader.cs +++ b/src/Microsoft.OpenApi.Readers/OpenApiYamlDocumentReader.cs @@ -47,7 +47,8 @@ public OpenApiDocument Read(YamlDocument input, out OpenApiDiagnostic diagnostic var context = new ParsingContext(diagnostic) { ExtensionParsers = _settings.ExtensionParsers, - BaseUrl = _settings.BaseUrl + BaseUrl = _settings.BaseUrl, + DefaultContentType = _settings.DefaultContentType }; OpenApiDocument document = null; diff --git a/src/Microsoft.OpenApi.Readers/ParsingContext.cs b/src/Microsoft.OpenApi.Readers/ParsingContext.cs index 6c4dece2f..0cd98c67e 100644 --- a/src/Microsoft.OpenApi.Readers/ParsingContext.cs +++ b/src/Microsoft.OpenApi.Readers/ParsingContext.cs @@ -29,6 +29,7 @@ public class ParsingContext internal RootNode RootNode { get; set; } internal List Tags { get; private set; } = new List(); internal Uri BaseUrl { get; set; } + internal List DefaultContentType { get; set; } /// /// Diagnostic object that returns metadata about the parsing process.