Skip to content

Commit 582085f

Browse files
committed
fix(#383): add operation processor overloads
1 parent 113ab03 commit 582085f

File tree

4 files changed

+170
-0
lines changed

4 files changed

+170
-0
lines changed

Diff for: src/JsonApiDotNetCore/Services/Operations/Processors/CreateOpProcessor.cs

+40
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,22 @@ public CreateOpProcessor(
2626
IContextGraph contextGraph
2727
) : base(service, deSerializer, documentBuilder, contextGraph)
2828
{ }
29+
30+
public CreateOpProcessor(
31+
IResourceCmdService<T, int> service,
32+
IJsonApiDeSerializer deSerializer,
33+
IDocumentBuilder documentBuilder,
34+
IContextGraph contextGraph
35+
) : base(service, deSerializer, documentBuilder, contextGraph)
36+
{ }
37+
38+
public CreateOpProcessor(
39+
IResourceService<T, int> service,
40+
IJsonApiDeSerializer deSerializer,
41+
IDocumentBuilder documentBuilder,
42+
IContextGraph contextGraph
43+
) : base(service, deSerializer, documentBuilder, contextGraph)
44+
{ }
2945
}
3046

3147
public class CreateOpProcessor<T, TId> : ICreateOpProcessor<T, TId>
@@ -48,6 +64,30 @@ public CreateOpProcessor(
4864
_contextGraph = contextGraph;
4965
}
5066

67+
public CreateOpProcessor(
68+
IResourceCmdService<T, TId> service,
69+
IJsonApiDeSerializer deSerializer,
70+
IDocumentBuilder documentBuilder,
71+
IContextGraph contextGraph)
72+
{
73+
_service = service;
74+
_deSerializer = deSerializer;
75+
_documentBuilder = documentBuilder;
76+
_contextGraph = contextGraph;
77+
}
78+
79+
public CreateOpProcessor(
80+
IResourceService<T, TId> service,
81+
IJsonApiDeSerializer deSerializer,
82+
IDocumentBuilder documentBuilder,
83+
IContextGraph contextGraph)
84+
{
85+
_service = service;
86+
_deSerializer = deSerializer;
87+
_documentBuilder = documentBuilder;
88+
_contextGraph = contextGraph;
89+
}
90+
5191
public async Task<Operation> ProcessAsync(Operation operation)
5292
{
5393
var model = (T)_deSerializer.DocumentToObject(operation.DataObject);

Diff for: src/JsonApiDotNetCore/Services/Operations/Processors/GetOpProcessor.cs

+50
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,24 @@ public GetOpProcessor(
4242
IJsonApiContext jsonApiContext
4343
) : base(getAll, getById, getRelationship, deSerializer, documentBuilder, contextGraph, jsonApiContext)
4444
{ }
45+
46+
public GetOpProcessor(
47+
IResourceQueryService<T, int> service,
48+
IJsonApiDeSerializer deSerializer,
49+
IDocumentBuilder documentBuilder,
50+
IContextGraph contextGraph,
51+
IJsonApiContext jsonApiContext
52+
) : base(service, service, service, deSerializer, documentBuilder, contextGraph, jsonApiContext)
53+
{ }
54+
55+
public GetOpProcessor(
56+
IResourceService<T, int> service,
57+
IJsonApiDeSerializer deSerializer,
58+
IDocumentBuilder documentBuilder,
59+
IContextGraph contextGraph,
60+
IJsonApiContext jsonApiContext
61+
) : base(service, service, service, deSerializer, documentBuilder, contextGraph, jsonApiContext)
62+
{ }
4563
}
4664

4765
/// <inheritdoc />
@@ -75,6 +93,38 @@ public GetOpProcessor(
7593
_jsonApiContext = jsonApiContext.ApplyContext<T>(this);
7694
}
7795

