Skip to content

Commit ee426c8

Browse files
committed
Add CancellationToken support in async methods
Async methods in the GraphCursorPager and GraphCursorQueryExecute classes have been updated to support CancellationToken.
1 parent fff3d17 commit ee426c8

File tree

2 files changed

+10
-11
lines changed

2 files changed

+10
-11
lines changed

src/Linq2GraphQL.Client/GraphCursorPager.cs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,23 +21,23 @@ private GraphCursorPager<T, TResult> IncludeT<TProperty>(Expression<Func<T, TPro
2121
return this;
2222
}
2323

24-
private async Task<TResult> ExecutePagerAsync()
24+
private async Task<TResult> ExecutePagerAsync(CancellationToken cancellationToken = default)
2525
{
26-
var baseType = await query.ExecuteBaseAsync();
26+
var baseType = await query.ExecuteBaseAsync(cancellationToken);
2727
return query.ConvertResult(baseType);
2828
}
2929

30-
public async Task<TResult> NextPageAsync()
30+
public async Task<TResult> NextPageAsync(CancellationToken cancellationToken = default)
3131
{
3232
query.QueryNode.SetArgumentValue("after", query.BaseResult?.PageInfo?.EndCursor);
3333
query.QueryNode.SetArgumentValue("before", null);
34-
return await ExecutePagerAsync();
34+
return await ExecutePagerAsync(cancellationToken);
3535
}
3636

37-
public async Task<TResult> PreviousPageAsync()
37+
public async Task<TResult> PreviousPageAsync(CancellationToken cancellationToken = default)
3838
{
3939
query.QueryNode.SetArgumentValue("after", null);
4040
query.QueryNode.SetArgumentValue("before", query.BaseResult?.PageInfo?.EndCursor);
41-
return await ExecutePagerAsync();
41+
return await ExecutePagerAsync(cancellationToken);
4242
}
4343
}

src/Linq2GraphQL.Client/GraphQueryExecute.cs

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,10 @@
33

44
namespace Linq2GraphQL.Client;
55

6-
76
public class GraphCursorQueryExecute<T, TResult> : GraphQueryExecute<T, TResult> where T : ICursorPaging
87
{
9-
public GraphCursorQueryExecute(GraphClient client, OperationType operationType, QueryNode queryNode, Expression<Func<T, TResult>> selector) : base(client, operationType, queryNode, selector)
10-
{ }
8+
public GraphCursorQueryExecute(GraphClient client, OperationType operationType, QueryNode queryNode,
9+
Expression<Func<T, TResult>> selector) : base(client, operationType, queryNode, selector) { }
1110

1211
public GraphCursorPager<T, TResult> AsPager()
1312
{
@@ -24,13 +23,13 @@ public GraphQueryExecute(GraphClient client, OperationType operationType, QueryN
2423

2524
public async Task<T> ExecuteBaseAsync(CancellationToken cancellationToken = default)
2625
{
27-
BaseResult = await queryExecutor.ExecuteRequestAsync(QueryNode.Name, await GetRequestAsync(), cancellationToken);
26+
BaseResult =
27+
await queryExecutor.ExecuteRequestAsync(QueryNode.Name, await GetRequestAsync(), cancellationToken);
2828
return BaseResult;
2929
}
3030

3131
public async Task<TResult> ExecuteAsync(CancellationToken cancellationToken = default)
3232
{
3333
return ConvertResult(await ExecuteBaseAsync(cancellationToken));
3434
}
35-
3635
}

0 commit comments

Comments
 (0)