Skip to content

Commit d23ac67

Browse files
committed
Resharper: use primary constructors
1 parent ebcea37 commit d23ac67

File tree

14 files changed

+29
-108
lines changed

14 files changed

+29
-108
lines changed

src/JsonApiDotNetCore.OpenApi.Client/Exceptions/ApiException.cs

Lines changed: 6 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -6,19 +6,11 @@
66
namespace JsonApiDotNetCore.OpenApi.Client.Exceptions;
77

88
[UsedImplicitly(ImplicitUseTargetFlags.Members)]
9-
public sealed class ApiException : Exception
9+
public sealed class ApiException(
10+
string message, int statusCode, string? response, IReadOnlyDictionary<string, IEnumerable<string>> headers, Exception? innerException)
11+
: Exception($"{message}\n\nStatus: {statusCode}\nResponse: \n{response ?? "(null)"}", innerException)
1012
{
11-
public int StatusCode { get; }
12-
13-
public string? Response { get; }
14-
15-
public IReadOnlyDictionary<string, IEnumerable<string>> Headers { get; }
16-
17-
public ApiException(string message, int statusCode, string? response, IReadOnlyDictionary<string, IEnumerable<string>> headers, Exception? innerException)
18-
: base($"{message}\n\nStatus: {statusCode}\nResponse: \n{response ?? "(null)"}", innerException)
19-
{
20-
StatusCode = statusCode;
21-
Response = response;
22-
Headers = headers;
23-
}
13+
public int StatusCode { get; } = statusCode;
14+
public string? Response { get; } = response;
15+
public IReadOnlyDictionary<string, IEnumerable<string>> Headers { get; } = headers;
2416
}
Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,3 @@
11
namespace JsonApiDotNetCore.OpenApi.Client;
22

3-
internal sealed class UnreachableCodeException : Exception
4-
{
5-
public UnreachableCodeException()
6-
: base("This code should not be reachable.")
7-
{
8-
}
9-
}
3+
internal sealed class UnreachableCodeException() : Exception("This code should not be reachable.");

src/JsonApiDotNetCore.OpenApi/JsonApiMetadata/JsonApiEndpointMetadataContainer.cs

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -3,15 +3,8 @@ namespace JsonApiDotNetCore.OpenApi.JsonApiMetadata;
33
/// <summary>
44
/// Metadata available at runtime about a JsonApiDotNetCore endpoint.
55
/// </summary>
6-
internal sealed class JsonApiEndpointMetadataContainer
6+
internal sealed class JsonApiEndpointMetadataContainer(IJsonApiRequestMetadata? requestMetadata, IJsonApiResponseMetadata? responseMetadata)
77
{
8-
public IJsonApiRequestMetadata? RequestMetadata { get; }
9-
10-
public IJsonApiResponseMetadata? ResponseMetadata { get; }
11-
12-
public JsonApiEndpointMetadataContainer(IJsonApiRequestMetadata? requestMetadata, IJsonApiResponseMetadata? responseMetadata)
13-
{
14-
RequestMetadata = requestMetadata;
15-
ResponseMetadata = responseMetadata;
16-
}
8+
public IJsonApiRequestMetadata? RequestMetadata { get; } = requestMetadata;
9+
public IJsonApiResponseMetadata? ResponseMetadata { get; } = responseMetadata;
1710
}
Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,4 @@
11
namespace JsonApiDotNetCore.OpenApi.JsonApiMetadata;
22

3-
internal sealed class RelationshipRequestMetadata : NonPrimaryEndpointMetadata, IJsonApiRequestMetadata
4-
{
5-
public RelationshipRequestMetadata(IDictionary<string, Type> documentTypesByRelationshipName)
6-
: base(documentTypesByRelationshipName)
7-
{
8-
}
9-
}
3+
internal sealed class RelationshipRequestMetadata(IDictionary<string, Type> documentTypesByRelationshipName)
4+
: NonPrimaryEndpointMetadata(documentTypesByRelationshipName), IJsonApiRequestMetadata;
Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,4 @@
11
namespace JsonApiDotNetCore.OpenApi.JsonApiMetadata;
22

