Skip to content

Commit 43f8922

Browse files
authored
Upgrade generator dep (#730)
* catch up nswag * fix changes due to api change * nustache as well
1 parent 73d8e99 commit 43f8922

13 files changed

+78
-77
lines changed

gen/KubernetesGenerator/ApiGenerator.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,10 @@ namespace KubernetesGenerator
88
{
99
public class ApiGenerator
1010
{
11-
public void Generate(SwaggerDocument swagger, string outputDirectory)
11+
public void Generate(OpenApiDocument swagger, string outputDirectory)
1212
{
1313
var data = swagger.Operations
14-
.Where(o => o.Method != SwaggerOperationMethod.Options)
14+
.Where(o => o.Method != OpenApiOperationMethod.Options)
1515
.GroupBy(o => o.Operation.OperationId)
1616
.Select(g =>
1717
{
@@ -50,6 +50,7 @@ public void Generate(SwaggerDocument swagger, string outputDirectory)
5050
.Select(o =>
5151
{
5252
o.Path = o.Path.TrimStart('/');
53+
o.Method = char.ToUpper(o.Method[0]) + o.Method.Substring(1);
5354
return o;
5455
})
5556
.ToArray();

gen/KubernetesGenerator/ClassNameHelper.cs

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,10 @@ public class ClassNameHelper : INustacheHelper
1111
{
1212
private readonly Dictionary<string, string> classNameMap;
1313
private readonly HashSet<string> schemaDefinitionsInMultipleGroups;
14-
private readonly Dictionary<JsonSchema4, string> schemaToNameMapCooked;
15-
private readonly Dictionary<JsonSchema4, string> schemaToNameMapUnprocessed;
14+
private readonly Dictionary<JsonSchema, string> schemaToNameMapCooked;
15+
private readonly Dictionary<JsonSchema, string> schemaToNameMapUnprocessed;
1616

17-
public ClassNameHelper(SwaggerDocument swaggerCooked, SwaggerDocument swaggerUnprocessed)
17+
public ClassNameHelper(OpenApiDocument swaggerCooked, OpenApiDocument swaggerUnprocessed)
1818
{
1919
classNameMap = InitClassNameMap(swaggerCooked);
2020

@@ -28,19 +28,19 @@ public void RegisterHelper()
2828
Helpers.Register(nameof(GetClassName), GetClassName);
2929
}
3030

31-
private static Dictionary<JsonSchema4, string> GenerateSchemaToNameMapUnprocessed(
32-
SwaggerDocument swaggerUnprocessed)
31+
private static Dictionary<JsonSchema, string> GenerateSchemaToNameMapUnprocessed(
32+
OpenApiDocument swaggerUnprocessed)
3333
{
3434
return swaggerUnprocessed.Definitions.ToDictionary(x => x.Value, x => x.Key);
3535
}
3636

37-
private static Dictionary<JsonSchema4, string> GenerateSchemaToNameMapCooked(SwaggerDocument swaggerCooked)
37+
private static Dictionary<JsonSchema, string> GenerateSchemaToNameMapCooked(OpenApiDocument swaggerCooked)
3838
{
3939
return swaggerCooked.Definitions.ToDictionary(x => x.Value, x => x.Key.Replace(".", "").ToPascalCase());
4040
}
4141

4242
private static HashSet<string> InitSchemaDefinitionsInMultipleGroups(
43-
Dictionary<JsonSchema4, string> schemaToNameMap)
43+
Dictionary<JsonSchema, string> schemaToNameMap)
4444
{
4545
return schemaToNameMap.Values.Select(x =>
4646
{
@@ -60,7 +60,7 @@ private static HashSet<string> InitSchemaDefinitionsInMultipleGroups(
6060
.ToHashSet();
6161
}
6262

63-
private Dictionary<string, string> InitClassNameMap(SwaggerDocument doc)
63+
private Dictionary<string, string> InitClassNameMap(OpenApiDocument doc)
6464
{
6565
var map = new Dictionary<string, string>();
6666
foreach (var (k, v) in doc.Definitions)
@@ -83,17 +83,17 @@ private Dictionary<string, string> InitClassNameMap(SwaggerDocument doc)
8383
public void GetClassName(RenderContext context, IList<object> arguments, IDictionary<string, object> options,
8484
RenderBlock fn, RenderBlock inverse)
8585
{
86-
if (arguments != null && arguments.Count > 0 && arguments[0] != null && arguments[0] is SwaggerOperation)
86+
if (arguments != null && arguments.Count > 0 && arguments[0] != null && arguments[0] is OpenApiOperation)
8787
{
88-
context.Write(GetClassName(arguments[0] as SwaggerOperation));
88+
context.Write(GetClassName(arguments[0] as OpenApiOperation));
8989
}
90-
else if (arguments != null && arguments.Count > 0 && arguments[0] != null && arguments[0] is JsonSchema4)
90+
else if (arguments != null && arguments.Count > 0 && arguments[0] != null && arguments[0] is JsonSchema)
9191
{
92-
context.Write(GetClassNameForSchemaDefinition(arguments[0] as JsonSchema4));
92+
context.Write(GetClassNameForSchemaDefinition(arguments[0] as JsonSchema));
9393
}
9494
}
9595

96-
public string GetClassName(SwaggerOperation operation)
96+
public string GetClassName(OpenApiOperation operation)
9797
{
9898
var groupVersionKind =
9999
(Dictionary<string, object>)operation.ExtensionData["x-kubernetes-group-version-kind"];
@@ -109,15 +109,15 @@ public string GetClassName(Dictionary<string, object> groupVersionKind)
109109
return classNameMap[$"{group}_{kind}_{version}"];
110110
}
111111

112-
public string GetClassName(JsonSchema4 definition)
112+
public string GetClassName(JsonSchema definition)
113113
{
114114
var groupVersionKindElements = (object[])definition.ExtensionData["x-kubernetes-group-version-kind"];
115115
var groupVersionKind = (Dictionary<string, object>)groupVersionKindElements[0];
116116

117117
return GetClassName(groupVersionKind);
118118
}
119119

120-
public string GetClassNameForSchemaDefinition(JsonSchema4 definition)
120+
public string GetClassNameForSchemaDefinition(JsonSchema definition)
121121
{
122122
if (definition.ExtensionData != null &&
123123
definition.ExtensionData.ContainsKey("x-kubernetes-group-version-kind"))
@@ -144,7 +144,7 @@ public string GetClassNameForSchemaDefinition(JsonSchema4 definition)
144144
return $"{group}{version}{entityName}".ToPascalCase();
145145
}
146146

147-
private static Dictionary<JsonSchema4, string> InitSchemaToNameCooked(SwaggerDocument swaggercooked)
147+
private static Dictionary<JsonSchema, string> InitSchemaToNameCooked(OpenApiDocument swaggercooked)
148148
{
149149
return swaggercooked.Definitions.ToDictionary(x => x.Value, x => x.Key.Replace(".", "").ToPascalCase());
150150
}

gen/KubernetesGenerator/GeneralNameHelper.cs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -27,13 +27,13 @@ public void RegisterHelper()
2727
public void GetInterfaceName(RenderContext context, IList<object> arguments,
2828
IDictionary<string, object> options, RenderBlock fn, RenderBlock inverse)
2929
{
30-
if (arguments != null && arguments.Count > 0 && arguments[0] != null && arguments[0] is JsonSchema4)
30+
if (arguments != null && arguments.Count > 0 && arguments[0] != null && arguments[0] is JsonSchema)
3131
{
32-
context.Write(GetInterfaceName(arguments[0] as JsonSchema4));
32+
context.Write(GetInterfaceName(arguments[0] as JsonSchema));
3333
}
3434
}
3535

36-
private string GetInterfaceName(JsonSchema4 definition)
36+
private string GetInterfaceName(JsonSchema definition)
3737
{
3838
var interfaces = new List<string>();
3939
if (definition.Properties.TryGetValue("metadata", out var metadataProperty))
@@ -71,24 +71,24 @@ private string GetInterfaceName(JsonSchema4 definition)
7171
public void GetMethodName(RenderContext context, IList<object> arguments, IDictionary<string, object> options,
7272
RenderBlock fn, RenderBlock inverse)
7373
{
74-
if (arguments != null && arguments.Count > 0 && arguments[0] != null && arguments[0] is SwaggerOperation)
74+
if (arguments != null && arguments.Count > 0 && arguments[0] != null && arguments[0] is OpenApiOperation)
7575
{
7676
string suffix = null;
7777
if (arguments.Count > 1)
7878
{
7979
suffix = arguments[1] as string;
8080
}
8181

82-
context.Write(GetMethodName(arguments[0] as SwaggerOperation, suffix));
82+
context.Write(GetMethodName(arguments[0] as OpenApiOperation, suffix));
8383
}
8484
}
8585

8686
public void GetDotNetName(RenderContext context, IList<object> arguments, IDictionary<string, object> options,
8787
RenderBlock fn, RenderBlock inverse)
8888
{
89-
if (arguments != null && arguments.Count > 0 && arguments[0] != null && arguments[0] is SwaggerParameter)
89+
if (arguments != null && arguments.Count > 0 && arguments[0] != null && arguments[0] is OpenApiParameter)
9090
{
91-
var parameter = arguments[0] as SwaggerParameter;
91+
var parameter = arguments[0] as OpenApiParameter;
9292
context.Write(GetDotNetName(parameter.Name));
9393

9494
if (arguments.Count > 1 && arguments[1] as string == "true" && !parameter.IsRequired)
@@ -133,7 +133,7 @@ public string GetDotNetName(string jsonName, string style = "parameter")
133133
{
134134
return "continueProperty";
135135
}
136-
else if (jsonName == "__referencePath")
136+
else if (jsonName == "$ref")
137137
{
138138
return "refProperty";
139139
}
@@ -179,7 +179,7 @@ public string GetDotNetName(string jsonName, string style = "parameter")
179179
return jsonName.ToCamelCase();
180180
}
181181

182-
public static string GetMethodName(SwaggerOperation watchOperation, string suffix)
182+
public static string GetMethodName(OpenApiOperation watchOperation, string suffix)
183183
{
184184
var tag = watchOperation.Tags[0];
185185
tag = tag.Replace("_", string.Empty);

gen/KubernetesGenerator/KubernetesGenerator.csproj

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
1-
<Project Sdk="Microsoft.NET.Sdk">
1+
<Project Sdk="Microsoft.NET.Sdk">
22

33
<PropertyGroup>
44
<OutputType>Exe</OutputType>
55
<TargetFramework>net5</TargetFramework>
66
</PropertyGroup>
77

88
<ItemGroup>
9-
<PackageReference Include="Autofac" Version="6.3.0"/>
10-
<PackageReference Include="CaseExtensions" Version="1.1.0"/>
11-
<PackageReference Include="CommandLineParser" Version="2.8.0"/>
12-
<PackageReference Include="NSwag.Core" Version="11.17.21"/>
13-
<PackageReference Include="Nustache" Version="1.16.0.8" NoWarn="NU1701"/>
9+
<PackageReference Include="Autofac" Version="6.3.0" />
10+
<PackageReference Include="CaseExtensions" Version="1.1.0" />
11+
<PackageReference Include="CommandLineParser" Version="2.8.0" />
12+
<PackageReference Include="NSwag.Core" Version="13.13.2" />
13+
<PackageReference Include="Nustache" Version="1.16.0.10" NoWarn="NU1701" />
1414
</ItemGroup>
1515

1616
<ItemGroup>

gen/KubernetesGenerator/MetaHelper.cs

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -19,13 +19,13 @@ public void RegisterHelper()
1919
public static void GetKind(RenderContext context, IList<object> arguments, IDictionary<string, object> options,
2020
RenderBlock fn, RenderBlock inverse)
2121
{
22-
if (arguments != null && arguments.Count > 0 && arguments[0] != null && arguments[0] is JsonSchema4)
22+
if (arguments != null && arguments.Count > 0 && arguments[0] != null && arguments[0] is JsonSchema)
2323
{
24-
context.Write(GetKind(arguments[0] as JsonSchema4));
24+
context.Write(GetKind(arguments[0] as JsonSchema));
2525
}
2626
}
2727

28-
private static string GetKind(JsonSchema4 definition)
28+
private static string GetKind(JsonSchema definition)
2929
{
3030
var groupVersionKindElements = (object[])definition.ExtensionData["x-kubernetes-group-version-kind"];
3131
var groupVersionKind = (Dictionary<string, object>)groupVersionKindElements[0];
@@ -36,13 +36,13 @@ private static string GetKind(JsonSchema4 definition)
3636
public static void GetGroup(RenderContext context, IList<object> arguments, IDictionary<string, object> options,
3737
RenderBlock fn, RenderBlock inverse)
3838
{
39-
if (arguments != null && arguments.Count > 0 && arguments[0] != null && arguments[0] is JsonSchema4)
39+
if (arguments != null && arguments.Count > 0 && arguments[0] != null && arguments[0] is JsonSchema)
4040
{
41-
context.Write(GetGroup(arguments[0] as JsonSchema4));
41+
context.Write(GetGroup(arguments[0] as JsonSchema));
4242
}
4343
}
4444

45-
private static string GetGroup(JsonSchema4 definition)
45+
private static string GetGroup(JsonSchema definition)
4646
{
4747
var groupVersionKindElements = (object[])definition.ExtensionData["x-kubernetes-group-version-kind"];
4848
var groupVersionKind = (Dictionary<string, object>)groupVersionKindElements[0];
@@ -54,13 +54,13 @@ public static void GetApiVersion(RenderContext context, IList<object> arguments,
5454
IDictionary<string, object> options,
5555
RenderBlock fn, RenderBlock inverse)
5656
{
57-
if (arguments != null && arguments.Count > 0 && arguments[0] != null && arguments[0] is JsonSchema4)
57+
if (arguments != null && arguments.Count > 0 && arguments[0] != null && arguments[0] is JsonSchema)
5858
{
59-
context.Write(GetApiVersion(arguments[0] as JsonSchema4));
59+
context.Write(GetApiVersion(arguments[0] as JsonSchema));
6060
}
6161
}
6262

63-
private static string GetApiVersion(JsonSchema4 definition)
63+
private static string GetApiVersion(JsonSchema definition)
6464
{
6565
var groupVersionKindElements = (object[])definition.ExtensionData["x-kubernetes-group-version-kind"];
6666
var groupVersionKind = (Dictionary<string, object>)groupVersionKindElements[0];
@@ -72,14 +72,14 @@ public static void GetPathExpression(RenderContext context, IList<object> argume
7272
IDictionary<string, object> options, RenderBlock fn, RenderBlock inverse)
7373
{
7474
if (arguments != null && arguments.Count > 0 && arguments[0] != null &&
75-
arguments[0] is SwaggerOperationDescription)
75+
arguments[0] is OpenApiOperationDescription)
7676
{
77-
var operation = arguments[0] as SwaggerOperationDescription;
77+
var operation = arguments[0] as OpenApiOperationDescription;
7878
context.Write(GetPathExpression(operation));
7979
}
8080
}
8181

82-
private static string GetPathExpression(SwaggerOperationDescription operation)
82+
private static string GetPathExpression(OpenApiOperationDescription operation)
8383
{
8484
var pathExpression = operation.Path;
8585

gen/KubernetesGenerator/ModelExtGenerator.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ public ModelExtGenerator(ClassNameHelper classNameHelper)
1515
this.classNameHelper = classNameHelper;
1616
}
1717

18-
public void Generate(SwaggerDocument swagger, string outputDirectory)
18+
public void Generate(OpenApiDocument swagger, string outputDirectory)
1919
{
2020
// Generate the interface declarations
2121
var skippedTypes = new HashSet<string> { "V1WatchEvent" };

gen/KubernetesGenerator/ModelGenerator.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ public ModelGenerator(ClassNameHelper classNameHelper)
1313
this.classNameHelper = classNameHelper;
1414
}
1515

16-
public void Generate(SwaggerDocument swaggercooked, string outputDirectory)
16+
public void Generate(OpenApiDocument swaggercooked, string outputDirectory)
1717
{
1818
Directory.CreateDirectory(Path.Combine(outputDirectory, "Models"));
1919

gen/KubernetesGenerator/ParamHelper.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ public static void IfParamCotains(RenderContext context, IList<object> arguments
2727
IDictionary<string, object> options,
2828
RenderBlock fn, RenderBlock inverse)
2929
{
30-
var operation = arguments?.FirstOrDefault() as SwaggerOperation;
30+
var operation = arguments?.FirstOrDefault() as OpenApiOperation;
3131
if (operation != null)
3232
{
3333
string name = null;
@@ -59,7 +59,7 @@ public void GetModelCtorParam(RenderContext context, IList<object> arguments,
5959
IDictionary<string, object> options,
6060
RenderBlock fn, RenderBlock inverse)
6161
{
62-
var schema = arguments[0] as JsonSchema4;
62+
var schema = arguments[0] as JsonSchema;
6363

6464
if (schema != null)
6565
{

gen/KubernetesGenerator/PluralHelper.cs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ public class PluralHelper : INustacheHelper
1212
private readonly Dictionary<string, string> _classNameToPluralMap;
1313
private readonly ClassNameHelper classNameHelper;
1414

15-
public PluralHelper(ClassNameHelper classNameHelper, SwaggerDocument swagger)
15+
public PluralHelper(ClassNameHelper classNameHelper, OpenApiDocument swagger)
1616
{
1717
this.classNameHelper = classNameHelper;
1818
_classNameToPluralMap = InitClassNameToPluralMap(swagger);
@@ -26,9 +26,9 @@ public void RegisterHelper()
2626
public void GetPlural(RenderContext context, IList<object> arguments, IDictionary<string, object> options,
2727
RenderBlock fn, RenderBlock inverse)
2828
{
29-
if (arguments != null && arguments.Count > 0 && arguments[0] != null && arguments[0] is JsonSchema4)
29+
if (arguments != null && arguments.Count > 0 && arguments[0] != null && arguments[0] is JsonSchema)
3030
{
31-
var plural = GetPlural(arguments[0] as JsonSchema4);
31+
var plural = GetPlural(arguments[0] as JsonSchema);
3232
if (plural != null)
3333
{
3434
context.Write($"\"{plural}\"");
@@ -40,21 +40,21 @@ public void GetPlural(RenderContext context, IList<object> arguments, IDictionar
4040
}
4141
}
4242

43-
public string GetPlural(JsonSchema4 definition)
43+
public string GetPlural(JsonSchema definition)
4444
{
4545
var className = classNameHelper.GetClassNameForSchemaDefinition(definition);
4646
return _classNameToPluralMap.GetValueOrDefault(className, null);
4747
}
4848

49-
private Dictionary<string, string> InitClassNameToPluralMap(SwaggerDocument swagger)
49+
private Dictionary<string, string> InitClassNameToPluralMap(OpenApiDocument swagger)
5050
{
5151
var classNameToPluralMap = swagger.Operations
5252
.Where(x => x.Operation.OperationId.StartsWith("list", StringComparison.InvariantCulture))
5353
.Select(x => new
5454
{
5555
PluralName = x.Path.Split("/").Last(),
5656
ClassName = classNameHelper.GetClassNameForSchemaDefinition(x.Operation.Responses["200"]
57-
.ActualResponseSchema),
57+
.ActualResponse.Schema.ActualSchema),
5858
})
5959
.Distinct()
6060
.ToDictionary(x => x.ClassName, x => x.PluralName);

gen/KubernetesGenerator/Program.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,9 +20,9 @@ private static async Task RunAsync(Options options)
2020
{
2121
var outputDirectory = options.OutputPath;
2222

23-
var swaggerCooked = await SwaggerDocument.FromFileAsync(Path.Combine(outputDirectory, "swagger.json"))
23+
var swaggerCooked = await OpenApiDocument.FromFileAsync(Path.Combine(outputDirectory, "swagger.json"))
2424
.ConfigureAwait(false);
25-
var swaggerUnprocessed = await SwaggerDocument
25+
var swaggerUnprocessed = await OpenApiDocument
2626
.FromFileAsync(Path.Combine(outputDirectory, "swagger.json.unprocessed"))
2727
.ConfigureAwait(false);
2828

@@ -45,7 +45,7 @@ private static async Task RunAsync(Options options)
4545
;
4646

4747
builder.RegisterType<PluralHelper>()
48-
.WithParameter(new TypedParameter(typeof(SwaggerDocument), swaggerUnprocessed))
48+
.WithParameter(new TypedParameter(typeof(OpenApiDocument), swaggerUnprocessed))
4949
.AsImplementedInterfaces()
5050
;
5151

0 commit comments

Comments
 (0)