@@ -16,28 +16,28 @@ public class TodoItemService : JsonApiResourceService<TodoItem>
16
16
private readonly INotificationService _notificationService ;
17
17
18
18
public TodoItemService (
19
- IResourceRepository < TodoItem > repository ,
19
+ IResourceRepositoryAccessor repositoryAccessor ,
20
20
IQueryLayerComposer queryLayerComposer ,
21
21
IPaginationContext paginationContext ,
22
22
IJsonApiOptions options ,
23
23
ILoggerFactory loggerFactory ,
24
24
IJsonApiRequest request ,
25
25
IResourceChangeTracker <TodoItem > resourceChangeTracker ,
26
26
IResourceFactory resourceFactory ,
27
- IResourceHookExecutor hookExecutor = null )
28
- : base (repository , queryLayerComposer , paginationContext , options , loggerFactory ,
27
+ IResourceHookExecutorFacade hookExecutor )
28
+ : base (repositoryAccessor , queryLayerComposer , paginationContext , options , loggerFactory ,
29
29
request , resourceChangeTracker , resourceFactory , hookExecutor )
30
30
{
31
31
_notificationService = notificationService ;
32
32
}
33
33
34
- public override async Task <TodoItem > CreateAsync (TodoItem resource )
34
+ public override async Task <TodoItem > CreateAsync (TodoItem resource , CancellationToken cancellationToken )
35
35
{
36
36
// Call the base implementation
37
- var newResource = await base .CreateAsync (resource );
37
+ var newResource = await base .CreateAsync (resource , cancellationToken );
38
38
39
39
// Custom code
40
- _notificationService .Notify ($" Resource created: {newResource .StringId }" );
40
+ await _notificationService .NotifyAsync ($" Resource created: {newResource .StringId }" );
41
41
42
42
return newResource ;
43
43
}
@@ -70,9 +70,9 @@ public class ProductService : IResourceService<Product>
70
70
_dao = dao ;
71
71
}
72
72
73
- public Task <IEnumerable <Product >> GetAsync ()
73
+ public async Task <IReadOnlyCollection <Product >> GetAsync (CancellationToken cancellationToken )
74
74
{
75
- return await _dao .GetProductsAsync ();
75
+ return await _dao .GetProductsAsync (cancellationToken );
76
76
}
77
77
}
78
78
```
@@ -162,15 +162,15 @@ public class ArticlesController : BaseJsonApiController<Article>
162
162
{ }
163
163
164
164
[HttpPost ]
165
- public override async Task <IActionResult > PostAsync ([FromBody ] Article resource )
165
+ public override async Task <IActionResult > PostAsync ([FromBody ] Article resource , CancellationToken cancellationToken )
166
166
{
167
- return await base .PostAsync (resource );
167
+ return await base .PostAsync (resource , cancellationToken );
168
168
}
169
169
170
170
[HttpDelete (" {id}" )]
171
- public override async Task<IActionResult>DeleteAsync (int id )
171
+ public override async Task<IActionResult>DeleteAsync (int id , CancellationToken cancellationToken )
172
172
{
173
- return await base .DeleteAsync (id );
173
+ return await base .DeleteAsync (id , cancellationToken );
174
174
}
175
175
}
176
176
```
0 commit comments