3-
internal sealed class RelationshipResponseMetadata : NonPrimaryEndpointMetadata, IJsonApiResponseMetadata
4-
{
5-
public RelationshipResponseMetadata(IDictionary<string, Type> documentTypesByRelationshipName)
6-
: base(documentTypesByRelationshipName)
7-
{
8-
}
9-
}
3+
internal sealed class RelationshipResponseMetadata(IDictionary<string, Type> documentTypesByRelationshipName)
4+
: NonPrimaryEndpointMetadata(documentTypesByRelationshipName), IJsonApiResponseMetadata;
Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,4 @@
11
namespace JsonApiDotNetCore.OpenApi.JsonApiMetadata;
22

3-
internal sealed class SecondaryResponseMetadata : NonPrimaryEndpointMetadata, IJsonApiResponseMetadata
4-
{
5-
public SecondaryResponseMetadata(IDictionary<string, Type> documentTypesByRelationshipName)
6-
: base(documentTypesByRelationshipName)
7-
{
8-
}
9-
}
3+
internal sealed class SecondaryResponseMetadata(IDictionary<string, Type> documentTypesByRelationshipName)
4+
: NonPrimaryEndpointMetadata(documentTypesByRelationshipName), IJsonApiResponseMetadata;
Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,3 @@
11
namespace JsonApiDotNetCore.OpenApi;
22

3-
internal sealed class UnreachableCodeException : Exception
4-
{
5-
public UnreachableCodeException()
6-
: base("This code should not be reachable.")
7-
{
8-
}
9-
}
3+
internal sealed class UnreachableCodeException() : Exception("This code should not be reachable.");

test/OpenApiClientTests/FakeHttpClientWrapper.cs

Lines changed: 6 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -73,23 +73,16 @@ public void Dispose()
7373
_handler.Dispose();
7474
}
7575

76-
private sealed class FakeHttpMessageHandler : HttpMessageHandler
76+
private sealed class FakeHttpMessageHandler(HttpResponseMessage response) : HttpMessageHandler
7777
{
78-
private HttpResponseMessage _response;
79-
8078
public HttpRequestMessage? Request { get; private set; }
8179
public string? RequestBody { get; private set; }
8280

83-
public FakeHttpMessageHandler(HttpResponseMessage response)
84-
{
85-
_response = response;
86-
}
87-
88-
public void SetResponse(HttpResponseMessage response)
81+
public void SetResponse(HttpResponseMessage newResponse)
8982
{
90-
ArgumentGuard.NotNull(response);
83+
ArgumentGuard.NotNull(newResponse);
9184

92-
_response = response;
85+
response = newResponse;
9386
}
9487

9588
protected override HttpResponseMessage Send(HttpRequestMessage request, CancellationToken cancellationToken)
@@ -104,12 +97,12 @@ protected override HttpResponseMessage Send(HttpRequestMessage request, Cancella
10497
RequestBody = reader.ReadToEnd();
10598
}
10699

107-
return _response;
100+
return response;
108101
}
109102

110103
protected override Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
111104
{
112-
HttpResponseMessage response = Send(request, cancellationToken);
105+
Send(request, cancellationToken);
113106
return Task.FromResult(response);
114107
}
115108
}

test/OpenApiTests/DocComments/DocCommentsDbContext.cs

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,17 +7,12 @@
77
namespace OpenApiTests.DocComments;
88

