Skip to content

Commit 145869b

Browse files
Fix API generator (#4456) (#4514) (#4517)
This commit fixes the API generator: 1. The collection of high level endpoints were being used in some of the low level generators 2. High level endpoints excluded need to be compared to the list by filename Co-authored-by: Stuart Cam <stuart.cam@elastic.co> (cherry-picked from commit 04ed38b) Co-authored-by: Russ Cam <russ.cam@elastic.co>
1 parent de53919 commit 145869b

File tree

6 files changed

+8
-8
lines changed

6 files changed

+8
-8
lines changed

src/ApiGenerator/Domain/RestApiSpec.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,13 @@ public class RestApiSpec
2222

2323
public IDictionary<string, ApiEndpoint> Endpoints { get; set; }
2424

25-
public ImmutableSortedDictionary<string, ReadOnlyCollection<ApiEndpoint>> EndpointsPerNamespace =>
25+
public ImmutableSortedDictionary<string, ReadOnlyCollection<ApiEndpoint>> EndpointsPerNamespaceLowLevel =>
2626
Endpoints.Values.GroupBy(e=>e.CsharpNames.Namespace)
2727
.ToImmutableSortedDictionary(kv => kv.Key, kv => kv.ToList().AsReadOnly());
2828

2929
public ImmutableSortedDictionary<string, ReadOnlyCollection<ApiEndpoint>> EndpointsPerNamespaceHighLevel =>
3030
Endpoints.Values
31-
.Where(v => !CodeConfiguration.IgnoredApisHighLevel.Contains(v.Name))
31+
.Where(v => !CodeConfiguration.IgnoredApisHighLevel.Contains(v.FileName))
3232
.GroupBy(e => e.CsharpNames.Namespace)
3333
.ToImmutableSortedDictionary(kv => kv.Key, kv => kv.ToList().AsReadOnly());
3434

src/ApiGenerator/Generator/Razor/LowLevelClientImplementationGenerator.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ public override async Task Generate(RestApiSpec spec, ProgressBar progressBar)
2222
var target = GeneratorLocations.LowLevel($"ElasticLowLevelClient.{CsharpNames.RootNamespace}.cs");
2323
await DoRazor(spec, view, target);
2424

25-
var namespaced = spec.EndpointsPerNamespaceHighLevel.Where(kv => kv.Key != CsharpNames.RootNamespace).ToList();
25+
var namespaced = spec.EndpointsPerNamespaceLowLevel.Where(kv => kv.Key != CsharpNames.RootNamespace).ToList();
2626
var namespacedView = ViewLocations.LowLevel("Client", "Implementation", "ElasticLowLevelClient.Namespace.cshtml");
2727
await DoRazorDependantFiles(progressBar, namespaced, namespacedView, kv => kv.Key,
2828
id => GeneratorLocations.LowLevel($"ElasticLowLevelClient.{id}.cs"));

src/ApiGenerator/Generator/Razor/RequestParametersGenerator.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ public override async Task Generate(RestApiSpec spec, ProgressBar progressBar)
2020
var view = ViewLocations.LowLevel("RequestParameters", "RequestParameters.cshtml");
2121
string Target(string id) => GeneratorLocations.LowLevel("Api", "RequestParameters", $"RequestParameters.{id}.cs");
2222

23-
var namespaced = spec.EndpointsPerNamespaceHighLevel.ToList();
23+
var namespaced = spec.EndpointsPerNamespaceLowLevel.ToList();
2424
await DoRazorDependantFiles(progressBar, namespaced, view, kv => kv.Key, id => Target(id));
2525
}
2626
}

src/ApiGenerator/Views/LowLevel/Client/Implementation/ElasticLowLevelClient.cshtml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ using static Elasticsearch.Net.HttpMethod;
2424

2525
@{
2626
RestApiSpec model = Model;
27-
var namespaces = model.EndpointsPerNamespace.Keys.Where(k => k != CsharpNames.RootNamespace);
27+
var namespaces = model.EndpointsPerNamespaceLowLevel.Keys.Where(k => k != CsharpNames.RootNamespace);
2828
<text>
2929
// ReSharper disable InterpolatedStringExpressionIsNotIFormattable
3030
// ReSharper disable RedundantExtendsListEntry
@@ -55,7 +55,7 @@ namespace Elasticsearch.Net
5555
</text>
5656

5757

58-
foreach (var kv in model.EndpointsPerNamespace)
58+
foreach (var kv in model.EndpointsPerNamespaceLowLevel)
5959
{
6060
if (kv.Key != CsharpNames.RootNamespace)
6161
{

src/ApiGenerator/Views/LowLevel/Client/Interface/IElasticLowLevelClient.cshtml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ namespace Elasticsearch.Net
2323
///</summary>
2424
public partial interface IElasticLowLevelClient
2525
{
26-
@foreach(var kv in Model.EndpointsPerNamespace)
26+
@foreach(var kv in Model.EndpointsPerNamespaceLowLevel)
2727
{
2828
if (kv.Key != CsharpNames.RootNamespace)
2929
{

src/ApiGenerator/Views/LowLevel/Client/Usings.cshtml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
@using ApiGenerator.Domain
44
@using ApiGenerator.Domain.Code
55
@inherits ApiGenerator.CodeTemplatePage<RestApiSpec>
6-
@foreach(var kv in Model.EndpointsPerNamespace)
6+
@foreach(var kv in Model.EndpointsPerNamespaceLowLevel)
77
{
88
if (kv.Key != CsharpNames.RootNamespace)
99
{

0 commit comments

Comments
 (0)