internal static async Task <T> ProcessResourceOperationAsync <T>( CosmosRequestHandler requestHandler, Uri resourceUri, ResourceType resourceType, OperationType operationType, CosmosRequestOptions requestOptions, CosmosContainerCore cosmosContainerCore, Object partitionKey, Stream streamPayload, Action <CosmosRequestMessage> requestEnricher, Func <CosmosResponseMessage, T> responseCreator, CancellationToken cancellationToken) { if (requestHandler == null) { throw new ArgumentException(nameof(requestHandler)); } if (resourceUri == null) { throw new ArgumentNullException(nameof(resourceUri)); } if (responseCreator == null) { throw new ArgumentNullException(nameof(responseCreator)); } CosmosRequestMessage request = await ExecUtils.GenerateCosmosRequestMessage( resourceUri, resourceType, operationType, requestOptions, cosmosContainerCore, partitionKey, streamPayload, requestEnricher); CosmosResponseMessage response = await requestHandler.SendAsync(request, cancellationToken); return(responseCreator(response)); }
internal static async Task <CosmosResponseMessage> ProcessResourceOperationStreamAsync( CosmosRequestHandler requestHandler, Uri resourceUri, ResourceType resourceType, OperationType operationType, CosmosRequestOptions requestOptions, CosmosContainerCore cosmosContainerCore, Object partitionKey, Stream streamPayload, Action <CosmosRequestMessage> requestEnricher, CancellationToken cancellationToken) { CosmosRequestMessage request = await ExecUtils.GenerateCosmosRequestMessage( resourceUri, resourceType, operationType, requestOptions, cosmosContainerCore, partitionKey, streamPayload, requestEnricher); return(await requestHandler.SendAsync(request, cancellationToken)); }