Skip to content

Commit 341233c

Browse files
authored
Support for asynchronous autopagination (#1947) (#1973)
1 parent 7149d88 commit 341233c

File tree

126 files changed

+1755
-181
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

126 files changed

+1755
-181
lines changed

src/Stripe.net/Services/Accounts/AccountService.cs

+7
Original file line numberDiff line numberDiff line change
@@ -80,6 +80,13 @@ public virtual IEnumerable<Account> ListAutoPaging(AccountListOptions options =
8080
return this.ListEntitiesAutoPaging(options, requestOptions);
8181
}
8282

83+
#if !NET45
84+
public virtual IAsyncEnumerable<Account> ListAutoPagingAsync(AccountListOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default)
85+
{
86+
return this.ListEntitiesAutoPagingAsync(options, requestOptions, cancellationToken);
87+
}
88+
#endif
89+
8390
public virtual Account Reject(string accountId, AccountRejectOptions options, RequestOptions requestOptions = null)
8491
{
8592
return this.Request(HttpMethod.Post, $"{this.InstanceUrl(accountId)}/reject", options, requestOptions);

src/Stripe.net/Services/ApplePayDomains/ApplePayDomainService.cs

+7
Original file line numberDiff line numberDiff line change
@@ -66,5 +66,12 @@ public virtual IEnumerable<ApplePayDomain> ListAutoPaging(ApplePayDomainListOpti
6666
{
6767
return this.ListEntitiesAutoPaging(options, requestOptions);
6868
}
69+
70+
#if !NET45
71+
public virtual IAsyncEnumerable<ApplePayDomain> ListAutoPagingAsync(ApplePayDomainListOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default)
72+
{
73+
return this.ListEntitiesAutoPagingAsync(options, requestOptions, cancellationToken);
74+
}
75+
#endif
6976
}
7077
}

src/Stripe.net/Services/ApplicationFeeRefunds/ApplicationFeeRefundService.cs

+7
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,13 @@ public virtual IEnumerable<ApplicationFeeRefund> ListAutoPaging(string applicati
5858
return this.ListNestedEntitiesAutoPaging(applicationFeeId, options, requestOptions);
5959
}
6060

61+
#if !NET45
62+
public virtual IAsyncEnumerable<ApplicationFeeRefund> ListAutoPagingAsync(string applicationFeeId, ApplicationFeeRefundListOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default)
63+
{
64+
return this.ListNestedEntitiesAutoPagingAsync(applicationFeeId, options, requestOptions, cancellationToken);
65+
}
66+
#endif
67+
6168
public virtual ApplicationFeeRefund Update(string applicationFeeId, string refundId, ApplicationFeeRefundUpdateOptions options, RequestOptions requestOptions = null)
6269
{
6370
return this.UpdateNestedEntity(applicationFeeId, refundId, options, requestOptions);

src/Stripe.net/Services/ApplicationFees/ApplicationFeeService.cs

+7
Original file line numberDiff line numberDiff line change
@@ -45,5 +45,12 @@ public virtual IEnumerable<ApplicationFee> ListAutoPaging(ApplicationFeeListOpti
4545
{
4646
return this.ListEntitiesAutoPaging(options, requestOptions);
4747
}
48+
49+
#if !NET45
50+
public virtual IAsyncEnumerable<ApplicationFee> ListAutoPagingAsync(ApplicationFeeListOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default)
51+
{
52+
return this.ListEntitiesAutoPagingAsync(options, requestOptions, cancellationToken);
53+
}
54+
#endif
4855
}
4956
}

src/Stripe.net/Services/BalanceTransactions/BalanceTransactionService.cs

+7
Original file line numberDiff line numberDiff line change
@@ -45,5 +45,12 @@ public virtual IEnumerable<BalanceTransaction> ListAutoPaging(BalanceTransaction
4545
{
4646
return this.ListEntitiesAutoPaging(options, requestOptions);
4747
}
48+
49+
#if !NET45
50+
public virtual IAsyncEnumerable<BalanceTransaction> ListAutoPagingAsync(BalanceTransactionListOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default)
51+
{
52+
return this.ListEntitiesAutoPagingAsync(options, requestOptions, cancellationToken);
53+
}
54+
#endif
4855
}
4956
}

