From 6920bc25e02e005cd959a029cd6407ecadc88f80 Mon Sep 17 00:00:00 2001
From: Bart Koelman <10324372+bkoelman@users.noreply.github.com>
Date: Sat, 19 Apr 2025 02:21:14 +0200
Subject: [PATCH 1/3] Build against .NET 10 preview
---
.github/workflows/build.yml | 15 +++++++++++++++
.github/workflows/codeql.yml | 5 +++++
Directory.Build.props | 6 ++++++
benchmarks/Benchmarks.csproj | 2 +-
package-versions.props | 10 ++++++++++
src/Examples/DapperExample/DapperExample.csproj | 3 ++-
.../DatabasePerTenantExample.csproj | 2 +-
src/Examples/GettingStarted/GettingStarted.csproj | 2 +-
.../JsonApiDotNetCoreExample.csproj | 2 +-
.../MultiDbContextExample.csproj | 2 +-
.../NoEntityFrameworkExample.csproj | 2 +-
.../OpenApiKiotaClientExample.csproj | 2 +-
.../OpenApiNSwagClientExample.csproj | 2 +-
src/Examples/ReportsExample/ReportsExample.csproj | 2 +-
.../JsonApiDotNetCore.Annotations.csproj | 2 +-
.../JsonApiDotNetCore.OpenApi.Client.Kiota.csproj | 2 +-
.../JsonApiDotNetCore.OpenApi.Client.NSwag.csproj | 2 +-
.../JsonApiDotNetCore.OpenApi.Swashbuckle.csproj | 2 +-
src/JsonApiDotNetCore/JsonApiDotNetCore.csproj | 2 +-
test/AnnotationTests/AnnotationTests.csproj | 2 +-
test/DapperTests/DapperTests.csproj | 2 +-
test/DiscoveryTests/DiscoveryTests.csproj | 2 +-
.../JsonApiDotNetCoreTests.csproj | 6 +++---
.../MultiDbContextTests.csproj | 2 +-
.../NoEntityFrameworkTests.csproj | 2 +-
.../OpenApiKiotaEndToEndTests.csproj | 2 +-
.../OpenApiNSwagClientTests.csproj | 2 +-
.../OpenApiNSwagEndToEndTests.csproj | 2 +-
test/OpenApiTests/OpenApiTests.csproj | 2 +-
.../SourceGeneratorTests.csproj | 2 +-
test/TestBuildingBlocks/TestBuildingBlocks.csproj | 2 +-
test/UnitTests/UnitTests.csproj | 2 +-
32 files changed, 67 insertions(+), 30 deletions(-)
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index bc38da9f39..7c9116d405 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -48,6 +48,11 @@ jobs:
dotnet-version: |
8.0.*
9.0.*
+ - name: Setup .NET 10 preview
+ uses: actions/setup-dotnet@v4
+ with:
+ dotnet-version: 10.0.*
+ dotnet-quality: 'preview'
- name: Show installed versions
shell: pwsh
run: |
@@ -166,6 +171,11 @@ jobs:
dotnet-version: |
8.0.*
9.0.*
+ - name: Setup .NET 10 preview
+ uses: actions/setup-dotnet@v4
+ with:
+ dotnet-version: 10.0.*
+ dotnet-quality: 'preview'
- name: Git checkout
uses: actions/checkout@v4
- name: Restore tools
@@ -221,6 +231,11 @@ jobs:
dotnet-version: |
8.0.*
9.0.*
+ - name: Setup .NET 10 preview
+ uses: actions/setup-dotnet@v4
+ with:
+ dotnet-version: 10.0.*
+ dotnet-quality: 'preview'
- name: Git checkout
uses: actions/checkout@v4
with:
diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml
index 508d210158..455071b122 100644
--- a/.github/workflows/codeql.yml
+++ b/.github/workflows/codeql.yml
@@ -29,6 +29,11 @@ jobs:
dotnet-version: |
8.0.*
9.0.*
+ - name: Setup .NET 10 preview
+ uses: actions/setup-dotnet@v4
+ with:
+ dotnet-version: 10.0.*
+ dotnet-quality: 'preview'
- name: Git checkout
uses: actions/checkout@v4
- name: Initialize CodeQL
diff --git a/Directory.Build.props b/Directory.Build.props
index 1ef255f56e..4664c01565 100644
--- a/Directory.Build.props
+++ b/Directory.Build.props
@@ -15,6 +15,12 @@
direct
+
+
+ true
+ $(NoWarn);NU1903;NU5104;NU1608
+
+
+ 10.0.*-*
+
+
+ 10.0.*-*
+ 10.0.*-*
+ 9.0.*-*
+
+
N/A
diff --git a/src/Examples/DapperExample/DapperExample.csproj b/src/Examples/DapperExample/DapperExample.csproj
index ed7bd358eb..b2c71ee0f8 100644
--- a/src/Examples/DapperExample/DapperExample.csproj
+++ b/src/Examples/DapperExample/DapperExample.csproj
@@ -1,6 +1,6 @@
- net9.0;net8.0
+ net10.0;net9.0;net8.0
@@ -14,6 +14,7 @@
+
diff --git a/src/Examples/DatabasePerTenantExample/DatabasePerTenantExample.csproj b/src/Examples/DatabasePerTenantExample/DatabasePerTenantExample.csproj
index 3edc993428..c7cee804b1 100644
--- a/src/Examples/DatabasePerTenantExample/DatabasePerTenantExample.csproj
+++ b/src/Examples/DatabasePerTenantExample/DatabasePerTenantExample.csproj
@@ -1,6 +1,6 @@
- net9.0;net8.0
+ net10.0;net9.0;net8.0
diff --git a/src/Examples/GettingStarted/GettingStarted.csproj b/src/Examples/GettingStarted/GettingStarted.csproj
index 611aeb37a5..806fdf45a5 100644
--- a/src/Examples/GettingStarted/GettingStarted.csproj
+++ b/src/Examples/GettingStarted/GettingStarted.csproj
@@ -1,6 +1,6 @@
- net9.0;net8.0
+ net10.0;net9.0;net8.0
diff --git a/src/Examples/JsonApiDotNetCoreExample/JsonApiDotNetCoreExample.csproj b/src/Examples/JsonApiDotNetCoreExample/JsonApiDotNetCoreExample.csproj
index 768a2de827..58feac6a6d 100644
--- a/src/Examples/JsonApiDotNetCoreExample/JsonApiDotNetCoreExample.csproj
+++ b/src/Examples/JsonApiDotNetCoreExample/JsonApiDotNetCoreExample.csproj
@@ -1,6 +1,6 @@
- net9.0;net8.0
+ net10.0;net9.0;net8.0
true
GeneratedSwagger
diff --git a/src/Examples/MultiDbContextExample/MultiDbContextExample.csproj b/src/Examples/MultiDbContextExample/MultiDbContextExample.csproj
index 611aeb37a5..806fdf45a5 100644
--- a/src/Examples/MultiDbContextExample/MultiDbContextExample.csproj
+++ b/src/Examples/MultiDbContextExample/MultiDbContextExample.csproj
@@ -1,6 +1,6 @@
- net9.0;net8.0
+ net10.0;net9.0;net8.0
diff --git a/src/Examples/NoEntityFrameworkExample/NoEntityFrameworkExample.csproj b/src/Examples/NoEntityFrameworkExample/NoEntityFrameworkExample.csproj
index 15a485c08f..e50874f733 100644
--- a/src/Examples/NoEntityFrameworkExample/NoEntityFrameworkExample.csproj
+++ b/src/Examples/NoEntityFrameworkExample/NoEntityFrameworkExample.csproj
@@ -1,6 +1,6 @@
- net9.0;net8.0
+ net10.0;net9.0;net8.0
diff --git a/src/Examples/OpenApiKiotaClientExample/OpenApiKiotaClientExample.csproj b/src/Examples/OpenApiKiotaClientExample/OpenApiKiotaClientExample.csproj
index 8f65b2b688..8dd3e2e4df 100644
--- a/src/Examples/OpenApiKiotaClientExample/OpenApiKiotaClientExample.csproj
+++ b/src/Examples/OpenApiKiotaClientExample/OpenApiKiotaClientExample.csproj
@@ -1,6 +1,6 @@
- net9.0
+ net10.0
diff --git a/src/Examples/OpenApiNSwagClientExample/OpenApiNSwagClientExample.csproj b/src/Examples/OpenApiNSwagClientExample/OpenApiNSwagClientExample.csproj
index c30833a39a..079e43121c 100644
--- a/src/Examples/OpenApiNSwagClientExample/OpenApiNSwagClientExample.csproj
+++ b/src/Examples/OpenApiNSwagClientExample/OpenApiNSwagClientExample.csproj
@@ -1,7 +1,7 @@
- net9.0
+ net10.0
diff --git a/src/Examples/ReportsExample/ReportsExample.csproj b/src/Examples/ReportsExample/ReportsExample.csproj
index 6ade1386be..73a16ddf4f 100644
--- a/src/Examples/ReportsExample/ReportsExample.csproj
+++ b/src/Examples/ReportsExample/ReportsExample.csproj
@@ -1,6 +1,6 @@
- net9.0;net8.0
+ net10.0;net9.0;net8.0
diff --git a/src/JsonApiDotNetCore.Annotations/JsonApiDotNetCore.Annotations.csproj b/src/JsonApiDotNetCore.Annotations/JsonApiDotNetCore.Annotations.csproj
index ed36e0797c..68bd9ac569 100644
--- a/src/JsonApiDotNetCore.Annotations/JsonApiDotNetCore.Annotations.csproj
+++ b/src/JsonApiDotNetCore.Annotations/JsonApiDotNetCore.Annotations.csproj
@@ -1,6 +1,6 @@
- net8.0;netstandard1.0
+ net10.0;net8.0;netstandard1.0
true
true
JsonApiDotNetCore
diff --git a/src/JsonApiDotNetCore.OpenApi.Client.Kiota/JsonApiDotNetCore.OpenApi.Client.Kiota.csproj b/src/JsonApiDotNetCore.OpenApi.Client.Kiota/JsonApiDotNetCore.OpenApi.Client.Kiota.csproj
index 640b949477..fce1fb7c40 100644
--- a/src/JsonApiDotNetCore.OpenApi.Client.Kiota/JsonApiDotNetCore.OpenApi.Client.Kiota.csproj
+++ b/src/JsonApiDotNetCore.OpenApi.Client.Kiota/JsonApiDotNetCore.OpenApi.Client.Kiota.csproj
@@ -1,6 +1,6 @@
- net8.0
+ net10.0;net8.0
true
true
false
diff --git a/src/JsonApiDotNetCore.OpenApi.Client.NSwag/JsonApiDotNetCore.OpenApi.Client.NSwag.csproj b/src/JsonApiDotNetCore.OpenApi.Client.NSwag/JsonApiDotNetCore.OpenApi.Client.NSwag.csproj
index 20e2306730..550f284509 100644
--- a/src/JsonApiDotNetCore.OpenApi.Client.NSwag/JsonApiDotNetCore.OpenApi.Client.NSwag.csproj
+++ b/src/JsonApiDotNetCore.OpenApi.Client.NSwag/JsonApiDotNetCore.OpenApi.Client.NSwag.csproj
@@ -1,6 +1,6 @@
- net8.0
+ net10.0;net8.0
true
true
false
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiDotNetCore.OpenApi.Swashbuckle.csproj b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiDotNetCore.OpenApi.Swashbuckle.csproj
index 4a57ca1c85..a32d89a5ec 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiDotNetCore.OpenApi.Swashbuckle.csproj
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiDotNetCore.OpenApi.Swashbuckle.csproj
@@ -1,6 +1,6 @@
- net8.0
+ net10.0;net8.0
true
true
false
diff --git a/src/JsonApiDotNetCore/JsonApiDotNetCore.csproj b/src/JsonApiDotNetCore/JsonApiDotNetCore.csproj
index d36600e878..009c7d8656 100644
--- a/src/JsonApiDotNetCore/JsonApiDotNetCore.csproj
+++ b/src/JsonApiDotNetCore/JsonApiDotNetCore.csproj
@@ -1,6 +1,6 @@
- net8.0
+ net10.0;net8.0
true
true
diff --git a/test/AnnotationTests/AnnotationTests.csproj b/test/AnnotationTests/AnnotationTests.csproj
index 885e9f769c..6d2bfff1e6 100644
--- a/test/AnnotationTests/AnnotationTests.csproj
+++ b/test/AnnotationTests/AnnotationTests.csproj
@@ -1,6 +1,6 @@
- net9.0;net8.0;netstandard2.0
+ net10.0;net9.0;net8.0;netstandard2.0
diff --git a/test/DapperTests/DapperTests.csproj b/test/DapperTests/DapperTests.csproj
index 7d41d78911..3aca3d377c 100644
--- a/test/DapperTests/DapperTests.csproj
+++ b/test/DapperTests/DapperTests.csproj
@@ -1,6 +1,6 @@
- net9.0;net8.0
+ net10.0;net9.0;net8.0
diff --git a/test/DiscoveryTests/DiscoveryTests.csproj b/test/DiscoveryTests/DiscoveryTests.csproj
index 825056684e..afc6641a2b 100644
--- a/test/DiscoveryTests/DiscoveryTests.csproj
+++ b/test/DiscoveryTests/DiscoveryTests.csproj
@@ -1,6 +1,6 @@
- net9.0;net8.0
+ net10.0;net9.0;net8.0
diff --git a/test/JsonApiDotNetCoreTests/JsonApiDotNetCoreTests.csproj b/test/JsonApiDotNetCoreTests/JsonApiDotNetCoreTests.csproj
index 6bc5a666a1..c00be8a13c 100644
--- a/test/JsonApiDotNetCoreTests/JsonApiDotNetCoreTests.csproj
+++ b/test/JsonApiDotNetCoreTests/JsonApiDotNetCoreTests.csproj
@@ -1,6 +1,6 @@
-
+
- net9.0;net8.0
+ net10.0;net9.0;net8.0
@@ -18,6 +18,6 @@
-
+
diff --git a/test/MultiDbContextTests/MultiDbContextTests.csproj b/test/MultiDbContextTests/MultiDbContextTests.csproj
index e80f03c69e..524270f7e2 100644
--- a/test/MultiDbContextTests/MultiDbContextTests.csproj
+++ b/test/MultiDbContextTests/MultiDbContextTests.csproj
@@ -1,6 +1,6 @@
- net9.0;net8.0
+ net10.0;net9.0;net8.0
diff --git a/test/NoEntityFrameworkTests/NoEntityFrameworkTests.csproj b/test/NoEntityFrameworkTests/NoEntityFrameworkTests.csproj
index 4deb6b21cd..9ff82322ba 100644
--- a/test/NoEntityFrameworkTests/NoEntityFrameworkTests.csproj
+++ b/test/NoEntityFrameworkTests/NoEntityFrameworkTests.csproj
@@ -1,6 +1,6 @@
- net9.0;net8.0
+ net10.0;net9.0;net8.0
diff --git a/test/OpenApiKiotaEndToEndTests/OpenApiKiotaEndToEndTests.csproj b/test/OpenApiKiotaEndToEndTests/OpenApiKiotaEndToEndTests.csproj
index ca0db62217..43742e6311 100644
--- a/test/OpenApiKiotaEndToEndTests/OpenApiKiotaEndToEndTests.csproj
+++ b/test/OpenApiKiotaEndToEndTests/OpenApiKiotaEndToEndTests.csproj
@@ -1,6 +1,6 @@
- net9.0
+ net10.0
diff --git a/test/OpenApiNSwagClientTests/OpenApiNSwagClientTests.csproj b/test/OpenApiNSwagClientTests/OpenApiNSwagClientTests.csproj
index 35a6ae73ff..eb8adc2586 100644
--- a/test/OpenApiNSwagClientTests/OpenApiNSwagClientTests.csproj
+++ b/test/OpenApiNSwagClientTests/OpenApiNSwagClientTests.csproj
@@ -1,7 +1,7 @@
- net9.0
+ net10.0
diff --git a/test/OpenApiNSwagEndToEndTests/OpenApiNSwagEndToEndTests.csproj b/test/OpenApiNSwagEndToEndTests/OpenApiNSwagEndToEndTests.csproj
index 2fc34289fa..a28de8288c 100644
--- a/test/OpenApiNSwagEndToEndTests/OpenApiNSwagEndToEndTests.csproj
+++ b/test/OpenApiNSwagEndToEndTests/OpenApiNSwagEndToEndTests.csproj
@@ -1,7 +1,7 @@
- net9.0
+ net10.0
diff --git a/test/OpenApiTests/OpenApiTests.csproj b/test/OpenApiTests/OpenApiTests.csproj
index ed2a75b5f4..365da60bd9 100644
--- a/test/OpenApiTests/OpenApiTests.csproj
+++ b/test/OpenApiTests/OpenApiTests.csproj
@@ -1,6 +1,6 @@
- net9.0;net8.0
+ net10.0;net9.0;net8.0
True
false
$(NoWarn);1591
diff --git a/test/SourceGeneratorTests/SourceGeneratorTests.csproj b/test/SourceGeneratorTests/SourceGeneratorTests.csproj
index 4f487fa168..61946fbc1a 100644
--- a/test/SourceGeneratorTests/SourceGeneratorTests.csproj
+++ b/test/SourceGeneratorTests/SourceGeneratorTests.csproj
@@ -1,6 +1,6 @@
- net9.0;net8.0
+ net10.0;net9.0;net8.0
diff --git a/test/TestBuildingBlocks/TestBuildingBlocks.csproj b/test/TestBuildingBlocks/TestBuildingBlocks.csproj
index 3f16e3818e..c27c3d22b8 100644
--- a/test/TestBuildingBlocks/TestBuildingBlocks.csproj
+++ b/test/TestBuildingBlocks/TestBuildingBlocks.csproj
@@ -1,6 +1,6 @@
- net9.0;net8.0
+ net10.0;net9.0;net8.0
diff --git a/test/UnitTests/UnitTests.csproj b/test/UnitTests/UnitTests.csproj
index 68076a51e1..503547d0c5 100644
--- a/test/UnitTests/UnitTests.csproj
+++ b/test/UnitTests/UnitTests.csproj
@@ -1,6 +1,6 @@
- net9.0;net8.0
+ net10.0;net9.0;net8.0
From a3ea095fe3ced51f9c8b3343c794684117b15c7c Mon Sep 17 00:00:00 2001
From: Bart Koelman <10324372+bkoelman@users.noreply.github.com>
Date: Sun, 27 Apr 2025 17:12:21 +0200
Subject: [PATCH 2/3] Use var everywhere
---
.../ConfigureSwaggerGenOptions.cs | 16 +--
.../IncludeDependencyScanner.cs | 4 +-
...onApiActionDescriptorCollectionProvider.cs | 30 ++---
.../JsonApiMetadata/EndpointResolver.cs | 2 +-
.../JsonApiEndpointMetadataProvider.cs | 18 +--
.../NonPrimaryDocumentTypeFactory.cs | 2 +-
.../RelationshipTypeFactory.cs | 2 +-
.../JsonApiRequestFormatMetadataProvider.cs | 2 +-
.../JsonApiSchemaFacts.cs | 6 +-
.../JsonApiSchemaIdSelector.cs | 20 ++--
.../OpenApiDescriptionLinkProvider.cs | 6 +-
.../OpenApiEndpointConvention.cs | 18 +--
.../OpenApiOperationIdSelector.cs | 22 ++--
.../OpenApiResourceObjectConverter.cs | 2 +-
.../OpenApiSchemaExtensions.cs | 4 +-
...ResourceFieldValidationMetadataProvider.cs | 12 +-
.../SchemaGenerationTracer.cs | 8 +-
.../AtomicOperationCodeSchemaGenerator.cs | 8 +-
.../DataContainerSchemaGenerator.cs | 16 +--
.../Components/DataSchemaGenerator.cs | 108 +++++++++---------
.../LinksVisibilitySchemaGenerator.cs | 32 +++---
.../Components/MetaSchemaGenerator.cs | 6 +-
.../RelationshipIdentifierSchemaGenerator.cs | 16 +--
.../RelationshipNameSchemaGenerator.cs | 6 +-
.../Components/ResourceIdSchemaGenerator.cs | 2 +-
.../Components/ResourceTypeSchemaGenerator.cs | 14 +--
...AtomicOperationsDocumentSchemaGenerator.cs | 80 ++++++-------
.../Documents/DocumentSchemaGenerator.cs | 6 +-
.../ErrorResponseDocumentSchemaGenerator.cs | 10 +-
...ceOrRelationshipDocumentSchemaGenerator.cs | 8 +-
.../GenerationCacheSchemaGenerator.cs | 16 +--
.../JsonApiSchemaGenerator.cs | 6 +-
.../SchemaRepositoryExtensions.cs | 10 +-
.../SetSchemaTypeToObjectDocumentFilter.cs | 2 +-
.../DocumentationOpenApiOperationFilter.cs | 58 +++++-----
.../EndpointOrderingFilter.cs | 6 +-
.../JsonApiDataContractResolver.cs | 10 +-
.../ResourceDocumentationReader.cs | 18 +--
.../ResourceFieldSchemaBuilder.cs | 54 ++++-----
.../SwaggerComponents/ResourceSchemaType.cs | 8 +-
.../SwaggerComponents/ServerDocumentFilter.cs | 2 +-
.../StringEnumOrderingFilter.cs | 4 +-
.../UnusedComponentSchemaCleaner.cs | 24 ++--
43 files changed, 352 insertions(+), 352 deletions(-)
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/ConfigureSwaggerGenOptions.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/ConfigureSwaggerGenOptions.cs
index f3fb5198ca..f25498d482 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/ConfigureSwaggerGenOptions.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/ConfigureSwaggerGenOptions.cs
@@ -78,7 +78,7 @@ public void Configure(SwaggerGenOptions options)
private List SelectDerivedTypes(Type baseType)
{
- if (BaseToDerivedSchemaTypes.TryGetValue(baseType, out Type? schemaOpenType))
+ if (BaseToDerivedSchemaTypes.TryGetValue(baseType, out var schemaOpenType))
{
return GetConstructedTypesFromResourceGraph(schemaOpenType);
}
@@ -90,7 +90,7 @@ private List SelectDerivedTypes(Type baseType)
if (baseType.IsAssignableTo(typeof(IIdentifiable)))
{
- ResourceType? resourceType = _resourceGraph.FindResourceType(baseType);
+ var resourceType = _resourceGraph.FindResourceType(baseType);
if (resourceType != null && resourceType.IsPartOfTypeHierarchy())
{
@@ -105,9 +105,9 @@ private List GetConstructedTypesFromResourceGraph(Type schemaOpenType)
{
List constructedTypes = [];
- foreach (ResourceType resourceType in _resourceGraph.GetResourceTypes())
+ foreach (var resourceType in _resourceGraph.GetResourceTypes())
{
- Type constructedType = schemaOpenType.MakeGenericType(resourceType.ClrType);
+ var constructedType = schemaOpenType.MakeGenericType(resourceType.ClrType);
constructedTypes.Add(constructedType);
}
@@ -118,7 +118,7 @@ private List GetConstructedTypesForAtomicOperation()
{
List derivedTypes = [];
- foreach (ResourceType resourceType in _resourceGraph.GetResourceTypes())
+ foreach (var resourceType in _resourceGraph.GetResourceTypes())
{
derivedTypes.AddRange(AtomicOperationDerivedSchemaTypes.Select(openType => openType.MakeGenericType(resourceType.ClrType)));
}
@@ -135,7 +135,7 @@ private static List GetResourceDerivedTypes(ResourceType baseType)
private static void IncludeDerivedTypes(ResourceType baseType, List clrTypes)
{
- foreach (ResourceType derivedType in baseType.DirectlyDerivedTypes)
+ foreach (var derivedType in baseType.DirectlyDerivedTypes)
{
clrTypes.Add(derivedType.ClrType);
IncludeDerivedTypes(derivedType, clrTypes);
@@ -144,8 +144,8 @@ private static void IncludeDerivedTypes(ResourceType baseType, List clrTyp
private static List GetOpenApiOperationTags(ApiDescription description, IControllerResourceMapping controllerResourceMapping)
{
- MethodInfo actionMethod = description.ActionDescriptor.GetActionMethod();
- ResourceType? resourceType = controllerResourceMapping.GetResourceTypeForController(actionMethod.ReflectedType);
+ var actionMethod = description.ActionDescriptor.GetActionMethod();
+ var resourceType = controllerResourceMapping.GetResourceTypeForController(actionMethod.ReflectedType);
return resourceType == null ? ["operations"] : [resourceType.PublicName];
}
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/IncludeDependencyScanner.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/IncludeDependencyScanner.cs
index 97f86e2834..31f0bc7766 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/IncludeDependencyScanner.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/IncludeDependencyScanner.cs
@@ -37,7 +37,7 @@ private static void IncludeResourceType(ResourceType resourceType, ISet resourceTypesFound)
{
- foreach (ResourceType derivedType in resourceType.DirectlyDerivedTypes)
+ foreach (var derivedType in resourceType.DirectlyDerivedTypes)
{
IncludeResourceType(derivedType, resourceTypesFound);
}
@@ -45,7 +45,7 @@ private static void IncludeDerivedTypes(ResourceType resourceType, ISet resourceTypesFound)
{
- foreach (RelationshipAttribute relationship in resourceType.Relationships)
+ foreach (var relationship in resourceType.Relationships)
{
IncludeResourceType(relationship.RightType, resourceTypesFound);
}
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiActionDescriptorCollectionProvider.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiActionDescriptorCollectionProvider.cs
index 6d63a540cd..1446f35e8b 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiActionDescriptorCollectionProvider.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiActionDescriptorCollectionProvider.cs
@@ -41,13 +41,13 @@ public JsonApiActionDescriptorCollectionProvider(IActionDescriptorCollectionProv
private ActionDescriptorCollection GetActionDescriptors()
{
- List newDescriptors = _defaultProvider.ActionDescriptors.Items.ToList();
- ActionDescriptor[] endpoints = newDescriptors.Where(IsVisibleJsonApiEndpoint).ToArray();
+ var newDescriptors = _defaultProvider.ActionDescriptors.Items.ToList();
+ var endpoints = newDescriptors.Where(IsVisibleJsonApiEndpoint).ToArray();
- foreach (ActionDescriptor endpoint in endpoints)
+ foreach (var endpoint in endpoints)
{
- MethodInfo actionMethod = endpoint.GetActionMethod();
- JsonApiEndpointMetadataContainer endpointMetadataContainer = _jsonApiEndpointMetadataProvider.Get(actionMethod);
+ var actionMethod = endpoint.GetActionMethod();
+ var endpointMetadataContainer = _jsonApiEndpointMetadataProvider.Get(actionMethod);
List replacementDescriptorsForEndpoint =
[
@@ -62,7 +62,7 @@ .. AddJsonApiMetadataToAction(endpoint, endpointMetadataContainer.ResponseMetada
}
}
- int descriptorVersion = _defaultProvider.ActionDescriptors.Version;
+ var descriptorVersion = _defaultProvider.ActionDescriptors.Version;
return new ActionDescriptorCollection(newDescriptors.AsReadOnly(), descriptorVersion);
}
@@ -136,9 +136,9 @@ private static bool ProducesJsonApiResponseDocument(ActionDescriptor endpoint)
if (produces != null)
{
- foreach (string contentType in produces.ContentTypes)
+ foreach (var contentType in produces.ContentTypes)
{
- if (MediaTypeHeaderValue.TryParse(contentType, out MediaTypeHeaderValue? headerValue))
+ if (MediaTypeHeaderValue.TryParse(contentType, out var headerValue))
{
if (headerValue.MediaType.Equals(DefaultMediaType, StringComparison.OrdinalIgnoreCase))
{
@@ -156,14 +156,14 @@ private static List Expand(ActionDescriptor genericEndpoint, N
{
List expansion = [];
- foreach ((string relationshipName, Type documentType) in metadata.DocumentTypesByRelationshipName)
+ foreach ((var relationshipName, var documentType) in metadata.DocumentTypesByRelationshipName)
{
if (genericEndpoint.AttributeRouteInfo == null)
{
throw new NotSupportedException("Only attribute routing is supported for JsonApiDotNetCore endpoints.");
}
- ActionDescriptor expandedEndpoint = Clone(genericEndpoint);
+ var expandedEndpoint = Clone(genericEndpoint);
RemovePathParameter(expandedEndpoint.Parameters, "relationshipName");
@@ -179,11 +179,11 @@ private static List Expand(ActionDescriptor genericEndpoint, N
private static void UpdateBodyParameterDescriptor(ActionDescriptor endpoint, Type documentType, string? parameterName)
{
- ControllerParameterDescriptor? requestBodyDescriptor = endpoint.GetBodyParameterDescriptor();
+ var requestBodyDescriptor = endpoint.GetBodyParameterDescriptor();
if (requestBodyDescriptor == null)
{
- MethodInfo actionMethod = endpoint.GetActionMethod();
+ var actionMethod = endpoint.GetActionMethod();
throw new InvalidConfigurationException(
$"The action method '{actionMethod}' on type '{actionMethod.ReflectedType?.FullName}' contains no parameter with a [FromBody] attribute.");
@@ -195,7 +195,7 @@ private static void UpdateBodyParameterDescriptor(ActionDescriptor endpoint, Typ
private static ActionDescriptor Clone(ActionDescriptor descriptor)
{
- ActionDescriptor clone = descriptor.MemberwiseClone();
+ var clone = descriptor.MemberwiseClone();
clone.AttributeRouteInfo = descriptor.AttributeRouteInfo!.MemberwiseClone();
clone.FilterDescriptors = descriptor.FilterDescriptors.Select(Clone).ToList();
clone.Parameters = descriptor.Parameters.Select(parameter => parameter.MemberwiseClone()).ToList();
@@ -204,7 +204,7 @@ private static ActionDescriptor Clone(ActionDescriptor descriptor)
private static FilterDescriptor Clone(FilterDescriptor descriptor)
{
- IFilterMetadata clone = descriptor.Filter.MemberwiseClone();
+ var clone = descriptor.Filter.MemberwiseClone();
return new FilterDescriptor(clone, descriptor.Scope)
{
@@ -214,7 +214,7 @@ private static FilterDescriptor Clone(FilterDescriptor descriptor)
private static void RemovePathParameter(ICollection parameters, string parameterName)
{
- ParameterDescriptor descriptor = parameters.Single(parameterDescriptor => parameterDescriptor.Name == parameterName);
+ var descriptor = parameters.Single(parameterDescriptor => parameterDescriptor.Name == parameterName);
parameters.Remove(descriptor);
}
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiMetadata/EndpointResolver.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiMetadata/EndpointResolver.cs
index e4c074f081..7cd5d5877d 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiMetadata/EndpointResolver.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiMetadata/EndpointResolver.cs
@@ -22,7 +22,7 @@ public JsonApiEndpoints GetEndpoint(MethodInfo controllerAction)
return JsonApiEndpoints.None;
}
- IEnumerable httpMethodAttributes = controllerAction.GetCustomAttributes(true);
+ var httpMethodAttributes = controllerAction.GetCustomAttributes(true);
return httpMethodAttributes.GetJsonApiEndpoint();
}
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiMetadata/JsonApiEndpointMetadataProvider.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiMetadata/JsonApiEndpointMetadataProvider.cs
index 6fd6f9e42e..63ca37b5ac 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiMetadata/JsonApiEndpointMetadataProvider.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiMetadata/JsonApiEndpointMetadataProvider.cs
@@ -34,18 +34,18 @@ public JsonApiEndpointMetadataContainer Get(MethodInfo controllerAction)
return new JsonApiEndpointMetadataContainer(AtomicOperationsRequestMetadata.Instance, AtomicOperationsResponseMetadata.Instance);
}
- JsonApiEndpoints endpoint = EndpointResolver.Instance.GetEndpoint(controllerAction);
+ var endpoint = EndpointResolver.Instance.GetEndpoint(controllerAction);
if (endpoint == JsonApiEndpoints.None)
{
throw new NotSupportedException($"Unable to provide metadata for non-JSON:API endpoint '{controllerAction.ReflectedType!.FullName}'.");
}
- ResourceType? primaryResourceType = _controllerResourceMapping.GetResourceTypeForController(controllerAction.ReflectedType);
+ var primaryResourceType = _controllerResourceMapping.GetResourceTypeForController(controllerAction.ReflectedType);
ConsistencyGuard.ThrowIf(primaryResourceType == null);
- IJsonApiRequestMetadata? requestMetadata = GetRequestMetadata(endpoint, primaryResourceType);
- IJsonApiResponseMetadata? responseMetadata = GetResponseMetadata(endpoint, primaryResourceType);
+ var requestMetadata = GetRequestMetadata(endpoint, primaryResourceType);
+ var responseMetadata = GetResponseMetadata(endpoint, primaryResourceType);
return new JsonApiEndpointMetadataContainer(requestMetadata, responseMetadata);
}
@@ -63,21 +63,21 @@ public JsonApiEndpointMetadataContainer Get(MethodInfo controllerAction)
private static PrimaryRequestMetadata GetPostResourceRequestMetadata(Type resourceClrType)
{
- Type documentType = typeof(CreateRequestDocument<>).MakeGenericType(resourceClrType);
+ var documentType = typeof(CreateRequestDocument<>).MakeGenericType(resourceClrType);
return new PrimaryRequestMetadata(documentType);
}
private static PrimaryRequestMetadata GetPatchResourceRequestMetadata(Type resourceClrType)
{
- Type documentType = typeof(UpdateRequestDocument<>).MakeGenericType(resourceClrType);
+ var documentType = typeof(UpdateRequestDocument<>).MakeGenericType(resourceClrType);
return new PrimaryRequestMetadata(documentType);
}
private RelationshipRequestMetadata GetRelationshipRequestMetadata(IEnumerable relationships, bool ignoreHasOneRelationships)
{
- IEnumerable relationshipsOfEndpoint = ignoreHasOneRelationships ? relationships.OfType() : relationships;
+ var relationshipsOfEndpoint = ignoreHasOneRelationships ? relationships.OfType() : relationships;
IDictionary requestDocumentTypesByRelationshipName = relationshipsOfEndpoint.ToDictionary(relationship => relationship.PublicName,
_nonPrimaryDocumentTypeFactory.GetForRelationshipRequest);
@@ -99,8 +99,8 @@ private RelationshipRequestMetadata GetRelationshipRequestMetadata(IEnumerable) : typeof(PrimaryResponseDocument<>);
- Type documentType = documentOpenType.MakeGenericType(resourceClrType);
+ var documentOpenType = endpointReturnsCollection ? typeof(CollectionResponseDocument<>) : typeof(PrimaryResponseDocument<>);
+ var documentType = documentOpenType.MakeGenericType(resourceClrType);
return new PrimaryResponseMetadata(documentType);
}
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiMetadata/NonPrimaryDocumentTypeFactory.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiMetadata/NonPrimaryDocumentTypeFactory.cs
index 7550d59ab3..af6f01cbf6 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiMetadata/NonPrimaryDocumentTypeFactory.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiMetadata/NonPrimaryDocumentTypeFactory.cs
@@ -49,7 +49,7 @@ private Type Get(RelationshipAttribute relationship, DocumentOpenTypes types)
{
// @formatter:nested_ternary_style expanded
- Type documentOpenType = relationship is HasManyAttribute
+ var documentOpenType = relationship is HasManyAttribute
? types.ManyDataOpenType
: _resourceFieldValidationMetadataProvider.IsNullable(relationship)
? types.NullableSingleDataOpenType
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiMetadata/RelationshipTypeFactory.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiMetadata/RelationshipTypeFactory.cs
index be5a6fd30c..3d8a2f34a5 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiMetadata/RelationshipTypeFactory.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiMetadata/RelationshipTypeFactory.cs
@@ -31,7 +31,7 @@ public Type GetForResponse(RelationshipAttribute relationship)
// @formatter:nested_ternary_style expanded
- Type relationshipDataOpenType = relationship is HasManyAttribute
+ var relationshipDataOpenType = relationship is HasManyAttribute
? typeof(ToManyInResponse<>)
: _resourceFieldValidationMetadataProvider.IsNullable(relationship)
? typeof(NullableToOneInResponse<>)
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiRequestFormatMetadataProvider.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiRequestFormatMetadataProvider.cs
index 6def822bd9..0862258539 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiRequestFormatMetadataProvider.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiRequestFormatMetadataProvider.cs
@@ -28,7 +28,7 @@ public IReadOnlyList GetSupportedContentTypes(string contentType, Type o
ArgumentException.ThrowIfNullOrEmpty(contentType);
ArgumentNullException.ThrowIfNull(objectType);
- if (JsonApiSchemaFacts.IsRequestBodySchemaType(objectType) && MediaTypeHeaderValue.TryParse(contentType, out MediaTypeHeaderValue? headerValue) &&
+ if (JsonApiSchemaFacts.IsRequestBodySchemaType(objectType) && MediaTypeHeaderValue.TryParse(contentType, out var headerValue) &&
headerValue.MediaType.Equals(DefaultMediaType, StringComparison.OrdinalIgnoreCase))
{
return new MediaTypeCollection
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiSchemaFacts.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiSchemaFacts.cs
index bf91aed0e7..f744c2e6a4 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiSchemaFacts.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiSchemaFacts.cs
@@ -34,7 +34,7 @@ internal static class JsonApiSchemaFacts
public static bool IsRequestBodySchemaType(Type schemaType)
{
- Type lookupType = schemaType.ConstructedToOpenType();
+ var lookupType = schemaType.ConstructedToOpenType();
return RequestBodySchemaTypes.Contains(lookupType);
}
@@ -42,13 +42,13 @@ public static bool HasNullableDataProperty(Type schemaType)
{
// Swashbuckle infers non-nullable because our Data properties are [Required].
- Type lookupType = schemaType.ConstructedToOpenType();
+ var lookupType = schemaType.ConstructedToOpenType();
return SchemaTypesHavingNullableDataProperty.Contains(lookupType);
}
public static bool IsRelationshipInResponseType(Type schemaType)
{
- Type lookupType = schemaType.ConstructedToOpenType();
+ var lookupType = schemaType.ConstructedToOpenType();
return RelationshipInResponseSchemaTypes.Contains(lookupType);
}
}
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiSchemaIdSelector.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiSchemaIdSelector.cs
index 0e2fc803de..2252afd7e9 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiSchemaIdSelector.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/JsonApiSchemaIdSelector.cs
@@ -87,20 +87,20 @@ public string GetSchemaId(Type type)
{
ArgumentNullException.ThrowIfNull(type);
- ResourceType? resourceType = _resourceGraph.FindResourceType(type);
+ var resourceType = _resourceGraph.FindResourceType(type);
if (resourceType != null)
{
return resourceType.PublicName.Singularize();
}
- Type openType = type.ConstructedToOpenType();
+ var openType = type.ConstructedToOpenType();
if (openType != type)
{
- if (SchemaTypeToTemplateMap.TryGetValue(openType, out string? schemaTemplate))
+ if (SchemaTypeToTemplateMap.TryGetValue(openType, out var schemaTemplate))
{
- Type resourceClrType = type.GetGenericArguments().First();
+ var resourceClrType = type.GetGenericArguments().First();
resourceType = _resourceGraph.GetResourceType(resourceClrType);
return ApplySchemaTemplate(schemaTemplate, resourceType, null, null);
@@ -108,7 +108,7 @@ public string GetSchemaId(Type type)
}
else
{
- if (SchemaTypeToTemplateMap.TryGetValue(type, out string? schemaTemplate))
+ if (SchemaTypeToTemplateMap.TryGetValue(type, out var schemaTemplate))
{
return ApplySchemaTemplate(schemaTemplate, null, null, null);
}
@@ -120,7 +120,7 @@ public string GetSchemaId(Type type)
private string ApplySchemaTemplate(string schemaTemplate, ResourceType? resourceType, string? relationshipName, AtomicOperationCode? operationCode)
{
- string schemaId = schemaTemplate;
+ var schemaId = schemaTemplate;
schemaId = resourceType != null
? schemaId.Replace("[ResourceName]", resourceType.PublicName.Singularize()).Pascalize()
@@ -136,9 +136,9 @@ private string ApplySchemaTemplate(string schemaTemplate, ResourceType? resource
schemaId = schemaId.Replace("[OperationCode]", operationCode.Value.ToString().Pascalize());
}
- string pascalCaseSchemaId = schemaId.Pascalize();
+ var pascalCaseSchemaId = schemaId.Pascalize();
- JsonNamingPolicy? namingPolicy = _options.SerializerOptions.PropertyNamingPolicy;
+ var namingPolicy = _options.SerializerOptions.PropertyNamingPolicy;
return namingPolicy != null ? namingPolicy.ConvertName(pascalCaseSchemaId) : pascalCaseSchemaId;
}
@@ -168,7 +168,7 @@ public string GetAtomicOperationDiscriminatorValue(AtomicOperationCode operation
{
ArgumentNullException.ThrowIfNull(relationship);
- string schemaIdTemplate = operationCode switch
+ var schemaIdTemplate = operationCode switch
{
AtomicOperationCode.Add => AddToRelationshipAtomicOperationDiscriminatorValueTemplate,
AtomicOperationCode.Remove => RemoveFromRelationshipAtomicOperationDiscriminatorValueTemplate,
@@ -182,7 +182,7 @@ public string GetRelationshipAtomicOperationSchemaId(RelationshipAttribute relat
{
ArgumentNullException.ThrowIfNull(relationship);
- string schemaIdTemplate = operationCode switch
+ var schemaIdTemplate = operationCode switch
{
AtomicOperationCode.Add => AddToRelationshipAtomicOperationSchemaIdTemplate,
AtomicOperationCode.Remove => RemoveFromRelationshipAtomicOperationSchemaIdTemplate,
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/OpenApiDescriptionLinkProvider.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/OpenApiDescriptionLinkProvider.cs
index 278c2154a9..8d675d70ed 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/OpenApiDescriptionLinkProvider.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/OpenApiDescriptionLinkProvider.cs
@@ -26,13 +26,13 @@ public OpenApiDescriptionLinkProvider(IOptionsMonitor s
///
public string? GetUrl()
{
- SwaggerGeneratorOptions swaggerGeneratorOptions = _swaggerGeneratorOptionsMonitor.CurrentValue;
+ var swaggerGeneratorOptions = _swaggerGeneratorOptionsMonitor.CurrentValue;
if (swaggerGeneratorOptions.SwaggerDocs.Count > 0)
{
- string latestVersionDocumentName = swaggerGeneratorOptions.SwaggerDocs.Last().Key;
+ var latestVersionDocumentName = swaggerGeneratorOptions.SwaggerDocs.Last().Key;
- SwaggerOptions swaggerOptions = _swaggerOptionsMonitor.CurrentValue;
+ var swaggerOptions = _swaggerOptionsMonitor.CurrentValue;
return swaggerOptions.RouteTemplate.Replace("{documentName}", latestVersionDocumentName).Replace("{extension:regex(^(json|ya?ml)$)}", "json");
}
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/OpenApiEndpointConvention.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/OpenApiEndpointConvention.cs
index 75649b85a8..f6439adb24 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/OpenApiEndpointConvention.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/OpenApiEndpointConvention.cs
@@ -32,7 +32,7 @@ public void Apply(ActionModel action)
{
ArgumentNullException.ThrowIfNull(action);
- JsonApiEndpointWrapper endpoint = JsonApiEndpointWrapper.FromActionModel(action);
+ var endpoint = JsonApiEndpointWrapper.FromActionModel(action);
if (endpoint.IsUnknown)
{
@@ -42,7 +42,7 @@ public void Apply(ActionModel action)
return;
}
- ResourceType? resourceType = _controllerResourceMapping.GetResourceTypeForController(action.Controller.ControllerType);
+ var resourceType = _controllerResourceMapping.GetResourceTypeForController(action.Controller.ControllerType);
if (ShouldSuppressEndpoint(endpoint, resourceType))
{
@@ -84,7 +84,7 @@ private bool ShouldSuppressEndpoint(JsonApiEndpointWrapper endpoint, ResourceTyp
private static bool IsEndpointAvailable(JsonApiEndpoints endpoint, ResourceType resourceType)
{
- JsonApiEndpoints availableEndpoints = GetGeneratedControllerEndpoints(resourceType);
+ var availableEndpoints = GetGeneratedControllerEndpoints(resourceType);
if (availableEndpoints == JsonApiEndpoints.None)
{
@@ -162,16 +162,16 @@ private static bool IsSecondaryOrRelationshipEndpoint(JsonApiEndpoints endpoint)
private void SetResponseMetadata(ActionModel action, JsonApiEndpointWrapper endpoint, ResourceType? resourceType)
{
- JsonApiMediaType mediaType = GetMediaTypeForEndpoint(endpoint);
+ var mediaType = GetMediaTypeForEndpoint(endpoint);
action.Filters.Add(new ProducesAttribute(mediaType.ToString()));
- foreach (HttpStatusCode statusCode in GetSuccessStatusCodesForEndpoint(endpoint))
+ foreach (var statusCode in GetSuccessStatusCodesForEndpoint(endpoint))
{
// The return type is set later by JsonApiActionDescriptorCollectionProvider.
action.Filters.Add(new ProducesResponseTypeAttribute((int)statusCode));
}
- foreach (HttpStatusCode statusCode in GetErrorStatusCodesForEndpoint(endpoint, resourceType))
+ foreach (var statusCode in GetErrorStatusCodesForEndpoint(endpoint, resourceType))
{
action.Filters.Add(new ProducesResponseTypeAttribute(typeof(ErrorResponseDocument), (int)statusCode));
}
@@ -244,7 +244,7 @@ private HttpStatusCode[] GetErrorStatusCodesForEndpoint(JsonApiEndpointWrapper e
}
// Condition doesn't apply to atomic operations, because Forbidden is also used when an operation is not accessible.
- ClientIdGenerationMode clientIdGeneration = resourceType?.ClientIdGeneration ?? _options.ClientIdGeneration;
+ var clientIdGeneration = resourceType?.ClientIdGeneration ?? _options.ClientIdGeneration;
HttpStatusCode[]? statusCodes = null;
@@ -304,7 +304,7 @@ private void SetRequestMetadata(ActionModel action, JsonApiEndpointWrapper endpo
{
if (RequiresRequestBody(endpoint))
{
- JsonApiMediaType mediaType = GetMediaTypeForEndpoint(endpoint);
+ var mediaType = GetMediaTypeForEndpoint(endpoint);
action.Filters.Add(new ConsumesAttribute(mediaType.ToString()));
}
}
@@ -336,7 +336,7 @@ public static JsonApiEndpointWrapper FromActionModel(ActionModel actionModel)
return AtomicOperations;
}
- JsonApiEndpoints endpoint = EndpointResolver.Instance.GetEndpoint(actionModel.ActionMethod);
+ var endpoint = EndpointResolver.Instance.GetEndpoint(actionModel.ActionMethod);
return new JsonApiEndpointWrapper(false, endpoint);
}
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/OpenApiOperationIdSelector.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/OpenApiOperationIdSelector.cs
index ed11481e27..9e4829fbe4 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/OpenApiOperationIdSelector.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/OpenApiOperationIdSelector.cs
@@ -53,17 +53,17 @@ public string GetOpenApiOperationId(ApiDescription endpoint)
{
ArgumentNullException.ThrowIfNull(endpoint);
- MethodInfo actionMethod = endpoint.ActionDescriptor.GetActionMethod();
- ResourceType? primaryResourceType = _controllerResourceMapping.GetResourceTypeForController(actionMethod.ReflectedType);
+ var actionMethod = endpoint.ActionDescriptor.GetActionMethod();
+ var primaryResourceType = _controllerResourceMapping.GetResourceTypeForController(actionMethod.ReflectedType);
- string template = GetTemplate(endpoint);
+ var template = GetTemplate(endpoint);
return ApplyTemplate(template, primaryResourceType, endpoint);
}
private static string GetTemplate(ApiDescription endpoint)
{
- Type bodyType = GetBodyType(endpoint);
- ConsistencyGuard.ThrowIf(!SchemaOpenTypeToOpenApiOperationIdTemplateMap.TryGetValue(bodyType, out string? template));
+ var bodyType = GetBodyType(endpoint);
+ ConsistencyGuard.ThrowIf(!SchemaOpenTypeToOpenApiOperationIdTemplateMap.TryGetValue(bodyType, out var template));
return template;
}
@@ -72,8 +72,8 @@ private static Type GetBodyType(ApiDescription endpoint)
var producesResponseTypeAttribute = endpoint.ActionDescriptor.GetFilterMetadata();
ConsistencyGuard.ThrowIf(producesResponseTypeAttribute == null);
- ControllerParameterDescriptor? requestBodyDescriptor = endpoint.ActionDescriptor.GetBodyParameterDescriptor();
- Type bodyType = (requestBodyDescriptor?.ParameterType ?? producesResponseTypeAttribute.Type).ConstructedToOpenType();
+ var requestBodyDescriptor = endpoint.ActionDescriptor.GetBodyParameterDescriptor();
+ var bodyType = (requestBodyDescriptor?.ParameterType ?? producesResponseTypeAttribute.Type).ConstructedToOpenType();
if (bodyType == typeof(CollectionResponseDocument<>) && endpoint.ParameterDescriptions.Count > 0)
{
@@ -88,13 +88,13 @@ private string ApplyTemplate(string openApiOperationIdTemplate, ResourceType? re
ConsistencyGuard.ThrowIf(endpoint.RelativePath == null);
ConsistencyGuard.ThrowIf(endpoint.HttpMethod == null);
- string method = endpoint.HttpMethod.ToLowerInvariant();
- string relationshipName = openApiOperationIdTemplate.Contains("[RelationshipName]") ? endpoint.RelativePath.Split('/').Last() : string.Empty;
+ var method = endpoint.HttpMethod.ToLowerInvariant();
+ var relationshipName = openApiOperationIdTemplate.Contains("[RelationshipName]") ? endpoint.RelativePath.Split('/').Last() : string.Empty;
// @formatter:wrap_chained_method_calls chop_always
// @formatter:wrap_before_first_method_call true
- string pascalCaseOpenApiOperationId = openApiOperationIdTemplate
+ var pascalCaseOpenApiOperationId = openApiOperationIdTemplate
.Replace("[Method]", method)
.Replace("[PrimaryResourceName]", resourceType?.PublicName.Singularize())
.Replace("[RelationshipName]", relationshipName)
@@ -103,7 +103,7 @@ private string ApplyTemplate(string openApiOperationIdTemplate, ResourceType? re
// @formatter:wrap_before_first_method_call true restore
// @formatter:wrap_chained_method_calls restore
- JsonNamingPolicy? namingPolicy = _options.SerializerOptions.PropertyNamingPolicy;
+ var namingPolicy = _options.SerializerOptions.PropertyNamingPolicy;
return namingPolicy != null ? namingPolicy.ConvertName(pascalCaseOpenApiOperationId) : pascalCaseOpenApiOperationId;
}
}
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/OpenApiResourceObjectConverter.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/OpenApiResourceObjectConverter.cs
index dd7c9503e7..218a244c62 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/OpenApiResourceObjectConverter.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/OpenApiResourceObjectConverter.cs
@@ -85,7 +85,7 @@ private bool IsOpenApiDiscriminator(string extensionNamespace, string extensionN
private static void ValidateOpenApiDiscriminatorValue(ResourceType resourceType, string relativeJsonPointer, Utf8JsonReader reader)
{
- string? discriminatorValue = reader.GetString();
+ var discriminatorValue = reader.GetString();
if (discriminatorValue != resourceType.PublicName)
{
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/OpenApiSchemaExtensions.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/OpenApiSchemaExtensions.cs
index 10095834b2..fa7912601b 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/OpenApiSchemaExtensions.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/OpenApiSchemaExtensions.cs
@@ -11,9 +11,9 @@ public static void ReorderProperties(this OpenApiSchema fullSchema, IEnumerable<
var propertiesInOrder = new Dictionary();
- foreach (string propertyName in propertyNamesInOrder)
+ foreach (var propertyName in propertyNamesInOrder)
{
- if (fullSchema.Properties.TryGetValue(propertyName, out OpenApiSchema? schema))
+ if (fullSchema.Properties.TryGetValue(propertyName, out var schema))
{
propertiesInOrder.Add(propertyName, schema);
}
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/ResourceFieldValidationMetadataProvider.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/ResourceFieldValidationMetadataProvider.cs
index f0ce60c730..f6fa38592c 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/ResourceFieldValidationMetadataProvider.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/ResourceFieldValidationMetadataProvider.cs
@@ -30,7 +30,7 @@ public bool IsNullable(ResourceFieldAttribute field)
return false;
}
- bool hasRequiredAttribute = field.Property.HasAttribute();
+ var hasRequiredAttribute = field.Property.HasAttribute();
if (_options.ValidateModelState && hasRequiredAttribute)
{
@@ -38,7 +38,7 @@ public bool IsNullable(ResourceFieldAttribute field)
}
NullabilityInfoContext nullabilityContext = new();
- NullabilityInfo nullabilityInfo = nullabilityContext.Create(field.Property);
+ var nullabilityInfo = nullabilityContext.Create(field.Property);
return nullabilityInfo.ReadState != NullabilityState.NotNull;
}
@@ -46,7 +46,7 @@ public bool IsRequired(ResourceFieldAttribute field)
{
ArgumentNullException.ThrowIfNull(field);
- bool hasRequiredAttribute = field.Property.HasAttribute();
+ var hasRequiredAttribute = field.Property.HasAttribute();
if (!_options.ValidateModelState)
{
@@ -59,8 +59,8 @@ public bool IsRequired(ResourceFieldAttribute field)
}
NullabilityInfoContext nullabilityContext = new();
- NullabilityInfo nullabilityInfo = nullabilityContext.Create(field.Property);
- bool isRequiredValueType = field.Property.PropertyType.IsValueType && hasRequiredAttribute && nullabilityInfo.ReadState == NullabilityState.NotNull;
+ var nullabilityInfo = nullabilityContext.Create(field.Property);
+ var isRequiredValueType = field.Property.PropertyType.IsValueType && hasRequiredAttribute && nullabilityInfo.ReadState == NullabilityState.NotNull;
if (isRequiredValueType)
{
@@ -73,7 +73,7 @@ public bool IsRequired(ResourceFieldAttribute field)
private bool IsModelStateValidationRequired(ResourceFieldAttribute field)
{
- ModelMetadata modelMetadata = _modelMetadataProvider.GetMetadataForProperty(field.Type.ClrType, field.Property.Name);
+ var modelMetadata = _modelMetadataProvider.GetMetadataForProperty(field.Type.ClrType, field.Property.Name);
// Non-nullable reference types are implicitly required, unless SuppressImplicitRequiredAttributeForNonNullableReferenceTypes is set.
return modelMetadata.ValidatorMetadata.Any(validatorMetadata => validatorMetadata is RequiredAttribute);
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerationTracer.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerationTracer.cs
index 6dbd6bb2f3..c941b1d311 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerationTracer.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerationTracer.cs
@@ -62,11 +62,11 @@ public ISchemaGenerationTraceScope TraceStart(object generator, Type schemaOpenT
private ISchemaGenerationTraceScope InnerTraceStart(object generator, Func getSchemaTypeName)
{
- ILogger logger = _loggerFactory.CreateLogger(generator.GetType());
+ var logger = _loggerFactory.CreateLogger(generator.GetType());
if (logger.IsEnabled(LogLevel.Trace))
{
- string schemaTypeName = getSchemaTypeName();
+ var schemaTypeName = getSchemaTypeName();
return new SchemaGenerationTraceScope(logger, schemaTypeName);
}
@@ -77,8 +77,8 @@ private static string GetSchemaTypeName(Type type)
{
if (type.IsConstructedGenericType)
{
- string typeArguments = string.Join(',', type.GetGenericArguments().Select(GetSchemaTypeName));
- int arityIndex = type.Name.IndexOf('`');
+ var typeArguments = string.Join(',', type.GetGenericArguments().Select(GetSchemaTypeName));
+ var arityIndex = type.Name.IndexOf('`');
return $"{type.Name[..arityIndex]}<{typeArguments}>";
}
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/AtomicOperationCodeSchemaGenerator.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/AtomicOperationCodeSchemaGenerator.cs
index 78a25da441..b426d3e981 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/AtomicOperationCodeSchemaGenerator.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/AtomicOperationCodeSchemaGenerator.cs
@@ -23,7 +23,7 @@ public OpenApiSchema GenerateSchema(AtomicOperationCode operationCode, SchemaRep
{
ArgumentNullException.ThrowIfNull(schemaRepository);
- string schemaId = _schemaIdSelector.GetAtomicOperationCodeSchemaId(operationCode);
+ var schemaId = _schemaIdSelector.GetAtomicOperationCodeSchemaId(operationCode);
if (schemaRepository.Schemas.ContainsKey(schemaId))
{
@@ -37,9 +37,9 @@ public OpenApiSchema GenerateSchema(AtomicOperationCode operationCode, SchemaRep
};
}
- using ISchemaGenerationTraceScope traceScope = _schemaGenerationTracer.TraceStart(this, operationCode);
+ using var traceScope = _schemaGenerationTracer.TraceStart(this, operationCode);
- string enumValue = operationCode.ToString().ToLowerInvariant();
+ var enumValue = operationCode.ToString().ToLowerInvariant();
var fullSchema = new OpenApiSchema
{
@@ -47,7 +47,7 @@ public OpenApiSchema GenerateSchema(AtomicOperationCode operationCode, SchemaRep
Enum = [new OpenApiString(enumValue)]
};
- OpenApiSchema referenceSchema = schemaRepository.AddDefinition(schemaId, fullSchema);
+ var referenceSchema = schemaRepository.AddDefinition(schemaId, fullSchema);
traceScope.TraceSucceeded(schemaId);
return referenceSchema;
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/DataContainerSchemaGenerator.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/DataContainerSchemaGenerator.cs
index c4b41dd0f5..1ac730c2b0 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/DataContainerSchemaGenerator.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/DataContainerSchemaGenerator.cs
@@ -41,19 +41,19 @@ public OpenApiSchema GenerateSchema(Type dataContainerSchemaType, ResourceType r
ArgumentNullException.ThrowIfNull(resourceType);
ArgumentNullException.ThrowIfNull(schemaRepository);
- if (schemaRepository.TryLookupByType(dataContainerSchemaType, out OpenApiSchema referenceSchemaForData))
+ if (schemaRepository.TryLookupByType(dataContainerSchemaType, out var referenceSchemaForData))
{
return referenceSchemaForData;
}
- Type dataConstructedType = GetElementTypeOfDataProperty(dataContainerSchemaType, resourceType);
+ var dataConstructedType = GetElementTypeOfDataProperty(dataContainerSchemaType, resourceType);
if (schemaRepository.TryLookupByType(dataConstructedType, out _))
{
return referenceSchemaForData;
}
- using ISchemaGenerationTraceScope traceScope = _schemaGenerationTracer.TraceStart(this, dataConstructedType);
+ using var traceScope = _schemaGenerationTracer.TraceStart(this, dataConstructedType);
if (canIncludeRelated)
{
@@ -74,10 +74,10 @@ public OpenApiSchema GenerateSchema(Type dataContainerSchemaType, ResourceType r
private static Type GetElementTypeOfDataProperty(Type dataContainerConstructedType, ResourceType resourceType)
{
- PropertyInfo? dataProperty = dataContainerConstructedType.GetProperty("Data");
+ var dataProperty = dataContainerConstructedType.GetProperty("Data");
ConsistencyGuard.ThrowIf(dataProperty == null);
- Type innerPropertyType = dataProperty.PropertyType.ConstructedToOpenType().IsAssignableTo(typeof(ICollection<>))
+ var innerPropertyType = dataProperty.PropertyType.ConstructedToOpenType().IsAssignableTo(typeof(ICollection<>))
? dataProperty.PropertyType.GenericTypeArguments[0]
: dataProperty.PropertyType;
@@ -93,15 +93,15 @@ private static Type GetElementTypeOfDataProperty(Type dataContainerConstructedTy
private void GenerateReachableRelatedTypesInResponse(Type dataConstructedType, SchemaRepository schemaRepository)
{
- Type dataOpenType = dataConstructedType.GetGenericTypeDefinition();
+ var dataOpenType = dataConstructedType.GetGenericTypeDefinition();
if (dataOpenType == typeof(DataInResponse<>))
{
var resourceSchemaType = ResourceSchemaType.Create(dataConstructedType, _resourceGraph);
- foreach (ResourceType relatedType in IncludeDependencyScanner.Instance.GetReachableRelatedTypes(resourceSchemaType.ResourceType))
+ foreach (var relatedType in IncludeDependencyScanner.Instance.GetReachableRelatedTypes(resourceSchemaType.ResourceType))
{
- Type resourceDataConstructedType = typeof(DataInResponse<>).MakeGenericType(relatedType.ClrType);
+ var resourceDataConstructedType = typeof(DataInResponse<>).MakeGenericType(relatedType.ClrType);
_ = _dataSchemaGenerator.GenerateSchema(resourceDataConstructedType, false, schemaRepository);
}
}
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/DataSchemaGenerator.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/DataSchemaGenerator.cs
index 4d7783f780..759f9d4595 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/DataSchemaGenerator.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/DataSchemaGenerator.cs
@@ -87,15 +87,15 @@ public OpenApiSchema GenerateSchema(Type dataSchemaType, bool forRequestSchema,
ArgumentNullException.ThrowIfNull(dataSchemaType);
ArgumentNullException.ThrowIfNull(schemaRepository);
- if (schemaRepository.TryLookupByType(dataSchemaType, out OpenApiSchema referenceSchemaForData))
+ if (schemaRepository.TryLookupByType(dataSchemaType, out var referenceSchemaForData))
{
return referenceSchemaForData;
}
var resourceSchemaType = ResourceSchemaType.Create(dataSchemaType, _resourceGraph);
- ResourceType resourceType = resourceSchemaType.ResourceType;
+ var resourceType = resourceSchemaType.ResourceType;
- Type? commonDataSchemaType = GetCommonSchemaType(resourceSchemaType.SchemaOpenType);
+ var commonDataSchemaType = GetCommonSchemaType(resourceSchemaType.SchemaOpenType);
if (commonDataSchemaType != null)
{
@@ -104,21 +104,21 @@ public OpenApiSchema GenerateSchema(Type dataSchemaType, bool forRequestSchema,
if (resourceType.BaseType != null)
{
- ResourceType ultimateBaseResourceType = GetUltimateBaseType(resourceType);
- Type ultimateBaseSchemaType = ChangeResourceTypeInSchemaType(dataSchemaType, ultimateBaseResourceType);
+ var ultimateBaseResourceType = GetUltimateBaseType(resourceType);
+ var ultimateBaseSchemaType = ChangeResourceTypeInSchemaType(dataSchemaType, ultimateBaseResourceType);
_ = GenerateSchema(ultimateBaseSchemaType, forRequestSchema, schemaRepository);
return schemaRepository.LookupByType(dataSchemaType);
}
- using ISchemaGenerationTraceScope traceScope = _schemaGenerationTracer.TraceStart(this, dataSchemaType);
+ using var traceScope = _schemaGenerationTracer.TraceStart(this, dataSchemaType);
referenceSchemaForData = _defaultSchemaGenerator.GenerateSchema(dataSchemaType, schemaRepository);
- OpenApiSchema fullSchemaForData = schemaRepository.Schemas[referenceSchemaForData.Reference.Id];
+ var fullSchemaForData = schemaRepository.Schemas[referenceSchemaForData.Reference.Id];
fullSchemaForData.AdditionalPropertiesAllowed = false;
- OpenApiSchema inlineSchemaForData = fullSchemaForData.UnwrapLastExtendedSchema();
+ var inlineSchemaForData = fullSchemaForData.UnwrapLastExtendedSchema();
SetAbstract(inlineSchemaForData, resourceSchemaType);
SetResourceType(inlineSchemaForData, resourceType, schemaRepository);
@@ -207,15 +207,15 @@ public OpenApiSchema GenerateSchemaForCommonData(Type commonDataSchemaType, Sche
ArgumentNullException.ThrowIfNull(commonDataSchemaType);
ArgumentNullException.ThrowIfNull(schemaRepository);
- if (schemaRepository.TryLookupByType(commonDataSchemaType, out OpenApiSchema? referenceSchema))
+ if (schemaRepository.TryLookupByType(commonDataSchemaType, out var referenceSchema))
{
return referenceSchema;
}
- using ISchemaGenerationTraceScope traceScope = _schemaGenerationTracer.TraceStart(this, commonDataSchemaType);
+ using var traceScope = _schemaGenerationTracer.TraceStart(this, commonDataSchemaType);
- OpenApiSchema referenceSchemaForResourceType = _resourceTypeSchemaGenerator.GenerateSchema(schemaRepository);
- OpenApiSchema referenceSchemaForMeta = _metaSchemaGenerator.GenerateSchema(schemaRepository);
+ var referenceSchemaForResourceType = _resourceTypeSchemaGenerator.GenerateSchema(schemaRepository);
+ var referenceSchemaForMeta = _metaSchemaGenerator.GenerateSchema(schemaRepository);
var fullSchema = new OpenApiSchema
{
@@ -238,7 +238,7 @@ public OpenApiSchema GenerateSchemaForCommonData(Type commonDataSchemaType, Sche
}
};
- string schemaId = _schemaIdSelector.GetSchemaId(commonDataSchemaType);
+ var schemaId = _schemaIdSelector.GetSchemaId(commonDataSchemaType);
referenceSchema = schemaRepository.AddDefinition(schemaId, fullSchema);
schemaRepository.RegisterType(commonDataSchemaType, schemaId);
@@ -251,7 +251,7 @@ private static ResourceType GetUltimateBaseType(ResourceType resourceType)
{
return UltimateBaseResourceTypeCache.GetOrAdd(resourceType, type =>
{
- ResourceType baseType = type;
+ var baseType = type;
while (baseType.BaseType != null)
{
@@ -264,7 +264,7 @@ private static ResourceType GetUltimateBaseType(ResourceType resourceType)
private static Type ChangeResourceTypeInSchemaType(Type schemaType, ResourceType resourceType)
{
- Type schemaOpenType = schemaType.ConstructedToOpenType();
+ var schemaOpenType = schemaType.ConstructedToOpenType();
return schemaOpenType.MakeGenericType(resourceType.ClrType);
}
@@ -280,7 +280,7 @@ private void SetResourceType(OpenApiSchema fullSchema, ResourceType resourceType
{
if (fullSchema.Properties.ContainsKey(JsonApiPropertyName.Type))
{
- OpenApiSchema referenceSchema = _resourceTypeSchemaGenerator.GenerateSchema(resourceType, schemaRepository);
+ var referenceSchema = _resourceTypeSchemaGenerator.GenerateSchema(resourceType, schemaRepository);
fullSchema.Properties[JsonApiPropertyName.Type] = referenceSchema.WrapInExtendedSchema();
}
}
@@ -293,7 +293,7 @@ private void AdaptResourceIdentity(OpenApiSchema fullSchema, ResourceSchemaType
return;
}
- bool hasAtomicOperationsEndpoint = _generationCacheSchemaGenerator.HasAtomicOperationsEndpoint(schemaRepository);
+ var hasAtomicOperationsEndpoint = _generationCacheSchemaGenerator.HasAtomicOperationsEndpoint(schemaRepository);
if (!hasAtomicOperationsEndpoint)
{
@@ -302,7 +302,7 @@ private void AdaptResourceIdentity(OpenApiSchema fullSchema, ResourceSchemaType
if (resourceSchemaType.SchemaOpenType == typeof(DataInCreateRequest<>))
{
- ClientIdGenerationMode clientIdGeneration = resourceSchemaType.ResourceType.ClientIdGeneration ?? _options.ClientIdGeneration;
+ var clientIdGeneration = resourceSchemaType.ResourceType.ClientIdGeneration ?? _options.ClientIdGeneration;
if (hasAtomicOperationsEndpoint)
{
@@ -341,7 +341,7 @@ private void SetResourceId(OpenApiSchema fullSchema, ResourceType resourceType,
{
if (fullSchema.Properties.ContainsKey(JsonApiPropertyName.Id))
{
- OpenApiSchema idSchema = _resourceIdSchemaGenerator.GenerateSchema(resourceType, schemaRepository);
+ var idSchema = _resourceIdSchemaGenerator.GenerateSchema(resourceType, schemaRepository);
fullSchema.Properties[JsonApiPropertyName.Id] = idSchema;
}
}
@@ -349,7 +349,7 @@ private void SetResourceId(OpenApiSchema fullSchema, ResourceType resourceType,
private void SetResourceFields(OpenApiSchema fullSchemaForData, ResourceSchemaType resourceSchemaType, bool forRequestSchema,
SchemaRepository schemaRepository)
{
- bool schemaHasFields = fullSchemaForData.Properties.ContainsKey(JsonApiPropertyName.Attributes) &&
+ var schemaHasFields = fullSchemaForData.Properties.ContainsKey(JsonApiPropertyName.Attributes) &&
fullSchemaForData.Properties.ContainsKey(JsonApiPropertyName.Relationships);
if (schemaHasFields)
@@ -365,10 +365,10 @@ private void SetResourceFields(OpenApiSchema fullSchemaForData, ResourceSchemaTy
private void SetFieldSchemaMembers(OpenApiSchema fullSchemaForData, ResourceSchemaType resourceSchemaTypeForData, bool forRequestSchema, bool forAttributes,
ResourceFieldSchemaBuilder fieldSchemaBuilder, SchemaRepository schemaRepository)
{
- string propertyNameInSchema = forAttributes ? JsonApiPropertyName.Attributes : JsonApiPropertyName.Relationships;
+ var propertyNameInSchema = forAttributes ? JsonApiPropertyName.Attributes : JsonApiPropertyName.Relationships;
- OpenApiSchema referenceSchemaForFields = fullSchemaForData.Properties[propertyNameInSchema].UnwrapLastExtendedSchema();
- OpenApiSchema fullSchemaForFields = schemaRepository.Schemas[referenceSchemaForFields.Reference.Id];
+ var referenceSchemaForFields = fullSchemaForData.Properties[propertyNameInSchema].UnwrapLastExtendedSchema();
+ var fullSchemaForFields = schemaRepository.Schemas[referenceSchemaForFields.Reference.Id];
fullSchemaForFields.AdditionalPropertiesAllowed = false;
SetAbstract(fullSchemaForFields, resourceSchemaTypeForData);
@@ -389,10 +389,10 @@ private void SetFieldSchemaMembers(OpenApiSchema fullSchemaForData, ResourceSche
}
else
{
- ResourceSchemaType resourceSchemaTypeForFields =
+ var resourceSchemaTypeForFields =
GetResourceSchemaTypeForFieldsProperty(resourceSchemaTypeForData, forAttributes ? "Attributes" : "Relationships");
- Type? commonFieldsSchemaType = GetCommonSchemaType(resourceSchemaTypeForFields.SchemaOpenType);
+ var commonFieldsSchemaType = GetCommonSchemaType(resourceSchemaTypeForFields.SchemaOpenType);
ConsistencyGuard.ThrowIf(commonFieldsSchemaType == null);
_ = GenerateSchemaForCommonFields(commonFieldsSchemaType, schemaRepository);
@@ -404,7 +404,7 @@ private void SetFieldSchemaMembers(OpenApiSchema fullSchemaForData, ResourceSche
if (resourceSchemaTypeForFields.ResourceType.BaseType != null)
{
- ResourceSchemaType resourceSchemaTypeForBase =
+ var resourceSchemaTypeForBase =
resourceSchemaTypeForFields.ChangeResourceType(resourceSchemaTypeForFields.ResourceType.BaseType);
baseSchemaType = resourceSchemaTypeForBase.SchemaConstructedType;
@@ -414,7 +414,7 @@ private void SetFieldSchemaMembers(OpenApiSchema fullSchemaForData, ResourceSche
baseSchemaType = commonFieldsSchemaType;
}
- OpenApiSchema referenceSchemaForBase = schemaRepository.LookupByType(baseSchemaType);
+ var referenceSchemaForBase = schemaRepository.LookupByType(baseSchemaType);
schemaRepository.Schemas[referenceSchemaForFields.Reference.Id] = new OpenApiSchema
{
@@ -430,23 +430,23 @@ private void SetFieldSchemaMembers(OpenApiSchema fullSchemaForData, ResourceSche
private ResourceSchemaType GetResourceSchemaTypeForFieldsProperty(ResourceSchemaType resourceSchemaTypeForData, string propertyName)
{
- PropertyInfo? fieldsProperty = resourceSchemaTypeForData.SchemaConstructedType.GetProperty(propertyName);
+ var fieldsProperty = resourceSchemaTypeForData.SchemaConstructedType.GetProperty(propertyName);
ConsistencyGuard.ThrowIf(fieldsProperty == null);
- Type fieldsConstructedType = fieldsProperty.PropertyType;
+ var fieldsConstructedType = fieldsProperty.PropertyType;
return ResourceSchemaType.Create(fieldsConstructedType, _resourceGraph);
}
private OpenApiSchema GenerateSchemaForCommonFields(Type commonFieldsSchemaType, SchemaRepository schemaRepository)
{
- if (schemaRepository.TryLookupByType(commonFieldsSchemaType, out OpenApiSchema? referenceSchema))
+ if (schemaRepository.TryLookupByType(commonFieldsSchemaType, out var referenceSchema))
{
return referenceSchema;
}
- using ISchemaGenerationTraceScope traceScope = _schemaGenerationTracer.TraceStart(this, commonFieldsSchemaType);
+ using var traceScope = _schemaGenerationTracer.TraceStart(this, commonFieldsSchemaType);
- OpenApiSchema referenceSchemaForResourceType = _resourceTypeSchemaGenerator.GenerateSchema(schemaRepository);
+ var referenceSchemaForResourceType = _resourceTypeSchemaGenerator.GenerateSchema(schemaRepository);
var fullSchema = new OpenApiSchema
{
@@ -468,7 +468,7 @@ private OpenApiSchema GenerateSchemaForCommonFields(Type commonFieldsSchemaType,
}
};
- string schemaId = _schemaIdSelector.GetSchemaId(commonFieldsSchemaType);
+ var schemaId = _schemaIdSelector.GetSchemaId(commonFieldsSchemaType);
referenceSchema = schemaRepository.AddDefinition(schemaId, fullSchema);
schemaRepository.RegisterType(commonFieldsSchemaType, schemaId);
@@ -480,16 +480,16 @@ private OpenApiSchema GenerateSchemaForCommonFields(Type commonFieldsSchemaType,
private void MapInDiscriminator(ResourceSchemaType resourceSchemaType, bool forRequestSchema, string discriminatorPropertyName,
SchemaRepository schemaRepository)
{
- OpenApiSchema referenceSchemaForDerived = schemaRepository.LookupByType(resourceSchemaType.SchemaConstructedType);
+ var referenceSchemaForDerived = schemaRepository.LookupByType(resourceSchemaType.SchemaConstructedType);
- foreach (ResourceType? baseResourceType in GetBaseTypesToMapInto(resourceSchemaType, forRequestSchema))
+ foreach (var baseResourceType in GetBaseTypesToMapInto(resourceSchemaType, forRequestSchema))
{
- Type baseSchemaType = baseResourceType == null
+ var baseSchemaType = baseResourceType == null
? GetCommonSchemaType(resourceSchemaType.SchemaOpenType)!
: resourceSchemaType.ChangeResourceType(baseResourceType).SchemaConstructedType;
- OpenApiSchema referenceSchemaForBase = schemaRepository.LookupByType(baseSchemaType);
- OpenApiSchema inlineSchemaForBase = schemaRepository.Schemas[referenceSchemaForBase.Reference.Id].UnwrapLastExtendedSchema();
+ var referenceSchemaForBase = schemaRepository.LookupByType(baseSchemaType);
+ var inlineSchemaForBase = schemaRepository.Schemas[referenceSchemaForBase.Reference.Id].UnwrapLastExtendedSchema();
inlineSchemaForBase.Discriminator ??= new OpenApiDiscriminator
{
@@ -502,7 +502,7 @@ private void MapInDiscriminator(ResourceSchemaType resourceSchemaType, bool forR
inlineSchemaForBase.Required.Add(discriminatorPropertyName);
}
- string publicName = resourceSchemaType.ResourceType.PublicName;
+ var publicName = resourceSchemaType.ResourceType.PublicName;
if (inlineSchemaForBase.Discriminator.Mapping.TryAdd(publicName, referenceSchemaForDerived.Reference.ReferenceV3) && baseResourceType == null)
{
@@ -513,11 +513,11 @@ private void MapInDiscriminator(ResourceSchemaType resourceSchemaType, bool forR
private static IEnumerable GetBaseTypesToMapInto(ResourceSchemaType resourceSchemaType, bool forRequestSchema)
{
- bool dependsOnCommonSchemaType = GetCommonSchemaType(resourceSchemaType.SchemaOpenType) != null;
+ var dependsOnCommonSchemaType = GetCommonSchemaType(resourceSchemaType.SchemaOpenType) != null;
if (RepeatDiscriminatorInResponseDerivedTypes && !forRequestSchema)
{
- ResourceType? baseType = resourceSchemaType.ResourceType.BaseType;
+ var baseType = resourceSchemaType.ResourceType.BaseType;
while (baseType != null)
{
@@ -542,8 +542,8 @@ private void MapInDiscriminator(ResourceSchemaType resourceSchemaType, bool forR
private void MapResourceTypeInEnum(string publicName, SchemaRepository schemaRepository)
{
- string schemaId = _schemaIdSelector.GetResourceTypeSchemaId(null);
- OpenApiSchema fullSchema = schemaRepository.Schemas[schemaId];
+ var schemaId = _schemaIdSelector.GetResourceTypeSchemaId(null);
+ var fullSchema = schemaRepository.Schemas[schemaId];
if (!fullSchema.Enum.Any(openApiAny => openApiAny is OpenApiString openApiString && openApiString.Value == publicName))
{
@@ -563,20 +563,20 @@ private void SetLinksVisibility(OpenApiSchema fullSchema, ResourceSchemaType res
private void GenerateDataSchemasForDirectlyDerivedTypes(ResourceSchemaType resourceSchemaType, bool forRequestSchema, SchemaRepository schemaRepository)
{
- OpenApiSchema referenceSchemaForBase = schemaRepository.LookupByType(resourceSchemaType.SchemaConstructedType);
+ var referenceSchemaForBase = schemaRepository.LookupByType(resourceSchemaType.SchemaConstructedType);
- foreach (ResourceType derivedType in resourceSchemaType.ResourceType.DirectlyDerivedTypes)
+ foreach (var derivedType in resourceSchemaType.ResourceType.DirectlyDerivedTypes)
{
- ResourceSchemaType resourceSchemaTypeForDerived = resourceSchemaType.ChangeResourceType(derivedType);
- Type derivedSchemaType = resourceSchemaTypeForDerived.SchemaConstructedType;
+ var resourceSchemaTypeForDerived = resourceSchemaType.ChangeResourceType(derivedType);
+ var derivedSchemaType = resourceSchemaTypeForDerived.SchemaConstructedType;
- using ISchemaGenerationTraceScope traceScope = _schemaGenerationTracer.TraceStart(this, resourceSchemaTypeForDerived.SchemaConstructedType);
+ using var traceScope = _schemaGenerationTracer.TraceStart(this, resourceSchemaTypeForDerived.SchemaConstructedType);
- OpenApiSchema referenceSchemaForDerived = _defaultSchemaGenerator.GenerateSchema(derivedSchemaType, schemaRepository);
- OpenApiSchema fullSchemaForDerived = schemaRepository.Schemas[referenceSchemaForDerived.Reference.Id];
+ var referenceSchemaForDerived = _defaultSchemaGenerator.GenerateSchema(derivedSchemaType, schemaRepository);
+ var fullSchemaForDerived = schemaRepository.Schemas[referenceSchemaForDerived.Reference.Id];
fullSchemaForDerived.AdditionalPropertiesAllowed = false;
- OpenApiSchema inlineSchemaForDerived = fullSchemaForDerived.UnwrapLastExtendedSchema();
+ var inlineSchemaForDerived = fullSchemaForDerived.UnwrapLastExtendedSchema();
SetResourceFields(inlineSchemaForDerived, resourceSchemaTypeForDerived, forRequestSchema, schemaRepository);
SetAbstract(inlineSchemaForDerived, resourceSchemaTypeForDerived);
@@ -604,7 +604,7 @@ private void GenerateDataSchemasForDirectlyDerivedTypes(ResourceSchemaType resou
if (RequiresRootObjectTypeInDataSchema(resourceSchemaTypeForDerived, forRequestSchema))
{
- OpenApiSchema fullSchemaForData = schemaRepository.Schemas[referenceSchemaForDerived.Reference.Id];
+ var fullSchemaForData = schemaRepository.Schemas[referenceSchemaForDerived.Reference.Id];
fullSchemaForData.Extensions[SetSchemaTypeToObjectDocumentFilter.RequiresRootObjectTypeKey] = new OpenApiBoolean(true);
}
@@ -616,7 +616,7 @@ private void GenerateDataSchemasForDirectlyDerivedTypes(ResourceSchemaType resou
private static void RemoveProperties(OpenApiSchema fullSchema)
{
- foreach (string propertyName in fullSchema.Properties.Keys)
+ foreach (var propertyName in fullSchema.Properties.Keys)
{
fullSchema.Properties.Remove(propertyName);
fullSchema.Required.Remove(propertyName);
@@ -625,7 +625,7 @@ private static void RemoveProperties(OpenApiSchema fullSchema)
private static bool RequiresRootObjectTypeInDataSchema(ResourceSchemaType resourceSchemaType, bool forRequestSchema)
{
- Type? commonDataSchemaType = GetCommonSchemaType(resourceSchemaType.SchemaOpenType);
+ var commonDataSchemaType = GetCommonSchemaType(resourceSchemaType.SchemaOpenType);
if (forRequestSchema && (commonDataSchemaType == typeof(IdentifierInRequest) ||
(!resourceSchemaType.ResourceType.ClrType.IsAbstract && commonDataSchemaType is { IsGenericType: false })))
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/LinksVisibilitySchemaGenerator.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/LinksVisibilitySchemaGenerator.cs
index 5c099a3fc1..8a252b0095 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/LinksVisibilitySchemaGenerator.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/LinksVisibilitySchemaGenerator.cs
@@ -75,9 +75,9 @@ public void UpdateSchemaForTopLevel(Type schemaType, OpenApiSchema fullSchemaFor
ArgumentNullException.ThrowIfNull(schemaType);
ArgumentNullException.ThrowIfNull(fullSchemaForLinksContainer);
- Type lookupType = schemaType.ConstructedToOpenType();
+ var lookupType = schemaType.ConstructedToOpenType();
- if (LinksInJsonApiSchemaTypes.TryGetValue(lookupType, out LinkTypes possibleLinkTypes))
+ if (LinksInJsonApiSchemaTypes.TryGetValue(lookupType, out var possibleLinkTypes))
{
UpdateLinksProperty(fullSchemaForLinksContainer, _lazyLinksVisibility.Value.TopLevelLinks, possibleLinkTypes, schemaRepository);
}
@@ -88,7 +88,7 @@ public void UpdateSchemaForResource(ResourceSchemaType resourceSchemaType, OpenA
ArgumentNullException.ThrowIfNull(resourceSchemaType);
ArgumentNullException.ThrowIfNull(fullSchemaForResourceData);
- if (LinksInJsonApiSchemaTypes.TryGetValue(resourceSchemaType.SchemaOpenType, out LinkTypes possibleLinkTypes))
+ if (LinksInJsonApiSchemaTypes.TryGetValue(resourceSchemaType.SchemaOpenType, out var possibleLinkTypes))
{
UpdateLinksProperty(fullSchemaForResourceData, _lazyLinksVisibility.Value.ResourceLinks, possibleLinkTypes, schemaRepository);
}
@@ -99,9 +99,9 @@ public void UpdateSchemaForRelationship(Type schemaType, OpenApiSchema fullSchem
ArgumentNullException.ThrowIfNull(schemaType);
ArgumentNullException.ThrowIfNull(fullSchemaForRelationship);
- Type lookupType = schemaType.ConstructedToOpenType();
+ var lookupType = schemaType.ConstructedToOpenType();
- if (LinksInJsonApiSchemaTypes.TryGetValue(lookupType, out LinkTypes possibleLinkTypes))
+ if (LinksInJsonApiSchemaTypes.TryGetValue(lookupType, out var possibleLinkTypes))
{
UpdateLinksProperty(fullSchemaForRelationship, _lazyLinksVisibility.Value.RelationshipLinks, possibleLinkTypes, schemaRepository);
}
@@ -110,7 +110,7 @@ public void UpdateSchemaForRelationship(Type schemaType, OpenApiSchema fullSchem
private void UpdateLinksProperty(OpenApiSchema fullSchemaForLinksContainer, LinkTypes visibleLinkTypes, LinkTypes possibleLinkTypes,
SchemaRepository schemaRepository)
{
- OpenApiSchema referenceSchemaForLinks = fullSchemaForLinksContainer.Properties[JsonApiPropertyName.Links].UnwrapLastExtendedSchema();
+ var referenceSchemaForLinks = fullSchemaForLinksContainer.Properties[JsonApiPropertyName.Links].UnwrapLastExtendedSchema();
if ((visibleLinkTypes & possibleLinkTypes) == 0)
{
@@ -121,9 +121,9 @@ private void UpdateLinksProperty(OpenApiSchema fullSchemaForLinksContainer, Link
}
else if (visibleLinkTypes != possibleLinkTypes)
{
- string linksSchemaId = referenceSchemaForLinks.Reference.Id;
+ var linksSchemaId = referenceSchemaForLinks.Reference.Id;
- if (schemaRepository.Schemas.TryGetValue(linksSchemaId, out OpenApiSchema? fullSchemaForLinks))
+ if (schemaRepository.Schemas.TryGetValue(linksSchemaId, out var fullSchemaForLinks))
{
UpdateLinkProperties(fullSchemaForLinks, visibleLinkTypes);
}
@@ -132,7 +132,7 @@ private void UpdateLinksProperty(OpenApiSchema fullSchemaForLinksContainer, Link
private void UpdateLinkProperties(OpenApiSchema fullSchemaForLinks, LinkTypes availableLinkTypes)
{
- foreach (string propertyName in LinkTypeToPropertyNamesMap.Where(pair => !availableLinkTypes.HasFlag(pair.Key)).SelectMany(pair => pair.Value))
+ foreach (var propertyName in LinkTypeToPropertyNamesMap.Where(pair => !availableLinkTypes.HasFlag(pair.Key)).SelectMany(pair => pair.Value))
{
fullSchemaForLinks.Required.Remove(propertyName);
fullSchemaForLinks.Properties.Remove(propertyName);
@@ -154,15 +154,15 @@ public LinksVisibility(IJsonApiOptions options, IResourceGraph resourceGraph)
var unionResourceLinks = LinkTypes.None;
var unionRelationshipLinks = LinkTypes.None;
- foreach (ResourceType resourceType in resourceGraph.GetResourceTypes())
+ foreach (var resourceType in resourceGraph.GetResourceTypes())
{
- LinkTypes topLevelLinks = GetTopLevelLinks(resourceType, options);
+ var topLevelLinks = GetTopLevelLinks(resourceType, options);
unionTopLevelLinks |= topLevelLinks;
- LinkTypes resourceLinks = GetResourceLinks(resourceType, options);
+ var resourceLinks = GetResourceLinks(resourceType, options);
unionResourceLinks |= resourceLinks;
- LinkTypes relationshipLinks = GetRelationshipLinks(resourceType, options);
+ var relationshipLinks = GetRelationshipLinks(resourceType, options);
unionRelationshipLinks |= relationshipLinks;
}
@@ -185,12 +185,12 @@ private LinkTypes GetResourceLinks(ResourceType resourceType, IJsonApiOptions op
private LinkTypes GetRelationshipLinks(ResourceType resourceType, IJsonApiOptions options)
{
- LinkTypes unionRelationshipLinks = resourceType.RelationshipLinks != LinkTypes.NotConfigured ? resourceType.RelationshipLinks :
+ var unionRelationshipLinks = resourceType.RelationshipLinks != LinkTypes.NotConfigured ? resourceType.RelationshipLinks :
options.RelationshipLinks == LinkTypes.NotConfigured ? LinkTypes.None : options.RelationshipLinks;
- foreach (RelationshipAttribute relationship in resourceType.Relationships)
+ foreach (var relationship in resourceType.Relationships)
{
- LinkTypes relationshipLinks = relationship.Links != LinkTypes.NotConfigured ? relationship.Links :
+ var relationshipLinks = relationship.Links != LinkTypes.NotConfigured ? relationship.Links :
relationship.LeftType.RelationshipLinks != LinkTypes.NotConfigured ? relationship.LeftType.RelationshipLinks :
options.RelationshipLinks == LinkTypes.NotConfigured ? LinkTypes.None : options.RelationshipLinks;
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/MetaSchemaGenerator.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/MetaSchemaGenerator.cs
index 1e1bd07852..29495fb905 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/MetaSchemaGenerator.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/MetaSchemaGenerator.cs
@@ -23,12 +23,12 @@ public OpenApiSchema GenerateSchema(SchemaRepository schemaRepository)
{
ArgumentNullException.ThrowIfNull(schemaRepository);
- if (schemaRepository.TryLookupByType(SchemaType, out OpenApiSchema? referenceSchema))
+ if (schemaRepository.TryLookupByType(SchemaType, out var referenceSchema))
{
return referenceSchema;
}
- using ISchemaGenerationTraceScope traceScope = _schemaGenerationTracer.TraceStart(this, SchemaType);
+ using var traceScope = _schemaGenerationTracer.TraceStart(this, SchemaType);
var fullSchema = new OpenApiSchema
{
@@ -39,7 +39,7 @@ public OpenApiSchema GenerateSchema(SchemaRepository schemaRepository)
}
};
- string schemaId = _schemaIdSelector.GetMetaSchemaId();
+ var schemaId = _schemaIdSelector.GetMetaSchemaId();
referenceSchema = schemaRepository.AddDefinition(schemaId, fullSchema);
schemaRepository.RegisterType(SchemaType, schemaId);
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/RelationshipIdentifierSchemaGenerator.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/RelationshipIdentifierSchemaGenerator.cs
index 98f176e8df..0fdad49c97 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/RelationshipIdentifierSchemaGenerator.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/RelationshipIdentifierSchemaGenerator.cs
@@ -39,7 +39,7 @@ public OpenApiSchema GenerateSchema(RelationshipAttribute relationship, SchemaRe
ArgumentNullException.ThrowIfNull(relationship);
ArgumentNullException.ThrowIfNull(schemaRepository);
- string schemaId = _schemaIdSelector.GetRelationshipIdentifierSchemaId(relationship);
+ var schemaId = _schemaIdSelector.GetRelationshipIdentifierSchemaId(relationship);
if (schemaRepository.Schemas.ContainsKey(schemaId))
{
@@ -53,13 +53,13 @@ public OpenApiSchema GenerateSchema(RelationshipAttribute relationship, SchemaRe
};
}
- using ISchemaGenerationTraceScope traceScope = _schemaGenerationTracer.TraceStart(this, relationship);
+ using var traceScope = _schemaGenerationTracer.TraceStart(this, relationship);
- Type relationshipIdentifierConstructedType = typeof(RelationshipIdentifier<>).MakeGenericType(relationship.LeftType.ClrType);
+ var relationshipIdentifierConstructedType = typeof(RelationshipIdentifier<>).MakeGenericType(relationship.LeftType.ClrType);
ConsistencyGuard.ThrowIf(schemaRepository.TryLookupByType(relationshipIdentifierConstructedType, out _));
- OpenApiSchema referenceSchemaForIdentifier = _defaultSchemaGenerator.GenerateSchema(relationshipIdentifierConstructedType, schemaRepository);
- OpenApiSchema fullSchemaForIdentifier = schemaRepository.Schemas[referenceSchemaForIdentifier.Reference.Id];
+ var referenceSchemaForIdentifier = _defaultSchemaGenerator.GenerateSchema(relationshipIdentifierConstructedType, schemaRepository);
+ var fullSchemaForIdentifier = schemaRepository.Schemas[referenceSchemaForIdentifier.Reference.Id];
fullSchemaForIdentifier.Properties.Remove(JsonApiPropertyName.Meta);
@@ -76,19 +76,19 @@ public OpenApiSchema GenerateSchema(RelationshipAttribute relationship, SchemaRe
private void SetResourceType(OpenApiSchema fullSchemaForIdentifier, ResourceType resourceType, SchemaRepository schemaRepository)
{
- OpenApiSchema referenceSchema = _resourceTypeSchemaGenerator.GenerateSchema(resourceType, schemaRepository);
+ var referenceSchema = _resourceTypeSchemaGenerator.GenerateSchema(resourceType, schemaRepository);
fullSchemaForIdentifier.Properties[JsonApiPropertyName.Type] = referenceSchema.WrapInExtendedSchema();
}
private void SetResourceId(OpenApiSchema fullSchemaForResourceData, ResourceType resourceType, SchemaRepository schemaRepository)
{
- OpenApiSchema idSchema = _resourceIdSchemaGenerator.GenerateSchema(resourceType, schemaRepository);
+ var idSchema = _resourceIdSchemaGenerator.GenerateSchema(resourceType, schemaRepository);
fullSchemaForResourceData.Properties[JsonApiPropertyName.Id] = idSchema;
}
private void SetRelationship(OpenApiSchema fullSchemaForIdentifier, RelationshipAttribute relationship, SchemaRepository schemaRepository)
{
- OpenApiSchema referenceSchema = _relationshipNameSchemaGenerator.GenerateSchema(relationship, schemaRepository);
+ var referenceSchema = _relationshipNameSchemaGenerator.GenerateSchema(relationship, schemaRepository);
fullSchemaForIdentifier.Properties[JsonApiPropertyName.Relationship] = referenceSchema.WrapInExtendedSchema();
}
}
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/RelationshipNameSchemaGenerator.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/RelationshipNameSchemaGenerator.cs
index 7f5c0c5d3a..809272033f 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/RelationshipNameSchemaGenerator.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/RelationshipNameSchemaGenerator.cs
@@ -24,7 +24,7 @@ public OpenApiSchema GenerateSchema(RelationshipAttribute relationship, SchemaRe
ArgumentNullException.ThrowIfNull(relationship);
ArgumentNullException.ThrowIfNull(schemaRepository);
- string schemaId = _schemaIdSelector.GetRelationshipNameSchemaId(relationship);
+ var schemaId = _schemaIdSelector.GetRelationshipNameSchemaId(relationship);
if (schemaRepository.Schemas.ContainsKey(schemaId))
{
@@ -38,7 +38,7 @@ public OpenApiSchema GenerateSchema(RelationshipAttribute relationship, SchemaRe
};
}
- using ISchemaGenerationTraceScope traceScope = _schemaGenerationTracer.TraceStart(this, relationship);
+ using var traceScope = _schemaGenerationTracer.TraceStart(this, relationship);
var fullSchema = new OpenApiSchema
{
@@ -46,7 +46,7 @@ public OpenApiSchema GenerateSchema(RelationshipAttribute relationship, SchemaRe
Enum = [new OpenApiString(relationship.PublicName)]
};
- OpenApiSchema referenceSchema = schemaRepository.AddDefinition(schemaId, fullSchema);
+ var referenceSchema = schemaRepository.AddDefinition(schemaId, fullSchema);
traceScope.TraceSucceeded(schemaId);
return referenceSchema;
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/ResourceIdSchemaGenerator.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/ResourceIdSchemaGenerator.cs
index 21bc5020ed..5fd87a60ef 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/ResourceIdSchemaGenerator.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/ResourceIdSchemaGenerator.cs
@@ -27,7 +27,7 @@ public OpenApiSchema GenerateSchema(Type resourceIdClrType, SchemaRepository sch
ArgumentNullException.ThrowIfNull(resourceIdClrType);
ArgumentNullException.ThrowIfNull(schemaRepository);
- OpenApiSchema idSchema = _defaultSchemaGenerator.GenerateSchema(resourceIdClrType, schemaRepository);
+ var idSchema = _defaultSchemaGenerator.GenerateSchema(resourceIdClrType, schemaRepository);
ConsistencyGuard.ThrowIf(idSchema.Reference != null);
idSchema.Type = "string";
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/ResourceTypeSchemaGenerator.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/ResourceTypeSchemaGenerator.cs
index eb933bedbe..d21560ab46 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/ResourceTypeSchemaGenerator.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Components/ResourceTypeSchemaGenerator.cs
@@ -25,12 +25,12 @@ public OpenApiSchema GenerateSchema(ResourceType resourceType, SchemaRepository
ArgumentNullException.ThrowIfNull(resourceType);
ArgumentNullException.ThrowIfNull(schemaRepository);
- if (schemaRepository.TryLookupByType(resourceType.ClrType, out OpenApiSchema? referenceSchema))
+ if (schemaRepository.TryLookupByType(resourceType.ClrType, out var referenceSchema))
{
return referenceSchema;
}
- using ISchemaGenerationTraceScope traceScope = _schemaGenerationTracer.TraceStart(this, resourceType.ClrType);
+ using var traceScope = _schemaGenerationTracer.TraceStart(this, resourceType.ClrType);
var fullSchema = new OpenApiSchema
{
@@ -42,12 +42,12 @@ public OpenApiSchema GenerateSchema(ResourceType resourceType, SchemaRepository
}
};
- foreach (ResourceType derivedType in resourceType.GetAllConcreteDerivedTypes())
+ foreach (var derivedType in resourceType.GetAllConcreteDerivedTypes())
{
fullSchema.Enum.Add(new OpenApiString(derivedType.PublicName));
}
- string schemaId = _schemaIdSelector.GetResourceTypeSchemaId(resourceType);
+ var schemaId = _schemaIdSelector.GetResourceTypeSchemaId(resourceType);
referenceSchema = schemaRepository.AddDefinition(schemaId, fullSchema);
schemaRepository.RegisterType(resourceType.ClrType, schemaId);
@@ -58,7 +58,7 @@ public OpenApiSchema GenerateSchema(ResourceType resourceType, SchemaRepository
public OpenApiSchema GenerateSchema(SchemaRepository schemaRepository)
{
- string schemaId = _schemaIdSelector.GetResourceTypeSchemaId(null);
+ var schemaId = _schemaIdSelector.GetResourceTypeSchemaId(null);
if (schemaRepository.Schemas.ContainsKey(schemaId))
{
@@ -72,7 +72,7 @@ public OpenApiSchema GenerateSchema(SchemaRepository schemaRepository)
};
}
- using ISchemaGenerationTraceScope traceScope = _schemaGenerationTracer.TraceStart(this);
+ using var traceScope = _schemaGenerationTracer.TraceStart(this);
var fullSchema = new OpenApiSchema
{
@@ -83,7 +83,7 @@ public OpenApiSchema GenerateSchema(SchemaRepository schemaRepository)
}
};
- OpenApiSchema referenceSchema = schemaRepository.AddDefinition(schemaId, fullSchema);
+ var referenceSchema = schemaRepository.AddDefinition(schemaId, fullSchema);
traceScope.TraceSucceeded(schemaId);
return referenceSchema;
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Documents/AtomicOperationsDocumentSchemaGenerator.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Documents/AtomicOperationsDocumentSchemaGenerator.cs
index f128f89299..800653bfa5 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Documents/AtomicOperationsDocumentSchemaGenerator.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Documents/AtomicOperationsDocumentSchemaGenerator.cs
@@ -73,7 +73,7 @@ protected override OpenApiSchema GenerateDocumentSchema(Type schemaType, SchemaR
ArgumentNullException.ThrowIfNull(schemaType);
ArgumentNullException.ThrowIfNull(schemaRepository);
- bool isRequestSchema = schemaType == typeof(OperationsRequestDocument);
+ var isRequestSchema = schemaType == typeof(OperationsRequestDocument);
if (isRequestSchema)
{
@@ -91,7 +91,7 @@ private void GenerateSchemasForRequestDocument(SchemaRepository schemaRepository
{
_ = GenerateSchemaForAbstractOperation(schemaRepository);
- foreach (ResourceType resourceType in _resourceGraph.GetResourceTypes().Where(resourceType => resourceType.BaseType == null))
+ foreach (var resourceType in _resourceGraph.GetResourceTypes().Where(resourceType => resourceType.BaseType == null))
{
GenerateSchemaForOperation(resourceType, schemaRepository);
}
@@ -99,14 +99,14 @@ private void GenerateSchemasForRequestDocument(SchemaRepository schemaRepository
private OpenApiSchema GenerateSchemaForAbstractOperation(SchemaRepository schemaRepository)
{
- if (schemaRepository.TryLookupByType(AtomicOperationAbstractType, out OpenApiSchema? referenceSchema))
+ if (schemaRepository.TryLookupByType(AtomicOperationAbstractType, out var referenceSchema))
{
return referenceSchema;
}
- using ISchemaGenerationTraceScope traceScope = _schemaGenerationTracer.TraceStart(this, AtomicOperationAbstractType);
+ using var traceScope = _schemaGenerationTracer.TraceStart(this, AtomicOperationAbstractType);
- OpenApiSchema referenceSchemaForMeta = _metaSchemaGenerator.GenerateSchema(schemaRepository);
+ var referenceSchemaForMeta = _metaSchemaGenerator.GenerateSchema(schemaRepository);
var fullSchema = new OpenApiSchema
{
@@ -132,7 +132,7 @@ private OpenApiSchema GenerateSchemaForAbstractOperation(SchemaRepository schema
}
};
- string schemaId = _schemaIdSelector.GetSchemaId(AtomicOperationAbstractType);
+ var schemaId = _schemaIdSelector.GetSchemaId(AtomicOperationAbstractType);
referenceSchema = schemaRepository.AddDefinition(schemaId, fullSchema);
schemaRepository.RegisterType(AtomicOperationAbstractType, schemaId);
@@ -147,7 +147,7 @@ private void GenerateSchemaForOperation(ResourceType resourceType, SchemaReposit
GenerateSchemaForResourceOperation(typeof(UpdateOperation<>), resourceType, AtomicOperationCode.Update, schemaRepository);
GenerateSchemaForResourceOperation(typeof(DeleteOperation<>), resourceType, AtomicOperationCode.Remove, schemaRepository);
- foreach (RelationshipAttribute relationship in GetRelationshipsInTypeHierarchy(resourceType))
+ foreach (var relationship in GetRelationshipsInTypeHierarchy(resourceType))
{
if (relationship is HasOneAttribute)
{
@@ -165,22 +165,22 @@ private void GenerateSchemaForOperation(ResourceType resourceType, SchemaReposit
private void GenerateSchemaForResourceOperation(Type operationOpenType, ResourceType resourceType, AtomicOperationCode operationCode,
SchemaRepository schemaRepository)
{
- WriteOperationKind writeOperation = GetKindOfResourceOperation(operationCode);
+ var writeOperation = GetKindOfResourceOperation(operationCode);
if (IsResourceTypeEnabled(resourceType, writeOperation))
{
- Type operationConstructedType = ChangeResourceTypeInSchemaType(operationOpenType, resourceType);
+ var operationConstructedType = ChangeResourceTypeInSchemaType(operationOpenType, resourceType);
- using ISchemaGenerationTraceScope traceScope = _schemaGenerationTracer.TraceStart(this, operationConstructedType);
+ using var traceScope = _schemaGenerationTracer.TraceStart(this, operationConstructedType);
- bool needsEmptyDerivedSchema = resourceType.BaseType != null && _atomicOperationFilter.IsEnabled(resourceType.BaseType, writeOperation);
+ var needsEmptyDerivedSchema = resourceType.BaseType != null && _atomicOperationFilter.IsEnabled(resourceType.BaseType, writeOperation);
if (!needsEmptyDerivedSchema)
{
- Type identifierSchemaType = typeof(IdentifierInRequest<>).MakeGenericType(resourceType.ClrType);
+ var identifierSchemaType = typeof(IdentifierInRequest<>).MakeGenericType(resourceType.ClrType);
_ = _dataSchemaGenerator.GenerateSchema(identifierSchemaType, true, schemaRepository);
- bool hasDataProperty = operationOpenType != typeof(DeleteOperation<>);
+ var hasDataProperty = operationOpenType != typeof(DeleteOperation<>);
if (hasDataProperty)
{
@@ -188,15 +188,15 @@ private void GenerateSchemaForResourceOperation(Type operationOpenType, Resource
}
}
- OpenApiSchema referenceSchemaForOperation = _defaultSchemaGenerator.GenerateSchema(operationConstructedType, schemaRepository);
- OpenApiSchema fullSchemaForOperation = schemaRepository.Schemas[referenceSchemaForOperation.Reference.Id];
+ var referenceSchemaForOperation = _defaultSchemaGenerator.GenerateSchema(operationConstructedType, schemaRepository);
+ var fullSchemaForOperation = schemaRepository.Schemas[referenceSchemaForOperation.Reference.Id];
fullSchemaForOperation.AdditionalPropertiesAllowed = false;
- OpenApiSchema inlineSchemaForOperation = fullSchemaForOperation.UnwrapLastExtendedSchema();
+ var inlineSchemaForOperation = fullSchemaForOperation.UnwrapLastExtendedSchema();
if (needsEmptyDerivedSchema)
{
- Type baseOperationSchemaType = ChangeResourceTypeInSchemaType(operationOpenType, resourceType.BaseType!);
- OpenApiSchema referenceSchemaForBaseOperation = schemaRepository.LookupByType(baseOperationSchemaType);
+ var baseOperationSchemaType = ChangeResourceTypeInSchemaType(operationOpenType, resourceType.BaseType!);
+ var referenceSchemaForBaseOperation = schemaRepository.LookupByType(baseOperationSchemaType);
RemoveProperties(inlineSchemaForOperation);
fullSchemaForOperation.AllOf[0] = referenceSchemaForBaseOperation;
@@ -206,13 +206,13 @@ private void GenerateSchemaForResourceOperation(Type operationOpenType, Resource
SetOperationCode(inlineSchemaForOperation, operationCode, schemaRepository);
}
- string discriminatorValue = _schemaIdSelector.GetAtomicOperationDiscriminatorValue(operationCode, resourceType);
+ var discriminatorValue = _schemaIdSelector.GetAtomicOperationDiscriminatorValue(operationCode, resourceType);
MapInDiscriminator(referenceSchemaForOperation, discriminatorValue, schemaRepository);
traceScope.TraceSucceeded(referenceSchemaForOperation.Reference.Id);
}
- foreach (ResourceType derivedType in resourceType.DirectlyDerivedTypes)
+ foreach (var derivedType in resourceType.DirectlyDerivedTypes)
{
GenerateSchemaForResourceOperation(operationOpenType, derivedType, operationCode, schemaRepository);
}
@@ -251,7 +251,7 @@ private static Type ChangeResourceTypeInSchemaType(Type schemaOpenType, Resource
private static void RemoveProperties(OpenApiSchema fullSchema)
{
- foreach (string propertyName in fullSchema.Properties.Keys)
+ foreach (var propertyName in fullSchema.Properties.Keys)
{
fullSchema.Properties.Remove(propertyName);
fullSchema.Required.Remove(propertyName);
@@ -260,20 +260,20 @@ private static void RemoveProperties(OpenApiSchema fullSchema)
private void SetOperationCode(OpenApiSchema fullSchema, AtomicOperationCode operationCode, SchemaRepository schemaRepository)
{
- OpenApiSchema referenceSchema = _atomicOperationCodeSchemaGenerator.GenerateSchema(operationCode, schemaRepository);
+ var referenceSchema = _atomicOperationCodeSchemaGenerator.GenerateSchema(operationCode, schemaRepository);
fullSchema.Properties[JsonApiPropertyName.Op] = referenceSchema.WrapInExtendedSchema();
}
private static void MapInDiscriminator(OpenApiSchema referenceSchemaForOperation, string discriminatorValue, SchemaRepository schemaRepository)
{
- OpenApiSchema referenceSchemaForAbstractOperation = schemaRepository.LookupByType(AtomicOperationAbstractType);
- OpenApiSchema fullSchemaForAbstractOperation = schemaRepository.Schemas[referenceSchemaForAbstractOperation.Reference.Id];
+ var referenceSchemaForAbstractOperation = schemaRepository.LookupByType(AtomicOperationAbstractType);
+ var fullSchemaForAbstractOperation = schemaRepository.Schemas[referenceSchemaForAbstractOperation.Reference.Id];
fullSchemaForAbstractOperation.Discriminator.Mapping.Add(discriminatorValue, referenceSchemaForOperation.Reference.ReferenceV3);
}
private static HashSet GetRelationshipsInTypeHierarchy(ResourceType baseType)
{
- HashSet relationships = baseType.Relationships.ToHashSet();
+ var relationships = baseType.Relationships.ToHashSet();
if (baseType.IsPartOfTypeHierarchy())
{
@@ -285,7 +285,7 @@ private static HashSet GetRelationshipsInTypeHierarchy(Re
private static void IncludeRelationshipsInDirectlyDerivedTypes(ResourceType baseType, HashSet relationships)
{
- foreach (ResourceType derivedType in baseType.DirectlyDerivedTypes)
+ foreach (var derivedType in baseType.DirectlyDerivedTypes)
{
IncludeRelationshipsInDerivedType(derivedType, relationships);
}
@@ -293,7 +293,7 @@ private static void IncludeRelationshipsInDirectlyDerivedTypes(ResourceType base
private static void IncludeRelationshipsInDerivedType(ResourceType derivedType, HashSet relationships)
{
- foreach (RelationshipAttribute relationshipInDerivedType in derivedType.Relationships)
+ foreach (var relationshipInDerivedType in derivedType.Relationships)
{
relationships.Add(relationshipInDerivedType);
}
@@ -304,22 +304,22 @@ private static void IncludeRelationshipsInDerivedType(ResourceType derivedType,
private void GenerateSchemaForRelationshipOperation(Type operationOpenType, RelationshipAttribute relationship, AtomicOperationCode operationCode,
SchemaRepository schemaRepository)
{
- WriteOperationKind writeOperation = GetKindOfRelationshipOperation(operationCode);
+ var writeOperation = GetKindOfRelationshipOperation(operationCode);
if (!IsRelationshipEnabled(relationship, writeOperation))
{
return;
}
- using ISchemaGenerationTraceScope traceScope = _schemaGenerationTracer.TraceStart(this, operationOpenType, relationship);
+ using var traceScope = _schemaGenerationTracer.TraceStart(this, operationOpenType, relationship);
- RelationshipAttribute? relationshipInAnyBaseResourceType = GetRelationshipEnabledInAnyBase(relationship, writeOperation);
+ var relationshipInAnyBaseResourceType = GetRelationshipEnabledInAnyBase(relationship, writeOperation);
OpenApiSchema? referenceSchemaForRelationshipIdentifier;
if (relationshipInAnyBaseResourceType == null)
{
- Type rightSchemaType = typeof(IdentifierInRequest<>).MakeGenericType(relationship.RightType.ClrType);
+ var rightSchemaType = typeof(IdentifierInRequest<>).MakeGenericType(relationship.RightType.ClrType);
_ = _dataSchemaGenerator.GenerateSchema(rightSchemaType, true, schemaRepository);
referenceSchemaForRelationshipIdentifier = _relationshipIdentifierSchemaGenerator.GenerateSchema(relationship, schemaRepository);
@@ -329,19 +329,19 @@ private void GenerateSchemaForRelationshipOperation(Type operationOpenType, Rela
referenceSchemaForRelationshipIdentifier = null;
}
- Type operationConstructedType = ChangeResourceTypeInSchemaType(operationOpenType, relationship.RightType);
+ var operationConstructedType = ChangeResourceTypeInSchemaType(operationOpenType, relationship.RightType);
_ = _dataContainerSchemaGenerator.GenerateSchema(operationConstructedType, relationship.RightType, true, false, schemaRepository);
// This complicated implementation that generates a temporary schema stems from the fact that GetSchemaId takes a Type.
// We could feed it a constructed type with TLeftResource and TRightResource, but there's no way to include
// the relationship name because there's no runtime Type available for it.
- string schemaId = _schemaIdSelector.GetRelationshipAtomicOperationSchemaId(relationship, operationCode);
+ var schemaId = _schemaIdSelector.GetRelationshipAtomicOperationSchemaId(relationship, operationCode);
- OpenApiSchema referenceSchemaForOperation = _defaultSchemaGenerator.GenerateSchema(operationConstructedType, schemaRepository);
- OpenApiSchema fullSchemaForOperation = schemaRepository.Schemas[referenceSchemaForOperation.Reference.Id];
+ var referenceSchemaForOperation = _defaultSchemaGenerator.GenerateSchema(operationConstructedType, schemaRepository);
+ var fullSchemaForOperation = schemaRepository.Schemas[referenceSchemaForOperation.Reference.Id];
fullSchemaForOperation.AdditionalPropertiesAllowed = false;
- OpenApiSchema inlineSchemaForOperation = fullSchemaForOperation.UnwrapLastExtendedSchema();
+ var inlineSchemaForOperation = fullSchemaForOperation.UnwrapLastExtendedSchema();
SetOperationCode(inlineSchemaForOperation, operationCode, schemaRepository);
if (referenceSchemaForRelationshipIdentifier != null)
@@ -358,7 +358,7 @@ private void GenerateSchemaForRelationshipOperation(Type operationOpenType, Rela
{
RemoveProperties(inlineSchemaForOperation);
- string baseRelationshipSchemaId = _schemaIdSelector.GetRelationshipAtomicOperationSchemaId(relationshipInAnyBaseResourceType, operationCode);
+ var baseRelationshipSchemaId = _schemaIdSelector.GetRelationshipAtomicOperationSchemaId(relationshipInAnyBaseResourceType, operationCode);
ConsistencyGuard.ThrowIf(!schemaRepository.Schemas.ContainsKey(baseRelationshipSchemaId));
fullSchemaForOperation.AllOf[0] = new OpenApiSchema
@@ -371,7 +371,7 @@ private void GenerateSchemaForRelationshipOperation(Type operationOpenType, Rela
};
}
- string discriminatorValue = _schemaIdSelector.GetAtomicOperationDiscriminatorValue(operationCode, relationship);
+ var discriminatorValue = _schemaIdSelector.GetAtomicOperationDiscriminatorValue(operationCode, relationship);
MapInDiscriminator(referenceSchemaForOperation, discriminatorValue, schemaRepository);
traceScope.TraceSucceeded(schemaId);
@@ -454,7 +454,7 @@ private static bool IsToManyRelationshipEnabled(HasManyAttribute relationship, W
private RelationshipAttribute? GetRelationshipEnabledInAnyBase(RelationshipAttribute relationship, WriteOperationKind writeOperation)
{
- RelationshipAttribute? relationshipInBaseResourceType = relationship.LeftType.BaseType?.FindRelationshipByPublicName(relationship.PublicName);
+ var relationshipInBaseResourceType = relationship.LeftType.BaseType?.FindRelationshipByPublicName(relationship.PublicName);
while (relationshipInBaseResourceType != null)
{
@@ -473,7 +473,7 @@ private void GenerateSchemasForResponseDocument(SchemaRepository schemaRepositor
{
_ = _dataContainerSchemaGenerator.GenerateSchemaForCommonResourceDataInResponse(schemaRepository);
- foreach (ResourceType resourceType in _resourceGraph.GetResourceTypes())
+ foreach (var resourceType in _resourceGraph.GetResourceTypes())
{
if (IsResourceTypeEnabled(resourceType, WriteOperationKind.CreateResource) ||
IsResourceTypeEnabled(resourceType, WriteOperationKind.UpdateResource))
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Documents/DocumentSchemaGenerator.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Documents/DocumentSchemaGenerator.cs
index 740b2fca43..b426ef5bdf 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Documents/DocumentSchemaGenerator.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Documents/DocumentSchemaGenerator.cs
@@ -36,17 +36,17 @@ public OpenApiSchema GenerateSchema(Type schemaType, SchemaRepository schemaRepo
ArgumentNullException.ThrowIfNull(schemaType);
ArgumentNullException.ThrowIfNull(schemaRepository);
- if (schemaRepository.TryLookupByType(schemaType, out OpenApiSchema? referenceSchema))
+ if (schemaRepository.TryLookupByType(schemaType, out var referenceSchema))
{
return referenceSchema;
}
- using ISchemaGenerationTraceScope traceScope = _schemaGenerationTracer.TraceStart(this, schemaType);
+ using var traceScope = _schemaGenerationTracer.TraceStart(this, schemaType);
_metaSchemaGenerator.GenerateSchema(schemaRepository);
referenceSchema = GenerateDocumentSchema(schemaType, schemaRepository);
- OpenApiSchema fullSchema = schemaRepository.Schemas[referenceSchema.Reference.Id];
+ var fullSchema = schemaRepository.Schemas[referenceSchema.Reference.Id];
_linksVisibilitySchemaGenerator.UpdateSchemaForTopLevel(schemaType, fullSchema, schemaRepository);
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Documents/ErrorResponseDocumentSchemaGenerator.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Documents/ErrorResponseDocumentSchemaGenerator.cs
index 3d305e889b..32e4113d59 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Documents/ErrorResponseDocumentSchemaGenerator.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Documents/ErrorResponseDocumentSchemaGenerator.cs
@@ -39,10 +39,10 @@ protected override OpenApiSchema GenerateDocumentSchema(Type schemaType, SchemaR
ArgumentNullException.ThrowIfNull(schemaType);
ArgumentNullException.ThrowIfNull(schemaRepository);
- OpenApiSchema referenceSchemaForErrorObject = GenerateSchemaForErrorObject(schemaRepository);
- OpenApiSchema fullSchemaForErrorObject = schemaRepository.Schemas[referenceSchemaForErrorObject.Reference.Id];
+ var referenceSchemaForErrorObject = GenerateSchemaForErrorObject(schemaRepository);
+ var fullSchemaForErrorObject = schemaRepository.Schemas[referenceSchemaForErrorObject.Reference.Id];
- OpenApiSchema referenceSchemaForMeta = _metaSchemaGenerator.GenerateSchema(schemaRepository);
+ var referenceSchemaForMeta = _metaSchemaGenerator.GenerateSchema(schemaRepository);
fullSchemaForErrorObject.Properties[JsonApiPropertyName.Meta] = referenceSchemaForMeta.WrapInExtendedSchema();
return _defaultSchemaGenerator.GenerateSchema(schemaType, schemaRepository);
@@ -50,9 +50,9 @@ protected override OpenApiSchema GenerateDocumentSchema(Type schemaType, SchemaR
private OpenApiSchema GenerateSchemaForErrorObject(SchemaRepository schemaRepository)
{
- using ISchemaGenerationTraceScope traceScope = _schemaGenerationTracer.TraceStart(this, ErrorObjectType);
+ using var traceScope = _schemaGenerationTracer.TraceStart(this, ErrorObjectType);
- OpenApiSchema referenceSchema = _defaultSchemaGenerator.GenerateSchema(ErrorObjectType, schemaRepository);
+ var referenceSchema = _defaultSchemaGenerator.GenerateSchema(ErrorObjectType, schemaRepository);
traceScope.TraceSucceeded(referenceSchema.Reference.Id);
return referenceSchema;
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Documents/ResourceOrRelationshipDocumentSchemaGenerator.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Documents/ResourceOrRelationshipDocumentSchemaGenerator.cs
index 767f0d0143..08a4055b37 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Documents/ResourceOrRelationshipDocumentSchemaGenerator.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/Documents/ResourceOrRelationshipDocumentSchemaGenerator.cs
@@ -53,7 +53,7 @@ public ResourceOrRelationshipDocumentSchemaGenerator(SchemaGenerationTracer sche
public override bool CanGenerate(Type schemaType)
{
- Type schemaOpenType = schemaType.ConstructedToOpenType();
+ var schemaOpenType = schemaType.ConstructedToOpenType();
return RequestDocumentSchemaTypes.Contains(schemaOpenType) || ResponseDocumentSchemaTypes.Contains(schemaOpenType);
}
@@ -63,12 +63,12 @@ protected override OpenApiSchema GenerateDocumentSchema(Type schemaType, SchemaR
ArgumentNullException.ThrowIfNull(schemaRepository);
var resourceSchemaType = ResourceSchemaType.Create(schemaType, _resourceGraph);
- bool isRequestSchema = RequestDocumentSchemaTypes.Contains(resourceSchemaType.SchemaOpenType);
+ var isRequestSchema = RequestDocumentSchemaTypes.Contains(resourceSchemaType.SchemaOpenType);
_ = _dataContainerSchemaGenerator.GenerateSchema(schemaType, resourceSchemaType.ResourceType, isRequestSchema, !isRequestSchema, schemaRepository);
- OpenApiSchema? referenceSchemaForDocument = _defaultSchemaGenerator.GenerateSchema(schemaType, schemaRepository);
- OpenApiSchema inlineSchemaForDocument = schemaRepository.Schemas[referenceSchemaForDocument.Reference.Id].UnwrapLastExtendedSchema();
+ var referenceSchemaForDocument = _defaultSchemaGenerator.GenerateSchema(schemaType, schemaRepository);
+ var inlineSchemaForDocument = schemaRepository.Schemas[referenceSchemaForDocument.Reference.Id].UnwrapLastExtendedSchema();
if (JsonApiSchemaFacts.HasNullableDataProperty(resourceSchemaType.SchemaOpenType))
{
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/GenerationCacheSchemaGenerator.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/GenerationCacheSchemaGenerator.cs
index beba632ebf..ac99096138 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/GenerationCacheSchemaGenerator.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/GenerationCacheSchemaGenerator.cs
@@ -36,7 +36,7 @@ public bool HasAtomicOperationsEndpoint(SchemaRepository schemaRepository)
{
ArgumentNullException.ThrowIfNull(schemaRepository);
- OpenApiSchema fullSchema = GenerateFullSchema(schemaRepository);
+ var fullSchema = GenerateFullSchema(schemaRepository);
var hasAtomicOperationsEndpoint = (OpenApiBoolean)fullSchema.Properties[HasAtomicOperationsEndpointPropertyName].Default;
return hasAtomicOperationsEndpoint.Value;
@@ -44,14 +44,14 @@ public bool HasAtomicOperationsEndpoint(SchemaRepository schemaRepository)
private OpenApiSchema GenerateFullSchema(SchemaRepository schemaRepository)
{
- if (schemaRepository.Schemas.TryGetValue(SchemaId, out OpenApiSchema? fullSchema))
+ if (schemaRepository.Schemas.TryGetValue(SchemaId, out var fullSchema))
{
return fullSchema;
}
- using ISchemaGenerationTraceScope traceScope = _schemaGenerationTracer.TraceStart(this);
+ using var traceScope = _schemaGenerationTracer.TraceStart(this);
- bool hasAtomicOperationsEndpoint = EvaluateHasAtomicOperationsEndpoint();
+ var hasAtomicOperationsEndpoint = EvaluateHasAtomicOperationsEndpoint();
fullSchema = new OpenApiSchema
{
@@ -74,13 +74,13 @@ private OpenApiSchema GenerateFullSchema(SchemaRepository schemaRepository)
private bool EvaluateHasAtomicOperationsEndpoint()
{
- IEnumerable actionDescriptors =
+ var actionDescriptors =
_defaultProvider.ActionDescriptors.Items.Where(JsonApiActionDescriptorCollectionProvider.IsVisibleJsonApiEndpoint);
- foreach (ActionDescriptor actionDescriptor in actionDescriptors)
+ foreach (var actionDescriptor in actionDescriptors)
{
- MethodInfo actionMethod = actionDescriptor.GetActionMethod();
- JsonApiEndpointMetadataContainer endpointMetadataContainer = _jsonApiEndpointMetadataProvider.Get(actionMethod);
+ var actionMethod = actionDescriptor.GetActionMethod();
+ var endpointMetadataContainer = _jsonApiEndpointMetadataProvider.Get(actionMethod);
if (endpointMetadataContainer.RequestMetadata is AtomicOperationsRequestMetadata)
{
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/JsonApiSchemaGenerator.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/JsonApiSchemaGenerator.cs
index 19d94eb48e..356b90f027 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/JsonApiSchemaGenerator.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaGenerators/JsonApiSchemaGenerator.cs
@@ -33,8 +33,8 @@ public OpenApiSchema GenerateSchema(Type schemaType, SchemaRepository schemaRepo
return _resourceIdSchemaGenerator.GenerateSchema(schemaType, schemaRepository);
}
- DocumentSchemaGenerator schemaGenerator = GetDocumentSchemaGenerator(schemaType);
- OpenApiSchema referenceSchema = schemaGenerator.GenerateSchema(schemaType, schemaRepository);
+ var schemaGenerator = GetDocumentSchemaGenerator(schemaType);
+ var referenceSchema = schemaGenerator.GenerateSchema(schemaType, schemaRepository);
if (memberInfo != null || parameterInfo != null)
{
@@ -55,7 +55,7 @@ private DocumentSchemaGenerator GetDocumentSchemaGenerator(Type schemaType)
{
DocumentSchemaGenerator? generator = null;
- foreach (DocumentSchemaGenerator documentSchemaGenerator in _documentSchemaGenerators)
+ foreach (var documentSchemaGenerator in _documentSchemaGenerators)
{
if (documentSchemaGenerator.CanGenerate(schemaType))
{
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaRepositoryExtensions.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaRepositoryExtensions.cs
index 669c50b4e0..f31daed192 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaRepositoryExtensions.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SchemaRepositoryExtensions.cs
@@ -11,7 +11,7 @@ internal static class SchemaRepositoryExtensions
private static FieldInfo GetReservedIdsField()
{
- FieldInfo? field = typeof(SchemaRepository).GetField(ReservedIdsFieldName, BindingFlags.Instance | BindingFlags.NonPublic);
+ var field = typeof(SchemaRepository).GetField(ReservedIdsFieldName, BindingFlags.Instance | BindingFlags.NonPublic);
if (field == null)
{
@@ -33,7 +33,7 @@ public static OpenApiSchema LookupByType(this SchemaRepository schemaRepository,
ArgumentNullException.ThrowIfNull(schemaRepository);
ArgumentNullException.ThrowIfNull(schemaType);
- if (!schemaRepository.TryLookupByType(schemaType, out OpenApiSchema? referenceSchema))
+ if (!schemaRepository.TryLookupByType(schemaType, out var referenceSchema))
{
throw new InvalidOperationException($"Reference schema for '{schemaType.Name}' does not exist.");
}
@@ -47,11 +47,11 @@ public static void ReplaceSchemaId(this SchemaRepository schemaRepository, Type
ArgumentNullException.ThrowIfNull(oldSchemaType);
ArgumentException.ThrowIfNullOrEmpty(newSchemaId);
- if (schemaRepository.TryLookupByType(oldSchemaType, out OpenApiSchema? referenceSchema))
+ if (schemaRepository.TryLookupByType(oldSchemaType, out var referenceSchema))
{
- string oldSchemaId = referenceSchema.Reference.Id;
+ var oldSchemaId = referenceSchema.Reference.Id;
- OpenApiSchema fullSchema = schemaRepository.Schemas[oldSchemaId];
+ var fullSchema = schemaRepository.Schemas[oldSchemaId];
schemaRepository.Schemas.Remove(oldSchemaId);
schemaRepository.Schemas.Add(newSchemaId, fullSchema);
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SetSchemaTypeToObjectDocumentFilter.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SetSchemaTypeToObjectDocumentFilter.cs
index 2764f868e6..666f24e41a 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SetSchemaTypeToObjectDocumentFilter.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SetSchemaTypeToObjectDocumentFilter.cs
@@ -11,7 +11,7 @@ internal sealed class SetSchemaTypeToObjectDocumentFilter : IDocumentFilter
public void Apply(OpenApiDocument document, DocumentFilterContext context)
{
- foreach (OpenApiSchema schema in document.Components.Schemas.Values)
+ foreach (var schema in document.Components.Schemas.Values)
{
if (schema.Extensions.ContainsKey(RequiresRootObjectTypeKey))
{
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SwaggerComponents/DocumentationOpenApiOperationFilter.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SwaggerComponents/DocumentationOpenApiOperationFilter.cs
index 1b5c0d5f4c..4b789fc4c8 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SwaggerComponents/DocumentationOpenApiOperationFilter.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SwaggerComponents/DocumentationOpenApiOperationFilter.cs
@@ -74,16 +74,16 @@ public void Apply(OpenApiOperation operation, OperationFilterContext context)
ArgumentNullException.ThrowIfNull(operation);
ArgumentNullException.ThrowIfNull(context);
- bool hasHeadVerb = context.ApiDescription.HttpMethod == "HEAD";
+ var hasHeadVerb = context.ApiDescription.HttpMethod == "HEAD";
if (hasHeadVerb)
{
operation.Responses.Clear();
}
- MethodInfo actionMethod = context.ApiDescription.ActionDescriptor.GetActionMethod();
- string actionName = context.MethodInfo.Name;
- ResourceType? resourceType = _controllerResourceMapping.GetResourceTypeForController(actionMethod.ReflectedType);
+ var actionMethod = context.ApiDescription.ActionDescriptor.GetActionMethod();
+ var actionName = context.MethodInfo.Name;
+ var resourceType = _controllerResourceMapping.GetResourceTypeForController(actionMethod.ReflectedType);
if (resourceType != null)
{
@@ -119,7 +119,7 @@ public void Apply(OpenApiOperation operation, OperationFilterContext context)
}
case GetSecondaryName or GetRelationshipName or PostRelationshipName or PatchRelationshipName or DeleteRelationshipName:
{
- RelationshipAttribute relationship = GetRelationshipFromRoute(context.ApiDescription, resourceType);
+ var relationship = GetRelationshipFromRoute(context.ApiDescription, resourceType);
switch (actionName)
{
@@ -192,7 +192,7 @@ private static void ApplyGetPrimary(OpenApiOperation operation, ResourceType res
}
else if (operation.Parameters.Count == 1)
{
- string singularName = resourceType.PublicName.Singularize();
+ var singularName = resourceType.PublicName.Singularize();
if (hasHeadVerb)
{
@@ -223,7 +223,7 @@ private static void ApplyGetPrimary(OpenApiOperation operation, ResourceType res
private void ApplyPostResource(OpenApiOperation operation, ResourceType resourceType)
{
- string singularName = resourceType.PublicName.Singularize();
+ var singularName = resourceType.PublicName.Singularize();
SetOperationSummary(operation, $"Creates a new {singularName}.");
AddQueryStringParameters(operation, false);
@@ -239,7 +239,7 @@ private void ApplyPostResource(OpenApiOperation operation, ResourceType resource
SetResponseDescription(operation.Responses, HttpStatusCode.BadRequest, TextQueryStringOrRequestBodyBad);
- ClientIdGenerationMode clientIdGeneration = resourceType.ClientIdGeneration ?? _options.ClientIdGeneration;
+ var clientIdGeneration = resourceType.ClientIdGeneration ?? _options.ClientIdGeneration;
if (clientIdGeneration == ClientIdGenerationMode.Forbidden)
{
@@ -253,7 +253,7 @@ private void ApplyPostResource(OpenApiOperation operation, ResourceType resource
private void ApplyPatchResource(OpenApiOperation operation, ResourceType resourceType)
{
- string singularName = resourceType.PublicName.Singularize();
+ var singularName = resourceType.PublicName.Singularize();
SetOperationSummary(operation, $"Updates an existing {singularName}.");
SetParameterDescription(operation.Parameters[0], $"The identifier of the {singularName} to update.");
@@ -276,7 +276,7 @@ private void ApplyPatchResource(OpenApiOperation operation, ResourceType resourc
private void ApplyDeleteResource(OpenApiOperation operation, ResourceType resourceType)
{
- string singularName = resourceType.PublicName.Singularize();
+ var singularName = resourceType.PublicName.Singularize();
SetOperationSummary(operation, $"Deletes an existing {singularName} by its identifier.");
SetParameterDescription(operation.Parameters[0], $"The identifier of the {singularName} to delete.");
@@ -286,8 +286,8 @@ private void ApplyDeleteResource(OpenApiOperation operation, ResourceType resour
private static void ApplyGetSecondary(OpenApiOperation operation, RelationshipAttribute relationship, bool hasHeadVerb)
{
- string singularLeftName = relationship.LeftType.PublicName.Singularize();
- string rightName = relationship is HasOneAttribute ? relationship.RightType.PublicName.Singularize() : relationship.RightType.PublicName;
+ var singularLeftName = relationship.LeftType.PublicName.Singularize();
+ var rightName = relationship is HasOneAttribute ? relationship.RightType.PublicName.Singularize() : relationship.RightType.PublicName;
if (hasHeadVerb)
{
@@ -326,9 +326,9 @@ relationship is HasOneAttribute
private static void ApplyGetRelationship(OpenApiOperation operation, RelationshipAttribute relationship, bool hasHeadVerb)
{
- string singularLeftName = relationship.LeftType.PublicName.Singularize();
- string singularRightName = relationship.RightType.PublicName.Singularize();
- string ident = relationship is HasOneAttribute ? "identity" : "identities";
+ var singularLeftName = relationship.LeftType.PublicName.Singularize();
+ var singularRightName = relationship.RightType.PublicName.Singularize();
+ var ident = relationship is HasOneAttribute ? "identity" : "identities";
if (hasHeadVerb)
{
@@ -368,8 +368,8 @@ relationship is HasOneAttribute
private void ApplyPostRelationship(OpenApiOperation operation, RelationshipAttribute relationship)
{
- string singularLeftName = relationship.LeftType.PublicName.Singularize();
- string rightName = relationship.RightType.PublicName;
+ var singularLeftName = relationship.LeftType.PublicName.Singularize();
+ var rightName = relationship.RightType.PublicName;
SetOperationSummary(operation, $"Adds existing {rightName} to the {relationship} relationship of an individual {singularLeftName}.");
SetParameterDescription(operation.Parameters[0], $"The identifier of the {singularLeftName} to add {rightName} to.");
@@ -386,9 +386,9 @@ private void ApplyPostRelationship(OpenApiOperation operation, RelationshipAttri
private void ApplyPatchRelationship(OpenApiOperation operation, RelationshipAttribute relationship)
{
- bool isOptional = _resourceFieldValidationMetadataProvider.IsNullable(relationship);
- string singularLeftName = relationship.LeftType.PublicName.Singularize();
- string rightName = relationship is HasOneAttribute ? relationship.RightType.PublicName.Singularize() : relationship.RightType.PublicName;
+ var isOptional = _resourceFieldValidationMetadataProvider.IsNullable(relationship);
+ var singularLeftName = relationship.LeftType.PublicName.Singularize();
+ var rightName = relationship is HasOneAttribute ? relationship.RightType.PublicName.Singularize() : relationship.RightType.PublicName;
SetOperationSummary(operation,
relationship is HasOneAttribute
@@ -420,8 +420,8 @@ relationship is HasOneAttribute
private void ApplyDeleteRelationship(OpenApiOperation operation, RelationshipAttribute relationship)
{
- string singularLeftName = relationship.LeftType.PublicName.Singularize();
- string rightName = relationship.RightType.PublicName;
+ var singularLeftName = relationship.LeftType.PublicName.Singularize();
+ var rightName = relationship.RightType.PublicName;
SetOperationSummary(operation, $"Removes existing {rightName} from the {relationship} relationship of an individual {singularLeftName}.");
SetParameterDescription(operation.Parameters[0], $"The identifier of the {singularLeftName} to remove {rightName} from.");
@@ -440,7 +440,7 @@ private static RelationshipAttribute GetRelationshipFromRoute(ApiDescription api
{
ConsistencyGuard.ThrowIf(apiDescription.RelativePath == null);
- string relationshipName = apiDescription.RelativePath.Split('/').Last();
+ var relationshipName = apiDescription.RelativePath.Split('/').Last();
return resourceType.GetRelationshipByPublicName(relationshipName);
}
@@ -466,13 +466,13 @@ private static void SetRequestBodyDescription(OpenApiRequestBody requestBody, st
private static void SetResponseDescription(OpenApiResponses responses, HttpStatusCode statusCode, string description)
{
- OpenApiResponse response = GetOrAddResponse(responses, statusCode);
+ var response = GetOrAddResponse(responses, statusCode);
response.Description = XmlCommentsTextHelper.Humanize(description);
}
private static void SetResponseHeaderETag(OpenApiResponses responses, HttpStatusCode statusCode)
{
- OpenApiResponse response = GetOrAddResponse(responses, statusCode);
+ var response = GetOrAddResponse(responses, statusCode);
response.Headers[HeaderNames.ETag] = new OpenApiHeader
{
@@ -487,7 +487,7 @@ private static void SetResponseHeaderETag(OpenApiResponses responses, HttpStatus
private static void SetResponseHeaderContentLength(OpenApiResponses responses, HttpStatusCode statusCode)
{
- OpenApiResponse response = GetOrAddResponse(responses, statusCode);
+ var response = GetOrAddResponse(responses, statusCode);
response.Headers[HeaderNames.ContentLength] = new OpenApiHeader
{
@@ -503,7 +503,7 @@ private static void SetResponseHeaderContentLength(OpenApiResponses responses, H
private static void SetResponseHeaderLocation(OpenApiResponses responses, HttpStatusCode statusCode, string resourceName)
{
- OpenApiResponse response = GetOrAddResponse(responses, statusCode);
+ var response = GetOrAddResponse(responses, statusCode);
response.Headers[HeaderNames.Location] = new OpenApiHeader
{
@@ -519,9 +519,9 @@ private static void SetResponseHeaderLocation(OpenApiResponses responses, HttpSt
private static OpenApiResponse GetOrAddResponse(OpenApiResponses responses, HttpStatusCode statusCode)
{
- string responseCode = ((int)statusCode).ToString();
+ var responseCode = ((int)statusCode).ToString();
- if (!responses.TryGetValue(responseCode, out OpenApiResponse? response))
+ if (!responses.TryGetValue(responseCode, out var response))
{
response = new OpenApiResponse();
responses.Add(responseCode, response);
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SwaggerComponents/EndpointOrderingFilter.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SwaggerComponents/EndpointOrderingFilter.cs
index 047ba4355a..4010c1c787 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SwaggerComponents/EndpointOrderingFilter.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SwaggerComponents/EndpointOrderingFilter.cs
@@ -13,12 +13,12 @@ public void Apply(OpenApiDocument swaggerDoc, DocumentFilterContext context)
ArgumentNullException.ThrowIfNull(swaggerDoc);
ArgumentNullException.ThrowIfNull(context);
- KeyValuePair[] endpointsInOrder = swaggerDoc.Paths.OrderBy(GetPrimaryResourcePublicName)
+ var endpointsInOrder = swaggerDoc.Paths.OrderBy(GetPrimaryResourcePublicName)
.ThenBy(GetRelationshipName).ThenBy(IsSecondaryEndpoint).ToArray();
swaggerDoc.Paths.Clear();
- foreach ((string url, OpenApiPathItem path) in endpointsInOrder)
+ foreach ((var url, var path) in endpointsInOrder)
{
swaggerDoc.Paths.Add(url, path);
}
@@ -36,7 +36,7 @@ private static bool IsSecondaryEndpoint(KeyValuePair en
private static string GetRelationshipName(KeyValuePair entry)
{
- Match match = RelationshipNameInUrlRegex().Match(entry.Key);
+ var match = RelationshipNameInUrlRegex().Match(entry.Key);
return match.Success ? match.Groups["RelationshipName"].Value : string.Empty;
}
diff --git a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SwaggerComponents/JsonApiDataContractResolver.cs b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SwaggerComponents/JsonApiDataContractResolver.cs
index dcc652c696..8337b90ba4 100644
--- a/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SwaggerComponents/JsonApiDataContractResolver.cs
+++ b/src/JsonApiDotNetCore.OpenApi.Swashbuckle/SwaggerComponents/JsonApiDataContractResolver.cs
@@ -33,7 +33,7 @@ public DataContract GetDataContractForType(Type type)
return DataContract.ForDynamic(typeof(object));
}
- DataContract dataContract = _dataContractResolver.GetDataContractForType(type);
+ var dataContract = _dataContractResolver.GetDataContractForType(type);
IList? replacementProperties = null;
@@ -58,10 +58,10 @@ private static DataContract ReplacePropertiesInDataContract(DataContract dataCon
private List GetDataPropertiesThatExistInResourceClrType(Type resourceClrType, DataContract dataContract)
{
- ResourceType resourceType = _resourceGraph.GetResourceType(resourceClrType);
+ var resourceType = _resourceGraph.GetResourceType(resourceClrType);
List dataProperties = [];
- foreach (DataProperty property in dataContract.ObjectProperties)
+ foreach (var property in dataContract.ObjectProperties)
{
if (property.MemberInfo.Name == nameof(Identifiable