Skip to content

Commit 436b232

Browse files
authored
OpenAPI: Add support for [DisableQueryString] and HasManyAttribute.DisablePagination (#1924)
Fixed: Do not generate links for filter/page/sort when endpoint does not return collection
1 parent e5a7ced commit 436b232

123 files changed

Lines changed: 773 additions & 609 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

src/Examples/JsonApiDotNetCoreExample/GeneratedSwagger/JsonApiDotNetCoreExample.json

Lines changed: 20 additions & 20 deletions
Large diffs are not rendered by default.

src/JsonApiDotNetCore.OpenApi.Swashbuckle/SwaggerComponents/DocumentationOpenApiOperationFilter.cs

Lines changed: 125 additions & 40 deletions
Large diffs are not rendered by default.

test/OpenApiKiotaEndToEndTests/AttributeTypes/GeneratedCode/TypeContainers/Item/TypeContainersItemRequestBuilder.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -178,7 +178,7 @@ public RequestInformation ToPatchRequestInformation(global::OpenApiKiotaEndToEnd
178178
[global::System.CodeDom.Compiler.GeneratedCode("Kiota", "1.0.0")]
179179
public partial class TypeContainersItemRequestBuilderGetQueryParameters
180180
{
181-
/// <summary>For syntax, see the documentation for the [`include`](https://www.jsonapi.net/usage/reading/including-relationships.html)/[`filter`](https://www.jsonapi.net/usage/reading/filtering.html)/[`sort`](https://www.jsonapi.net/usage/reading/sorting.html)/[`page`](https://www.jsonapi.net/usage/reading/pagination.html)/[`fields`](https://www.jsonapi.net/usage/reading/sparse-fieldset-selection.html) query string parameters.</summary>
181+
/// <summary>For syntax, see the documentation for the [`include`](https://www.jsonapi.net/usage/reading/including-relationships.html)/[`fields`](https://www.jsonapi.net/usage/reading/sparse-fieldset-selection.html) query string parameters.</summary>
182182
[QueryParameter("query")]
183183
public string? Query { get; set; }
184184
}
@@ -189,7 +189,7 @@ public partial class TypeContainersItemRequestBuilderGetQueryParameters
189189
[global::System.CodeDom.Compiler.GeneratedCode("Kiota", "1.0.0")]
190190
public partial class TypeContainersItemRequestBuilderHeadQueryParameters
191191
{
192-
/// <summary>For syntax, see the documentation for the [`include`](https://www.jsonapi.net/usage/reading/including-relationships.html)/[`filter`](https://www.jsonapi.net/usage/reading/filtering.html)/[`sort`](https://www.jsonapi.net/usage/reading/sorting.html)/[`page`](https://www.jsonapi.net/usage/reading/pagination.html)/[`fields`](https://www.jsonapi.net/usage/reading/sparse-fieldset-selection.html) query string parameters.</summary>
192+
/// <summary>For syntax, see the documentation for the [`include`](https://www.jsonapi.net/usage/reading/including-relationships.html)/[`fields`](https://www.jsonapi.net/usage/reading/sparse-fieldset-selection.html) query string parameters.</summary>
193193
[QueryParameter("query")]
194194
public string? Query { get; set; }
195195
}
@@ -200,7 +200,7 @@ public partial class TypeContainersItemRequestBuilderHeadQueryParameters
200200
[global::System.CodeDom.Compiler.GeneratedCode("Kiota", "1.0.0")]
201201
public partial class TypeContainersItemRequestBuilderPatchQueryParameters
202202
{
203-
/// <summary>For syntax, see the documentation for the [`include`](https://www.jsonapi.net/usage/reading/including-relationships.html)/[`filter`](https://www.jsonapi.net/usage/reading/filtering.html)/[`sort`](https://www.jsonapi.net/usage/reading/sorting.html)/[`page`](https://www.jsonapi.net/usage/reading/pagination.html)/[`fields`](https://www.jsonapi.net/usage/reading/sparse-fieldset-selection.html) query string parameters.</summary>
203+
/// <summary>For syntax, see the documentation for the [`include`](https://www.jsonapi.net/usage/reading/including-relationships.html)/[`fields`](https://www.jsonapi.net/usage/reading/sparse-fieldset-selection.html) query string parameters.</summary>
204204
[QueryParameter("query")]
205205
public string? Query { get; set; }
206206
}

test/OpenApiKiotaEndToEndTests/AttributeTypes/GeneratedCode/TypeContainers/TypeContainersRequestBuilder.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -185,7 +185,7 @@ public partial class TypeContainersRequestBuilderHeadQueryParameters
185185
[global::System.CodeDom.Compiler.GeneratedCode("Kiota", "1.0.0")]
186186
public partial class TypeContainersRequestBuilderPostQueryParameters
187187
{
188-
/// <summary>For syntax, see the documentation for the [`include`](https://www.jsonapi.net/usage/reading/including-relationships.html)/[`filter`](https://www.jsonapi.net/usage/reading/filtering.html)/[`sort`](https://www.jsonapi.net/usage/reading/sorting.html)/[`page`](https://www.jsonapi.net/usage/reading/pagination.html)/[`fields`](https://www.jsonapi.net/usage/reading/sparse-fieldset-selection.html) query string parameters.</summary>
188+
/// <summary>For syntax, see the documentation for the [`include`](https://www.jsonapi.net/usage/reading/including-relationships.html)/[`fields`](https://www.jsonapi.net/usage/reading/sparse-fieldset-selection.html) query string parameters.</summary>
189189
[QueryParameter("query")]
190190
public string? Query { get; set; }
191191
}

test/OpenApiKiotaEndToEndTests/ClientIdGenerationModes/GeneratedCode/Games/GamesRequestBuilder.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ public RequestInformation ToPostRequestInformation(global::OpenApiKiotaEndToEndT
9494
[global::System.CodeDom.Compiler.GeneratedCode("Kiota", "1.0.0")]
9595
public partial class GamesRequestBuilderPostQueryParameters
9696
{
97-
/// <summary>For syntax, see the documentation for the [`include`](https://www.jsonapi.net/usage/reading/including-relationships.html)/[`filter`](https://www.jsonapi.net/usage/reading/filtering.html)/[`sort`](https://www.jsonapi.net/usage/reading/sorting.html)/[`page`](https://www.jsonapi.net/usage/reading/pagination.html)/[`fields`](https://www.jsonapi.net/usage/reading/sparse-fieldset-selection.html) query string parameters.</summary>
97+
/// <summary>For syntax, see the documentation for the [`include`](https://www.jsonapi.net/usage/reading/including-relationships.html)/[`fields`](https://www.jsonapi.net/usage/reading/sparse-fieldset-selection.html) query string parameters.</summary>
9898
[QueryParameter("query")]
9999
public string? Query { get; set; }
100100
}

test/OpenApiKiotaEndToEndTests/ClientIdGenerationModes/GeneratedCode/PlayerGroups/PlayerGroupsRequestBuilder.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ public RequestInformation ToPostRequestInformation(global::OpenApiKiotaEndToEndT
9696
[global::System.CodeDom.Compiler.GeneratedCode("Kiota", "1.0.0")]
9797
public partial class PlayerGroupsRequestBuilderPostQueryParameters
9898
{
99-
/// <summary>For syntax, see the documentation for the [`include`](https://www.jsonapi.net/usage/reading/including-relationships.html)/[`filter`](https://www.jsonapi.net/usage/reading/filtering.html)/[`sort`](https://www.jsonapi.net/usage/reading/sorting.html)/[`page`](https://www.jsonapi.net/usage/reading/pagination.html)/[`fields`](https://www.jsonapi.net/usage/reading/sparse-fieldset-selection.html) query string parameters.</summary>
99+
/// <summary>For syntax, see the documentation for the [`include`](https://www.jsonapi.net/usage/reading/including-relationships.html)/[`fields`](https://www.jsonapi.net/usage/reading/sparse-fieldset-selection.html) query string parameters.</summary>
100100
[QueryParameter("query")]
101101
public string? Query { get; set; }
102102
}

test/OpenApiKiotaEndToEndTests/ClientIdGenerationModes/GeneratedCode/Players/PlayersRequestBuilder.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,7 @@ public RequestInformation ToPostRequestInformation(global::OpenApiKiotaEndToEndT
9494
[global::System.CodeDom.Compiler.GeneratedCode("Kiota", "1.0.0")]
9595
public partial class PlayersRequestBuilderPostQueryParameters
9696
{
97-
/// <summary>For syntax, see the documentation for the [`include`](https://www.jsonapi.net/usage/reading/including-relationships.html)/[`filter`](https://www.jsonapi.net/usage/reading/filtering.html)/[`sort`](https://www.jsonapi.net/usage/reading/sorting.html)/[`page`](https://www.jsonapi.net/usage/reading/pagination.html)/[`fields`](https://www.jsonapi.net/usage/reading/sparse-fieldset-selection.html) query string parameters.</summary>
97+
/// <summary>For syntax, see the documentation for the [`include`](https://www.jsonapi.net/usage/reading/including-relationships.html)/[`fields`](https://www.jsonapi.net/usage/reading/sparse-fieldset-selection.html) query string parameters.</summary>
9898
[QueryParameter("query")]
9999
public string? Query { get; set; }
100100
}

test/OpenApiKiotaEndToEndTests/Headers/GeneratedCode/Countries/CountriesRequestBuilder.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -185,7 +185,7 @@ public partial class CountriesRequestBuilderHeadQueryParameters
185185
[global::System.CodeDom.Compiler.GeneratedCode("Kiota", "1.0.0")]
186186
public partial class CountriesRequestBuilderPostQueryParameters
187187
{
188-
/// <summary>For syntax, see the documentation for the [`include`](https://www.jsonapi.net/usage/reading/including-relationships.html)/[`filter`](https://www.jsonapi.net/usage/reading/filtering.html)/[`sort`](https://www.jsonapi.net/usage/reading/sorting.html)/[`page`](https://www.jsonapi.net/usage/reading/pagination.html)/[`fields`](https://www.jsonapi.net/usage/reading/sparse-fieldset-selection.html) query string parameters.</summary>
188+
/// <summary>For syntax, see the documentation for the [`include`](https://www.jsonapi.net/usage/reading/including-relationships.html)/[`fields`](https://www.jsonapi.net/usage/reading/sparse-fieldset-selection.html) query string parameters.</summary>
189189
[QueryParameter("query")]
190190
public string? Query { get; set; }
191191
}

test/OpenApiKiotaEndToEndTests/Headers/GeneratedCode/Countries/Item/CountriesItemRequestBuilder.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -192,7 +192,7 @@ public RequestInformation ToPatchRequestInformation(global::OpenApiKiotaEndToEnd
192192
[global::System.CodeDom.Compiler.GeneratedCode("Kiota", "1.0.0")]
193193
public partial class CountriesItemRequestBuilderGetQueryParameters
194194
{
195-
/// <summary>For syntax, see the documentation for the [`include`](https://www.jsonapi.net/usage/reading/including-relationships.html)/[`filter`](https://www.jsonapi.net/usage/reading/filtering.html)/[`sort`](https://www.jsonapi.net/usage/reading/sorting.html)/[`page`](https://www.jsonapi.net/usage/reading/pagination.html)/[`fields`](https://www.jsonapi.net/usage/reading/sparse-fieldset-selection.html) query string parameters.</summary>
195+
/// <summary>For syntax, see the documentation for the [`include`](https://www.jsonapi.net/usage/reading/including-relationships.html)/[`fields`](https://www.jsonapi.net/usage/reading/sparse-fieldset-selection.html) query string parameters.</summary>
196196
[QueryParameter("query")]
197197
public string? Query { get; set; }
198198
}
@@ -203,7 +203,7 @@ public partial class CountriesItemRequestBuilderGetQueryParameters
203203
[global::System.CodeDom.Compiler.GeneratedCode("Kiota", "1.0.0")]
204204
public partial class CountriesItemRequestBuilderHeadQueryParameters
205205
{
206-
/// <summary>For syntax, see the documentation for the [`include`](https://www.jsonapi.net/usage/reading/including-relationships.html)/[`filter`](https://www.jsonapi.net/usage/reading/filtering.html)/[`sort`](https://www.jsonapi.net/usage/reading/sorting.html)/[`page`](https://www.jsonapi.net/usage/reading/pagination.html)/[`fields`](https://www.jsonapi.net/usage/reading/sparse-fieldset-selection.html) query string parameters.</summary>
206+
/// <summary>For syntax, see the documentation for the [`include`](https://www.jsonapi.net/usage/reading/including-relationships.html)/[`fields`](https://www.jsonapi.net/usage/reading/sparse-fieldset-selection.html) query string parameters.</summary>
207207
[QueryParameter("query")]
208208
public string? Query { get; set; }
209209
}
@@ -214,7 +214,7 @@ public partial class CountriesItemRequestBuilderHeadQueryParameters
214214
[global::System.CodeDom.Compiler.GeneratedCode("Kiota", "1.0.0")]
215215
public partial class CountriesItemRequestBuilderPatchQueryParameters
216216
{
217-
/// <summary>For syntax, see the documentation for the [`include`](https://www.jsonapi.net/usage/reading/including-relationships.html)/[`filter`](https://www.jsonapi.net/usage/reading/filtering.html)/[`sort`](https://www.jsonapi.net/usage/reading/sorting.html)/[`page`](https://www.jsonapi.net/usage/reading/pagination.html)/[`fields`](https://www.jsonapi.net/usage/reading/sparse-fieldset-selection.html) query string parameters.</summary>
217+
/// <summary>For syntax, see the documentation for the [`include`](https://www.jsonapi.net/usage/reading/including-relationships.html)/[`fields`](https://www.jsonapi.net/usage/reading/sparse-fieldset-selection.html) query string parameters.</summary>
218218
[QueryParameter("query")]
219219
public string? Query { get; set; }
220220
}

test/OpenApiKiotaEndToEndTests/IdObfuscation/GeneratedCode/BankAccounts/BankAccountsRequestBuilder.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -185,7 +185,7 @@ public partial class BankAccountsRequestBuilderHeadQueryParameters
185185
[global::System.CodeDom.Compiler.GeneratedCode("Kiota", "1.0.0")]
186186
public partial class BankAccountsRequestBuilderPostQueryParameters
187187
{
188-
/// <summary>For syntax, see the documentation for the [`include`](https://www.jsonapi.net/usage/reading/including-relationships.html)/[`filter`](https://www.jsonapi.net/usage/reading/filtering.html)/[`sort`](https://www.jsonapi.net/usage/reading/sorting.html)/[`page`](https://www.jsonapi.net/usage/reading/pagination.html)/[`fields`](https://www.jsonapi.net/usage/reading/sparse-fieldset-selection.html) query string parameters.</summary>
188+
/// <summary>For syntax, see the documentation for the [`include`](https://www.jsonapi.net/usage/reading/including-relationships.html)/[`fields`](https://www.jsonapi.net/usage/reading/sparse-fieldset-selection.html) query string parameters.</summary>
189189
[QueryParameter("query")]
190190
public string? Query { get; set; }
191191
}

0 commit comments

Comments
 (0)