src/Stripe.net/Services/BankAccounts/BankAccountService.cs

+7
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,13 @@ public virtual IEnumerable<BankAccount> ListAutoPaging(string customerId, BankAc
7070
return this.ListNestedEntitiesAutoPaging(customerId, options ?? new BankAccountListOptions(), requestOptions);
7171
}
7272

73+
#if !NET45
74+
public virtual IAsyncEnumerable<BankAccount> ListAutoPagingAsync(string customerId, BankAccountListOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default)
75+
{
76+
return this.ListNestedEntitiesAutoPagingAsync(customerId, options ?? new BankAccountListOptions(), requestOptions, cancellationToken);
77+
}
78+
#endif
79+
7380
public virtual BankAccount Update(string customerId, string bankAccountId, BankAccountUpdateOptions options, RequestOptions requestOptions = null)
7481
{
7582
return this.UpdateNestedEntity(customerId, bankAccountId, options, requestOptions);

src/Stripe.net/Services/Capabilities/CapabilityService.cs

+7
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,13 @@ public virtual IEnumerable<Capability> ListAutoPaging(string accountId, Capabili
4747
return this.ListNestedEntitiesAutoPaging(accountId, options, requestOptions);
4848
}
4949

50+
#if !NET45
51+
public virtual IAsyncEnumerable<Capability> ListAutoPagingAsync(string accountId, CapabilityListOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default)
52+
{
53+
return this.ListNestedEntitiesAutoPagingAsync(accountId, options, requestOptions, cancellationToken);
54+
}
55+
#endif
56+
5057
public virtual Capability Update(string accountId, string capabilityId, CapabilityUpdateOptions options, RequestOptions requestOptions = null)
5158
{
5259
return this.UpdateNestedEntity(accountId, capabilityId, options, requestOptions);

src/Stripe.net/Services/Cards/CardService.cs

+7
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,13 @@ public virtual IEnumerable<Card> ListAutoPaging(string customerId, CardListOptio
6969
return this.ListNestedEntitiesAutoPaging(customerId, options ?? new CardListOptions(), requestOptions);
7070
}
7171

72+
#if !NET45
73+
public virtual IAsyncEnumerable<Card> ListAutoPagingAsync(string customerId, CardListOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default)
74+
{
75+
return this.ListNestedEntitiesAutoPagingAsync(customerId, options ?? new CardListOptions(), requestOptions, cancellationToken);
76+
}
77+
#endif
78+
7279
public virtual Card Update(string customerId, string cardId, CardUpdateOptions options, RequestOptions requestOptions = null)
7380
{
7481
return this.UpdateNestedEntity(customerId, cardId, options, requestOptions);

src/Stripe.net/Services/Charges/ChargeService.cs

+7
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,13 @@ public virtual IEnumerable<Charge> ListAutoPaging(ChargeListOptions options = nu
6969
return this.ListEntitiesAutoPaging(options, requestOptions);
7070
}
7171

72+
#if !NET45
73+
public virtual IAsyncEnumerable<Charge> ListAutoPagingAsync(ChargeListOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default)
74+
{
75+
return this.ListEntitiesAutoPagingAsync(options, requestOptions, cancellationToken);
76+
}
77+
#endif
78+
7279
public virtual Charge Update(string chargeId, ChargeUpdateOptions options, RequestOptions requestOptions = null)
7380
{
7481
return this.UpdateEntity(chargeId, options, requestOptions);

src/Stripe.net/Services/Checkout/Sessions/SessionService.cs

+7
Original file line numberDiff line numberDiff line change
@@ -58,5 +58,12 @@ public virtual IEnumerable<Session> ListAutoPaging(SessionListOptions options =
5858
{
5959
return this.ListEntitiesAutoPaging(options, requestOptions);
6060
}
61+
62+
#if !NET45
63+
public virtual IAsyncEnumerable<Session> ListAutoPagingAsync(SessionListOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default)
64+
{
65+
return this.ListEntitiesAutoPagingAsync(options, requestOptions, cancellationToken);
66+
}
67+
#endif
6168
}
6269
}

src/Stripe.net/Services/CountrySpecs/CountrySpecService.cs

+7
Original file line numberDiff line numberDiff line change
@@ -44,5 +44,12 @@ public virtual IEnumerable<CountrySpec> ListAutoPaging(CountrySpecListOptions op
4444
{
4545
return this.ListEntitiesAutoPaging(options, requestOptions);
4646
}
47+
48+
#if !NET45
49+
public virtual IAsyncEnumerable<CountrySpec> ListAutoPagingAsync(CountrySpecListOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default)
50+
{
51+
return this.ListEntitiesAutoPagingAsync(options, requestOptions, cancellationToken);
52+
}
53+
#endif
4754
}
4855
}

src/Stripe.net/Services/Coupons/CouponService.cs

+7
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,13 @@ public virtual IEnumerable<Coupon> ListAutoPaging(CouponListOptions options = nu
6868
return this.ListEntitiesAutoPaging(options, requestOptions);
6969
}
7070

71+
#if !NET45
72+
public virtual IAsyncEnumerable<Coupon> ListAutoPagingAsync(CouponListOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default)
73+
{
74+
return this.ListEntitiesAutoPagingAsync(options, requestOptions, cancellationToken);
75+
}
76+
#endif
77+
7178
public virtual Coupon Update(string couponId, CouponUpdateOptions options, RequestOptions requestOptions = null)
7279
{
7380
return this.UpdateEntity(couponId, options, requestOptions);

src/Stripe.net/Services/CreditNotes/CreditNoteService.cs

+21
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,13 @@ public virtual IEnumerable<CreditNote> ListAutoPaging(CreditNoteListOptions opti
5858
return this.ListEntitiesAutoPaging(options, requestOptions);
5959
}
6060

61+
#if !NET45
62+
public virtual IAsyncEnumerable<CreditNote> ListAutoPagingAsync(CreditNoteListOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default)
63+
{
64+
return this.ListEntitiesAutoPagingAsync(options, requestOptions, cancellationToken);
65+
}
66+
#endif
67+
6168
public virtual StripeList<CreditNoteLineItem> ListLineItems(string creditnoteId, CreditNoteListLineItemsOptions options = null, RequestOptions requestOptions = null)
6269
{
6370
return this.Request<StripeList<CreditNoteLineItem>>(HttpMethod.Get, $"{this.InstanceUrl(creditnoteId)}/lines", options, requestOptions);
@@ -73,6 +80,13 @@ public virtual IEnumerable<CreditNoteLineItem> ListLineItemsAutoPaging(string cr
7380
return this.ListRequestAutoPaging<CreditNoteLineItem>($"{this.InstanceUrl(creditnoteId)}/lines", options, requestOptions);
7481
}
7582

83+
#if !NET45
84+
public virtual IAsyncEnumerable<CreditNoteLineItem> ListLineItemsAutoPagingAsync(string creditnoteId, CreditNoteListLineItemsOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default)
85+
{
86+
return this.ListRequestAutoPagingAsync<CreditNoteLineItem>($"{this.InstanceUrl(creditnoteId)}/lines", options, requestOptions, cancellationToken);
87+
}
88+
#endif
89+
7690
public virtual StripeList<CreditNoteLineItem> ListPreviewLineItems(CreditNoteListPreviewLineItemsOptions options = null, RequestOptions requestOptions = null)
7791
{
7892
return this.Request<StripeList<CreditNoteLineItem>>(HttpMethod.Get, $"{this.InstanceUrl("preview")}/lines", options, requestOptions);
@@ -88,6 +102,13 @@ public virtual IEnumerable<CreditNoteLineItem> ListPreviewLineItemsAutoPaging(Cr
88102
return this.ListRequestAutoPaging<CreditNoteLineItem>($"{this.InstanceUrl("preview")}/lines", options, requestOptions);
89103
}
90104

105+
#if !NET45
106+
public virtual IAsyncEnumerable<CreditNoteLineItem> ListPreviewLineItemsAutoPagingAsync(CreditNoteListPreviewLineItemsOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default)
107+
{
108+
return this.ListRequestAutoPagingAsync<CreditNoteLineItem>($"{this.InstanceUrl("preview")}/lines", options, requestOptions, cancellationToken);
109+
}
110+
#endif
111+
91112
public virtual CreditNote Preview(CreditNotePreviewOptions options, RequestOptions requestOptions = null)
92113
{
93114
return this.Request(HttpMethod.Get, $"{this.ClassUrl()}/preview", options, requestOptions);

src/Stripe.net/Services/CustomerBalanceTransactions/CustomerBalanceTransactionService.cs

+7
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,13 @@ public virtual IEnumerable<CustomerBalanceTransaction> ListAutoPaging(string cus
5757
return this.ListNestedEntitiesAutoPaging(customerId, options, requestOptions);
5858
}
5959

60+
#if !NET45
61+
public virtual IAsyncEnumerable<CustomerBalanceTransaction> ListAutoPagingAsync(string customerId, CustomerBalanceTransactionListOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default)
62+
{
63+
return this.ListNestedEntitiesAutoPagingAsync(customerId, options, requestOptions, cancellationToken);
64+
}
65+
#endif
66+
6067
public virtual CustomerBalanceTransaction Update(string customerId, string transactionId, CustomerBalanceTransactionUpdateOptions options, RequestOptions requestOptions = null)
6168
{
6269
return this.UpdateNestedEntity(customerId, transactionId, options, requestOptions);

src/Stripe.net/Services/Customers/CustomerService.cs

+7
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,13 @@ public virtual IEnumerable<Customer> ListAutoPaging(CustomerListOptions options
6969
return this.ListEntitiesAutoPaging(options, requestOptions);
7070
}
7171

72+
#if !NET45
73+
public virtual IAsyncEnumerable<Customer> ListAutoPagingAsync(CustomerListOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default)
74+
{
75+
return this.ListEntitiesAutoPagingAsync(options, requestOptions, cancellationToken);
76+
}
77+
#endif
78+
7279
public virtual Customer Update(string customerId, CustomerUpdateOptions options, RequestOptions requestOptions = null)
7380
{
7481
return this.UpdateEntity(customerId, options, requestOptions);

src/Stripe.net/Services/Disputes/DisputeService.cs

+7
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,13 @@ public virtual IEnumerable<Dispute> ListAutoPaging(DisputeListOptions options =
5858
return this.ListEntitiesAutoPaging(options, requestOptions);
5959
}
6060

61+
#if !NET45
62+
public virtual IAsyncEnumerable<Dispute> ListAutoPagingAsync(DisputeListOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default)
63+
{
64+
return this.ListEntitiesAutoPagingAsync(options, requestOptions, cancellationToken);
65+
}
66+
#endif
67+
6168
public virtual Dispute Update(string disputeId, DisputeUpdateOptions options, RequestOptions requestOptions = null)
6269
{
6370
return this.UpdateEntity(disputeId, options, requestOptions);

src/Stripe.net/Services/Events/EventService.cs

+7
Original file line numberDiff line numberDiff line change
@@ -44,5 +44,12 @@ public virtual IEnumerable<Event> ListAutoPaging(EventListOptions options = null
4444
{
4545
return this.ListEntitiesAutoPaging(options, requestOptions);
4646
}
47+
48+
#if !NET45
49+
public virtual IAsyncEnumerable<Event> ListAutoPagingAsync(EventListOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default)
50+
{
51+
return this.ListEntitiesAutoPagingAsync(options, requestOptions, cancellationToken);
52+
}
53+
#endif
4754
}
4855
}

src/Stripe.net/Services/ExchangeRates/ExchangeRateService.cs

+7
Original file line numberDiff line numberDiff line change
@@ -44,5 +44,12 @@ public virtual IEnumerable<ExchangeRate> ListAutoPaging(ExchangeRateListOptions
4444
{
4545
return this.ListEntitiesAutoPaging(options, requestOptions);
4646
}
47+
48+
#if !NET45
49+
public virtual IAsyncEnumerable<ExchangeRate> ListAutoPagingAsync(ExchangeRateListOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default)
50+
{
51+
return this.ListEntitiesAutoPagingAsync(options, requestOptions, cancellationToken);
52+
}
53+
#endif
4754
}
4855
}

src/Stripe.net/Services/ExternalAccounts/ExternalAccountService.cs

+7
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,13 @@ public virtual IEnumerable<IExternalAccount> ListAutoPaging(string accountId, Ex
6868
return this.ListNestedEntitiesAutoPaging(accountId, options, requestOptions);
6969
}
7070

71+
#if !NET45
72+
public virtual IAsyncEnumerable<IExternalAccount> ListAutoPagingAsync(string accountId, ExternalAccountListOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default)
73+
{
74+
return this.ListNestedEntitiesAutoPagingAsync(accountId, options, requestOptions, cancellationToken);
75+
}
76+
#endif
77+
7178
public virtual IExternalAccount Update(string accountId, string externalAccountId, ExternalAccountUpdateOptions options, RequestOptions requestOptions = null)
7279
{
7380
return this.UpdateNestedEntity(accountId, externalAccountId, options, requestOptions);

src/Stripe.net/Services/FileLinks/FileLinkService.cs

+7
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,13 @@ public virtual IEnumerable<FileLink> ListAutoPaging(FileLinkListOptions options
5757
return this.ListEntitiesAutoPaging(options, requestOptions);
5858
}
5959

60+
#if !NET45
61+
public virtual IAsyncEnumerable<FileLink> ListAutoPagingAsync(FileLinkListOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default)
62+
{
63+
return this.ListEntitiesAutoPagingAsync(options, requestOptions, cancellationToken);
64+
}
65+
#endif
66+
6067
public virtual FileLink Update(string fileLinkId, FileLinkUpdateOptions options, RequestOptions requestOptions = null)
6168
{
6269
return this.UpdateEntity(fileLinkId, options, requestOptions);

src/Stripe.net/Services/Files/FileService.cs

+7
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,13 @@ public virtual IEnumerable<File> ListAutoPaging(FileListOptions options = null,
5858
return this.ListEntitiesAutoPaging(options, requestOptions);
5959
}
6060

61+
#if !NET45
62+
public virtual IAsyncEnumerable<File> ListAutoPagingAsync(FileListOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default)
63+
{
64+
return this.ListEntitiesAutoPagingAsync(options, requestOptions, cancellationToken);
65+
}
66+
#endif
67+
6168
private RequestOptions SetupRequestOptionsForFilesRequest(RequestOptions requestOptions)
6269
{
6370
if (requestOptions == null)

src/Stripe.net/Services/InvoiceItems/InvoiceItemService.cs

+7
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,13 @@ public virtual IEnumerable<InvoiceItem> ListAutoPaging(InvoiceItemListOptions op
6969
return this.ListEntitiesAutoPaging(options, requestOptions);
7070
}
7171

72+
#if !NET45
73+
public virtual IAsyncEnumerable<InvoiceItem> ListAutoPagingAsync(InvoiceItemListOptions options = null, RequestOptions requestOptions = null, CancellationToken cancellationToken = default)
74+
{
75+
return this.ListEntitiesAutoPagingAsync(options, requestOptions, cancellationToken);
76+
}
77+
#endif
78+
7279
public virtual InvoiceItem Update(string invoiceitemId, InvoiceItemUpdateOptions options, RequestOptions requestOptions = null)
7380
{
7481
return this.UpdateEntity(invoiceitemId, options, requestOptions);

0 commit comments

Comments
 (0)