Skip to content

Commit 500638e

Browse files
committed
Add missing null checks
1 parent 0709ea4 commit 500638e

10 files changed

+16
-2
lines changed

src/JsonApiDotNetCore.OpenApi/JsonApiActionDescriptorCollectionProvider.cs

+1
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ public JsonApiActionDescriptorCollectionProvider(IControllerResourceMapping cont
2727
{
2828
ArgumentGuard.NotNull(controllerResourceMapping);
2929
ArgumentGuard.NotNull(defaultProvider);
30+
ArgumentGuard.NotNull(resourceFieldValidationMetadataProvider);
3031

3132
_defaultProvider = defaultProvider;
3233
_jsonApiEndpointMetadataProvider = new JsonApiEndpointMetadataProvider(controllerResourceMapping, resourceFieldValidationMetadataProvider);

src/JsonApiDotNetCore.OpenApi/JsonApiMetadata/JsonApiEndpointMetadataProvider.cs

+2
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,8 @@ public JsonApiEndpointMetadataProvider(IControllerResourceMapping controllerReso
2020
ResourceFieldValidationMetadataProvider resourceFieldValidationMetadataProvider)
2121
{
2222
ArgumentGuard.NotNull(controllerResourceMapping);
23+
ArgumentGuard.NotNull(resourceFieldValidationMetadataProvider);
24+
2325
_nonPrimaryDocumentTypeFactory = new NonPrimaryDocumentTypeFactory(resourceFieldValidationMetadataProvider);
2426
_controllerResourceMapping = controllerResourceMapping;
2527
}

src/JsonApiDotNetCore.OpenApi/JsonApiMetadata/RelationshipTypeFactory.cs

+2
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,8 @@ internal sealed class RelationshipTypeFactory
1010

1111
public RelationshipTypeFactory(ResourceFieldValidationMetadataProvider resourceFieldValidationMetadataProvider)
1212
{
13+
ArgumentGuard.NotNull(resourceFieldValidationMetadataProvider);
14+
1315
_nonPrimaryDocumentTypeFactory = new NonPrimaryDocumentTypeFactory(resourceFieldValidationMetadataProvider);
1416
_resourceFieldValidationMetadataProvider = resourceFieldValidationMetadataProvider;
1517
}

src/JsonApiDotNetCore.OpenApi/SwaggerComponents/CachingSwaggerGenerator.cs

+1
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ internal sealed class CachingSwaggerGenerator : ISwaggerProvider
1717
public CachingSwaggerGenerator(SwaggerGenerator defaultSwaggerGenerator)
1818
{
1919
ArgumentGuard.NotNull(defaultSwaggerGenerator);
20+
2021
_defaultSwaggerGenerator = defaultSwaggerGenerator;
2122
}
2223

src/JsonApiDotNetCore.OpenApi/SwaggerComponents/JsonApiSchemaGenerator.cs

+1
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ public JsonApiSchemaGenerator(SchemaGenerator defaultSchemaGenerator, IResourceG
5555
ArgumentGuard.NotNull(defaultSchemaGenerator);
5656
ArgumentGuard.NotNull(resourceGraph);
5757
ArgumentGuard.NotNull(options);
58+
ArgumentGuard.NotNull(resourceFieldValidationMetadataProvider);
5859

5960
_defaultSchemaGenerator = defaultSchemaGenerator;
6061
_nullableReferenceSchemaGenerator = new NullableReferenceSchemaGenerator(_schemaRepositoryAccessor, options.SerializerOptions.PropertyNamingPolicy);

src/JsonApiDotNetCore.OpenApi/SwaggerComponents/NullableReferenceSchemaGenerator.cs

-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ public NullableReferenceSchemaGenerator(ISchemaRepositoryAccessor schemaReposito
2020
ArgumentGuard.NotNull(schemaRepositoryAccessor);
2121

2222
_schemaRepositoryAccessor = schemaRepositoryAccessor;
23-
2423
_nullableSchemaReferenceId = namingPolicy != null ? namingPolicy.ConvertName(PascalCaseNullableSchemaReferenceId) : PascalCaseNullableSchemaReferenceId;
2524
}
2625

src/JsonApiDotNetCore.OpenApi/SwaggerComponents/OpenApiSchemaExtensions.cs

+3
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@ internal static class OpenApiSchemaExtensions
66
{
77
public static void ReorderProperties(this OpenApiSchema fullSchemaForResourceObject, IEnumerable<string> propertyNamesInOrder)
88
{
9+
ArgumentGuard.NotNull(fullSchemaForResourceObject);
10+
ArgumentGuard.NotNull(propertyNamesInOrder);
11+
912
var propertiesInOrder = new Dictionary<string, OpenApiSchema>();
1013

1114
foreach (string propertyName in propertyNamesInOrder)

src/JsonApiDotNetCore.OpenApi/SwaggerComponents/ResourceFieldObjectSchemaBuilder.cs

+4
Original file line numberDiff line numberDiff line change
@@ -74,6 +74,8 @@ private IDictionary<string, OpenApiSchema> GetFieldSchemas()
7474

7575
public void SetMembersOfAttributesObject(OpenApiSchema fullSchemaForAttributesObject)
7676
{
77+
ArgumentGuard.NotNull(fullSchemaForAttributesObject);
78+
7779
AttrCapabilities requiredCapability = GetRequiredCapabilityForAttributes(_resourceTypeInfo.ResourceObjectOpenType);
7880

7981
foreach ((string fieldName, OpenApiSchema resourceFieldSchema) in _schemasForResourceFields)
@@ -127,6 +129,8 @@ private bool IsFieldRequired(ResourceFieldAttribute field)
127129

128130
public void SetMembersOfRelationshipsObject(OpenApiSchema fullSchemaForRelationshipsObject)
129131
{
132+
ArgumentGuard.NotNull(fullSchemaForRelationshipsObject);
133+
130134
foreach (string fieldName in _schemasForResourceFields.Keys)
131135
{
132136
RelationshipAttribute? matchingRelationship = _resourceTypeInfo.ResourceType.FindRelationshipByPublicName(fieldName);

src/JsonApiDotNetCore.OpenApi/SwaggerComponents/ResourceObjectSchemaGenerator.cs

+1
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,7 @@ public ResourceObjectSchemaGenerator(SchemaGenerator defaultSchemaGenerator, IRe
3131
ArgumentGuard.NotNull(resourceGraph);
3232
ArgumentGuard.NotNull(options);
3333
ArgumentGuard.NotNull(schemaRepositoryAccessor);
34+
ArgumentGuard.NotNull(resourceFieldValidationMetadataProvider);
3435

3536
_defaultSchemaGenerator = defaultSchemaGenerator;
3637
_resourceGraph = resourceGraph;

src/JsonApiDotNetCore.OpenApi/SwaggerComponents/SchemaRepositoryAccessor.cs

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ public SchemaRepository Current
1212
{
1313
if (_schemaRepository == null)
1414
{
15-
throw new InvalidOperationException("SchemaRepository unavailable.");
15+
throw new InvalidOperationException("SchemaRepository is unavailable.");
1616
}
1717

1818
return _schemaRepository;

0 commit comments

Comments
 (0)