Skip to content

Commit 0b15d45

Browse files
author
Bart Koelman
committed
Renamed OperationKind to WriteOperationKind, exposed as IJsonApiRequest.WriteOperation
1 parent b277e1f commit 0b15d45

30 files changed

+199
-200
lines changed

src/Examples/JsonApiDotNetCoreExample/Definitions/TodoItemDefinition.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,13 +36,13 @@ private SortExpression GetDefaultSortOrder()
3636
});
3737
}
3838

39-
public override Task OnWritingAsync(TodoItem resource, OperationKind operationKind, CancellationToken cancellationToken)
39+
public override Task OnWritingAsync(TodoItem resource, WriteOperationKind writeOperation, CancellationToken cancellationToken)
4040
{
41-
if (operationKind == OperationKind.CreateResource)
41+
if (writeOperation == WriteOperationKind.CreateResource)
4242
{
4343
resource.CreatedAt = _systemClock.UtcNow;
4444
}
45-
else if (operationKind == OperationKind.UpdateResource)
45+
else if (writeOperation == WriteOperationKind.UpdateResource)
4646
{
4747
resource.LastModifiedAt = _systemClock.UtcNow;
4848
}

src/JsonApiDotNetCore/AtomicOperations/LocalIdValidator.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ public void Validate(IEnumerable<OperationContainer> operations)
5656

5757
private void ValidateOperation(OperationContainer operation)
5858
{
59-
if (operation.Kind == OperationKind.CreateResource)
59+
if (operation.Kind == WriteOperationKind.CreateResource)
6060
{
6161
DeclareLocalId(operation.Resource);
6262
}
@@ -70,7 +70,7 @@ private void ValidateOperation(OperationContainer operation)
7070
AssertLocalIdIsAssigned(secondaryResource);
7171
}
7272

73-
if (operation.Kind == OperationKind.CreateResource)
73+
if (operation.Kind == WriteOperationKind.CreateResource)
7474
{
7575
AssignLocalId(operation);
7676
}

src/JsonApiDotNetCore/AtomicOperations/OperationProcessorAccessor.cs

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -44,37 +44,37 @@ protected virtual IOperationProcessor ResolveProcessor(OperationContainer operat
4444
return (IOperationProcessor)_serviceProvider.GetRequiredService(processorType);
4545
}
4646

47-
private static Type GetProcessorInterface(OperationKind kind)
47+
private static Type GetProcessorInterface(WriteOperationKind writeOperation)
4848
{
49-
switch (kind)
49+
switch (writeOperation)
5050
{
51-
case OperationKind.CreateResource:
51+
case WriteOperationKind.CreateResource:
5252
{
5353
return typeof(ICreateProcessor<,>);
5454
}
55-
case OperationKind.UpdateResource:
55+
case WriteOperationKind.UpdateResource:
5656
{
5757
return typeof(IUpdateProcessor<,>);
5858
}
59-
case OperationKind.DeleteResource:
59+
case WriteOperationKind.DeleteResource:
6060
{
6161
return typeof(IDeleteProcessor<,>);
6262
}
63-
case OperationKind.SetRelationship:
63+
case WriteOperationKind.SetRelationship:
6464
{
6565
return typeof(ISetRelationshipProcessor<,>);
6666
}
67-
case OperationKind.AddToRelationship:
67+
case WriteOperationKind.AddToRelationship:
6868
{
6969
return typeof(IAddToRelationshipProcessor<,>);
7070
}
71-
case OperationKind.RemoveFromRelationship:
71+
case WriteOperationKind.RemoveFromRelationship:
7272
{
7373
return typeof(IRemoveFromRelationshipProcessor<,>);
7474
}
7575
default:
7676
{
77-
throw new NotSupportedException($"Unknown operation kind '{kind}'.");
77+
throw new NotSupportedException($"Unknown write operation kind '{writeOperation}'.");
7878
}
7979
}
8080
}

src/JsonApiDotNetCore/AtomicOperations/OperationsProcessor.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ protected virtual async Task<OperationContainer> ProcessOperationAsync(Operation
118118

119119
protected void TrackLocalIdsForOperation(OperationContainer operation)
120120
{
121-
if (operation.Kind == OperationKind.CreateResource)
121+
if (operation.Kind == WriteOperationKind.CreateResource)
122122
{
123123
DeclareLocalId(operation.Resource);
124124
}

src/JsonApiDotNetCore/Configuration/JsonApiValidationFilter.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ public bool ShouldValidateEntry(ValidationEntry entry, ValidationEntry parentEnt
4141

4242
var httpContextAccessor = _serviceProvider.GetRequiredService<IHttpContextAccessor>();
4343

44-
if (httpContextAccessor.HttpContext!.Request.Method == HttpMethods.Patch || request.OperationKind == OperationKind.UpdateResource)
44+
if (httpContextAccessor.HttpContext!.Request.Method == HttpMethods.Patch || request.WriteOperation == WriteOperationKind.UpdateResource)
4545
{
4646
var targetedFields = _serviceProvider.GetRequiredService<ITargetedFields>();
4747
return IsFieldTargeted(entry, targetedFields);

src/JsonApiDotNetCore/Controllers/BaseJsonApiOperationsController.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -132,7 +132,7 @@ protected virtual void ValidateClientGeneratedIds(IEnumerable<OperationContainer
132132

133133
foreach (OperationContainer operation in operations)
134134
{
135-
if (operation.Kind == OperationKind.CreateResource && operation.Resource.StringId != null)
135+
if (operation.Kind == WriteOperationKind.CreateResource && operation.Resource.StringId != null)
136136
{
137137
throw new ResourceIdInCreateResourceNotAllowedException(index);
138138
}
@@ -153,7 +153,7 @@ protected virtual void ValidateModelState(IEnumerable<OperationContainer> operat
153153

154154
foreach (OperationContainer operation in operations)
155155
{
156-
if (operation.Kind == OperationKind.CreateResource || operation.Kind == OperationKind.UpdateResource)
156+
if (operation.Kind == WriteOperationKind.CreateResource || operation.Kind == WriteOperationKind.UpdateResource)
157157
{
158158
_targetedFields.Attributes = operation.TargetedFields.Attributes;
159159
_targetedFields.Relationships = operation.TargetedFields.Relationships;

src/JsonApiDotNetCore/Middleware/IJsonApiRequest.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ public interface IJsonApiRequest
4848
/// <summary>
4949
/// In case of a non-readonly request, this indicates the kind of write operation currently being processed.
5050
/// </summary>
51-
OperationKind? OperationKind { get; }
51+
WriteOperationKind? WriteOperation { get; }
5252

5353
/// <summary>
5454
/// In case of an atomic:operations request, identifies the overarching transaction.

src/JsonApiDotNetCore/Middleware/JsonApiMiddleware.cs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -224,10 +224,10 @@ private static void SetupResourceRequest(JsonApiRequest request, ResourceContext
224224
// @formatter:wrap_chained_method_calls chop_always
225225
// @formatter:keep_existing_linebreaks true
226226

227-
request.OperationKind =
228-
httpRequest.Method == HttpMethod.Post.Method ? OperationKind.AddToRelationship :
229-
httpRequest.Method == HttpMethod.Patch.Method ? OperationKind.SetRelationship :
230-
httpRequest.Method == HttpMethod.Delete.Method ? OperationKind.RemoveFromRelationship : null;
227+
request.WriteOperation =
228+
httpRequest.Method == HttpMethod.Post.Method ? WriteOperationKind.AddToRelationship :
229+
httpRequest.Method == HttpMethod.Patch.Method ? WriteOperationKind.SetRelationship :
230+
httpRequest.Method == HttpMethod.Delete.Method ? WriteOperationKind.RemoveFromRelationship : null;
231231

232232
// @formatter:keep_existing_linebreaks restore
233233
// @formatter:wrap_chained_method_calls restore
@@ -248,10 +248,10 @@ private static void SetupResourceRequest(JsonApiRequest request, ResourceContext
248248
// @formatter:wrap_chained_method_calls chop_always
249249
// @formatter:keep_existing_linebreaks true
250250

251-
request.OperationKind =
252-
httpRequest.Method == HttpMethod.Post.Method ? OperationKind.CreateResource :
253-
httpRequest.Method == HttpMethod.Patch.Method ? OperationKind.UpdateResource :
254-
httpRequest.Method == HttpMethod.Delete.Method ? OperationKind.DeleteResource : null;
251+
request.WriteOperation =
252+
httpRequest.Method == HttpMethod.Post.Method ? WriteOperationKind.CreateResource :
253+
httpRequest.Method == HttpMethod.Patch.Method ? WriteOperationKind.UpdateResource :
254+
httpRequest.Method == HttpMethod.Delete.Method ? WriteOperationKind.DeleteResource : null;
255255

256256
// @formatter:keep_existing_linebreaks restore
257257
// @formatter:wrap_chained_method_calls restore

src/JsonApiDotNetCore/Middleware/JsonApiRequest.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ public sealed class JsonApiRequest : IJsonApiRequest
3030
public bool IsReadOnly { get; set; }
3131

3232
/// <inheritdoc />
33-
public OperationKind? OperationKind { get; set; }
33+
public WriteOperationKind? WriteOperation { get; set; }
3434

3535
/// <inheritdoc />
3636
public string TransactionId { get; set; }
@@ -47,7 +47,7 @@ public void CopyFrom(IJsonApiRequest other)
4747
Relationship = other.Relationship;
4848
IsCollection = other.IsCollection;
4949
IsReadOnly = other.IsReadOnly;
50-
OperationKind = other.OperationKind;
50+
WriteOperation = other.WriteOperation;
5151
TransactionId = other.TransactionId;
5252
}
5353
}

src/JsonApiDotNetCore/Middleware/OperationKind.cs renamed to src/JsonApiDotNetCore/Middleware/WriteOperationKind.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
namespace JsonApiDotNetCore.Middleware
22
{
33
/// <summary>
4-
/// Lists the functional operation kinds of a resource request or an atomic:operations request.
4+
/// Lists the functional write operations, originating from a POST/PATCH/DELETE request against a single resource/relationship or a POST request against
5+
/// a list of operations.
56
/// </summary>
6-
public enum OperationKind
7+
public enum WriteOperationKind
78
{
89
/// <summary>
910
/// Create a new resource with attributes, relationships or both.

0 commit comments

Comments
 (0)