96+
public GetOpProcessor(
97+
IResourceQueryService<T, TId> service,
98+
IJsonApiDeSerializer deSerializer,
99+
IDocumentBuilder documentBuilder,
100+
IContextGraph contextGraph,
101+
IJsonApiContext jsonApiContext)
102+
{
103+
_getAll = service;
104+
_getById = service;
105+
_getRelationship = service;
106+
_deSerializer = deSerializer;
107+
_documentBuilder = documentBuilder;
108+
_contextGraph = contextGraph;
109+
_jsonApiContext = jsonApiContext.ApplyContext<T>(this);
110+
}
111+
112+
public GetOpProcessor(
113+
IResourceService<T, TId> service,
114+
IJsonApiDeSerializer deSerializer,
115+
IDocumentBuilder documentBuilder,
116+
IContextGraph contextGraph,
117+
IJsonApiContext jsonApiContext)
118+
{
119+
_getAll = service;
120+
_getById = service;
121+
_getRelationship = service;
122+
_deSerializer = deSerializer;
123+
_documentBuilder = documentBuilder;
124+
_contextGraph = contextGraph;
125+
_jsonApiContext = jsonApiContext.ApplyContext<T>(this);
126+
}
127+
78128
/// <inheritdoc />
79129
public async Task<Operation> ProcessAsync(Operation operation)
80130
{

Diff for: src/JsonApiDotNetCore/Services/Operations/Processors/RemoveOpProcessor.cs

+40
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,22 @@ public RemoveOpProcessor(
2525
IContextGraph contextGraph
2626
) : base(service, deSerializer, documentBuilder, contextGraph)
2727
{ }
28+
29+
public RemoveOpProcessor(
30+
IResourceCmdService<T, int> service,
31+
IJsonApiDeSerializer deSerializer,
32+
IDocumentBuilder documentBuilder,
33+
IContextGraph contextGraph
34+
) : base(service, deSerializer, documentBuilder, contextGraph)
35+
{ }
36+
37+
public RemoveOpProcessor(
38+
IResourceService<T, int> service,
39+
IJsonApiDeSerializer deSerializer,
40+
IDocumentBuilder documentBuilder,
41+
IContextGraph contextGraph
42+
) : base(service, deSerializer, documentBuilder, contextGraph)
43+
{ }
2844
}
2945

3046
public class RemoveOpProcessor<T, TId> : IRemoveOpProcessor<T, TId>
@@ -47,6 +63,30 @@ public RemoveOpProcessor(
4763
_contextGraph = contextGraph;
4864
}
4965

66+
public RemoveOpProcessor(
67+
IResourceCmdService<T, TId> service,
68+
IJsonApiDeSerializer deSerializer,
69+
IDocumentBuilder documentBuilder,
70+
IContextGraph contextGraph)
71+
{
72+
_service = service;
73+
_deSerializer = deSerializer;
74+
_documentBuilder = documentBuilder;
75+
_contextGraph = contextGraph;
76+
}
77+
78+
public RemoveOpProcessor(
79+
IResourceService<T, TId> service,
80+
IJsonApiDeSerializer deSerializer,
81+
IDocumentBuilder documentBuilder,
82+
IContextGraph contextGraph)
83+
{
84+
_service = service;
85+
_deSerializer = deSerializer;
86+
_documentBuilder = documentBuilder;
87+
_contextGraph = contextGraph;
88+
}
89+
5090
public async Task<Operation> ProcessAsync(Operation operation)
5191
{
5292
var stringId = operation.Ref?.Id?.ToString();

Diff for: src/JsonApiDotNetCore/Services/Operations/Processors/UpdateOpProcessor.cs

+40
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,22 @@ public UpdateOpProcessor(
2525
IContextGraph contextGraph
2626
) : base(service, deSerializer, documentBuilder, contextGraph)
2727
{ }
28+
29+
public UpdateOpProcessor(
30+
IResourceCmdService<T, int> service,
31+
IJsonApiDeSerializer deSerializer,
32+
IDocumentBuilder documentBuilder,
33+
IContextGraph contextGraph
34+
) : base(service, deSerializer, documentBuilder, contextGraph)
35+
{ }
36+
37+
public UpdateOpProcessor(
38+
IResourceService<T, int> service,
39+
IJsonApiDeSerializer deSerializer,
40+
IDocumentBuilder documentBuilder,
41+
IContextGraph contextGraph
42+
) : base(service, deSerializer, documentBuilder, contextGraph)
43+
{ }
2844
}
2945

3046
public class UpdateOpProcessor<T, TId> : IUpdateOpProcessor<T, TId>
@@ -47,6 +63,30 @@ public UpdateOpProcessor(
4763
_contextGraph = contextGraph;
4864
}
4965

66+
public UpdateOpProcessor(
67+
IResourceCmdService<T, TId> service,
68+
IJsonApiDeSerializer deSerializer,
69+
IDocumentBuilder documentBuilder,
70+
IContextGraph contextGraph)
71+
{
72+
_service = service;
73+
_deSerializer = deSerializer;
74+
_documentBuilder = documentBuilder;
75+
_contextGraph = contextGraph;
76+
}
77+
78+
public UpdateOpProcessor(
79+
IResourceService<T, TId> service,
80+
IJsonApiDeSerializer deSerializer,
81+
IDocumentBuilder documentBuilder,
82+
IContextGraph contextGraph)
83+
{
84+
_service = service;
85+
_deSerializer = deSerializer;
86+
_documentBuilder = documentBuilder;
87+
_contextGraph = contextGraph;
88+
}
89+
5090
public async Task<Operation> ProcessAsync(Operation operation)
5191
{
5292
if (string.IsNullOrWhiteSpace(operation?.DataObject?.Id?.ToString()))

0 commit comments

Comments
 (0)