As the ForceClient functions use async it would be good to pass a CancellationToken so any long running requests can be cancelled. The CancellationToken can be passed through to the ultimate calls on the HttpClient (e.g. HttpClient.PostAsync()).
For example, when running ForceClient functions from Azure Functions a CancellationToken is automatically provided by the infrastructure. If the Azure Functions are shut down or time out then a cancellation is requested by the infrastructure. Hopefully the HttpClient can then gracefully handle cancelling any requests.
For example ForceClient.RunJobAndPollAsync:
public async Task<List<BatchResultList>> RunJobAndPollAsync<T>(string objectName, BulkConstants.OperationType operationType, IEnumerable<ISObjectList<T>> recordsLists, CancellationToken cancellationToken = default(CancellationToken))
As the
ForceClientfunctions useasyncit would be good to pass aCancellationTokenso any long running requests can be cancelled. TheCancellationTokencan be passed through to the ultimate calls on theHttpClient(e.g.HttpClient.PostAsync()).For example, when running
ForceClientfunctions from Azure Functions aCancellationTokenis automatically provided by the infrastructure. If the Azure Functions are shut down or time out then a cancellation is requested by the infrastructure. Hopefully theHttpClientcan then gracefully handle cancelling any requests.For example ForceClient.RunJobAndPollAsync:
public async Task<List<BatchResultList>> RunJobAndPollAsync<T>(string objectName, BulkConstants.OperationType operationType, IEnumerable<ISObjectList<T>> recordsLists, CancellationToken cancellationToken = default(CancellationToken))