99
[UsedImplicitly(ImplicitUseTargetFlags.Members)]
10-
public sealed class DocCommentsDbContext : TestableDbContext
10+
public sealed class DocCommentsDbContext(DbContextOptions<DocCommentsDbContext> options) : TestableDbContext(options)
1111
{
1212
public DbSet<Skyscraper> Skyscrapers => Set<Skyscraper>();
1313
public DbSet<Elevator> Elevators => Set<Elevator>();
1414
public DbSet<Space> Spaces => Set<Space>();
1515

16-
public DocCommentsDbContext(DbContextOptions<DocCommentsDbContext> options)
17-
: base(options)
18-
{
19-
}
20-
2116
protected override void OnModelCreating(ModelBuilder builder)
2217
{
2318
builder.Entity<Skyscraper>()

test/OpenApiTests/LegacyOpenApiIntegration/LegacyIntegrationDbContext.cs

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,17 +7,12 @@
77
namespace OpenApiTests.LegacyOpenApiIntegration;
88

99
[UsedImplicitly(ImplicitUseTargetFlags.Members)]
10-
public sealed class LegacyIntegrationDbContext : TestableDbContext
10+
public sealed class LegacyIntegrationDbContext(DbContextOptions<LegacyIntegrationDbContext> options) : TestableDbContext(options)
1111
{
1212
public DbSet<Airplane> Airplanes => Set<Airplane>();
1313
public DbSet<Flight> Flights => Set<Flight>();
1414
public DbSet<FlightAttendant> FlightAttendants => Set<FlightAttendant>();
1515

16-
public LegacyIntegrationDbContext(DbContextOptions<LegacyIntegrationDbContext> options)
17-
: base(options)
18-
{
19-
}
20-
2116
protected override void OnModelCreating(ModelBuilder builder)
2217
{
2318
builder.Entity<Flight>()

test/OpenApiTests/NamingConventions/NamingConventionsDbContext.cs

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,7 @@
55
namespace OpenApiTests.NamingConventions;
66

77
[UsedImplicitly(ImplicitUseTargetFlags.Members)]
8-
public sealed class NamingConventionsDbContext : TestableDbContext
8+
public sealed class NamingConventionsDbContext(DbContextOptions<NamingConventionsDbContext> options) : TestableDbContext(options)
99
{
1010
public DbSet<Supermarket> Supermarkets => Set<Supermarket>();
11-
12-
public NamingConventionsDbContext(DbContextOptions<NamingConventionsDbContext> options)
13-
: base(options)
14-
{
15-
}
1611
}

test/OpenApiTests/QueryStrings/QueryStringsDbContext.cs

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,7 @@
55
namespace OpenApiTests.QueryStrings;
66

77
[UsedImplicitly(ImplicitUseTargetFlags.Members)]
8-
public sealed class QueryStringsDbContext : TestableDbContext
8+
public sealed class QueryStringsDbContext(DbContextOptions<QueryStringsDbContext> options) : TestableDbContext(options)
99
{
1010
public DbSet<Node> Nodes => Set<Node>();
11-
12-
public QueryStringsDbContext(DbContextOptions<QueryStringsDbContext> options)
13-
: base(options)
14-
{
15-
}
1611
}

test/OpenApiTests/ResourceFieldValidation/NullableReferenceTypesOff/NrtOffDbContext.cs

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,16 +7,11 @@ namespace OpenApiTests.ResourceFieldValidation.NullableReferenceTypesOff;
77
// @formatter:wrap_chained_method_calls chop_always
88

99
[UsedImplicitly(ImplicitUseTargetFlags.Members)]
10-
public sealed class NrtOffDbContext : TestableDbContext
10+
public sealed class NrtOffDbContext(DbContextOptions<NrtOffDbContext> options) : TestableDbContext(options)
1111
{
1212
public DbSet<NrtOffResource> Resources => Set<NrtOffResource>();
1313
public DbSet<NrtOffEmpty> Empties => Set<NrtOffEmpty>();
1414

15-
public NrtOffDbContext(DbContextOptions<NrtOffDbContext> options)
16-
: base(options)
17-
{
18-
}
19-
2015
protected override void OnModelCreating(ModelBuilder builder)
2116
{
2217
builder.Entity<NrtOffResource>()

test/OpenApiTests/ResourceFieldValidation/NullableReferenceTypesOn/NrtOnDbContext.cs

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,16 +7,11 @@ namespace OpenApiTests.ResourceFieldValidation.NullableReferenceTypesOn;
77
// @formatter:wrap_chained_method_calls chop_always
88

99
[UsedImplicitly(ImplicitUseTargetFlags.Members)]
10-
public sealed class NrtOnDbContext : TestableDbContext
10+
public sealed class NrtOnDbContext(DbContextOptions<NrtOnDbContext> options) : TestableDbContext(options)
1111
{
1212
public DbSet<NrtOnResource> Resources => Set<NrtOnResource>();
1313
public DbSet<NrtOnEmpty> Empties => Set<NrtOnEmpty>();
1414

15-
public NrtOnDbContext(DbContextOptions<NrtOnDbContext> options)
16-
: base(options)
17-
{
18-
}
19-
2015
protected override void OnModelCreating(ModelBuilder builder)
2116
{
2217
builder.Entity<NrtOnResource>()

0 commit comments

Comments
 (0)