11using Microsoft . OpenApi . Readers ;
2+ using Microsoft . OpenApi . Validations ;
23using ErrorUrl = Outcome . Result < ( string , string ) , string > . Error < ( string , string ) , string > ;
34using OkUrl = Outcome . Result < ( string , string ) , string > . Ok < ( string , string ) , string > ;
45
@@ -13,34 +14,24 @@ public static class OpenApiCodeGenerator
1314 /// <param name="className">The class name for extension methods.</param>
1415 /// <param name="outputPath">The directory path where generated files will be saved.</param>
1516 /// <param name="baseUrlOverride">Optional base URL override. Use this when the OpenAPI spec has a relative server URL.</param>
16- /// <param name="versionOverride">Optional OpenAPI version override (e.g., "3.0.2"). Use this when the spec declares the wrong version.</param>
1717 /// <returns>The generated code result.</returns>
1818#pragma warning disable CA1054
1919 public static GeneratorResult Generate (
2020 string openApiContent ,
2121 string @namespace ,
2222 string className ,
2323 string outputPath ,
24- string ? baseUrlOverride = null ,
25- string ? versionOverride = null
24+ string ? baseUrlOverride = null
2625 )
2726#pragma warning restore CA1054
2827 {
29- // Apply version override if specified
30- if ( ! string . IsNullOrEmpty ( versionOverride ) )
31- {
32- #pragma warning disable SYSLIB1045
33- openApiContent = System . Text . RegularExpressions . Regex . Replace (
34- openApiContent ,
35- @"^openapi:\s*[\d\.]+" ,
36- $ "openapi: { versionOverride } ",
37- System . Text . RegularExpressions . RegexOptions . Multiline
38- ) ;
39- #pragma warning restore SYSLIB1045
40- }
41-
42- var reader = new OpenApiStringReader ( ) ;
43- var document = reader . Read ( openApiContent , out var diagnostic ) ;
28+ var document = new OpenApiStringReader (
29+ new OpenApiReaderSettings
30+ {
31+ ReferenceResolution = ReferenceResolutionSetting . ResolveLocalReferences ,
32+ RuleSet = ValidationRuleSet . GetDefaultRuleSet ( ) ,
33+ }
34+ ) . Read ( openApiContent , out var diagnostic ) ;
4435
4536 if ( diagnostic . Errors . Count > 0 )
4637 {
0 commit comments