private Task <FeedResponse <DatabaseProperties> > DatabaseFeedRequestExecutorAsync( int?maxItemCount, string continuationToken, RequestOptions options, object state, CancellationToken cancellationToken) { Debug.Assert(state == null); Uri resourceUri = new Uri(Paths.Databases_Root, UriKind.Relative); return(this.ClientContext.ProcessResourceOperationAsync <FeedResponse <DatabaseProperties> >( resourceUri: resourceUri, resourceType: ResourceType.Database, operationType: OperationType.ReadFeed, requestOptions: options, cosmosContainerCore: null, partitionKey: null, streamPayload: null, requestEnricher: request => { QueryRequestOptions.FillContinuationToken(request, continuationToken); QueryRequestOptions.FillMaxItemCount(request, maxItemCount); }, responseCreator: response => this.ClientContext.ResponseFactory.CreateResultSetQueryResponse <DatabaseProperties>(response), cancellationToken: cancellationToken)); }
private Task <FeedResponse <CosmosContainerSettings> > ContainerFeedRequestExecutorAsync( int?maxItemCount, string continuationToken, RequestOptions options, object state, CancellationToken cancellationToken) { Debug.Assert(state == null); return(this.ClientContext.ProcessResourceOperationAsync <FeedResponse <CosmosContainerSettings> >( resourceUri: this.LinkUri, resourceType: ResourceType.Collection, operationType: OperationType.ReadFeed, requestOptions: options, cosmosContainerCore: null, partitionKey: null, streamPayload: null, requestEnricher: request => { QueryRequestOptions.FillContinuationToken(request, continuationToken); QueryRequestOptions.FillMaxItemCount(request, maxItemCount); }, responseCreator: response => this.ClientContext.ResponseFactory.CreateResultSetQueryResponse <CosmosContainerSettings>(response), cancellationToken: cancellationToken)); }
internal override async Task <QueryResponse> ExecuteItemQueryAsync( Uri resourceUri, ResourceType resourceType, OperationType operationType, string containerResourceId, QueryRequestOptions requestOptions, SqlQuerySpec sqlQuerySpec, string continuationToken, PartitionKeyRangeIdentity partitionKeyRange, bool isContinuationExpected, int pageSize, CancellationToken cancellationToken) { ResponseMessage message = await this.clientContext.ProcessResourceOperationStreamAsync( resourceUri : resourceUri, resourceType : resourceType, operationType : operationType, requestOptions : requestOptions, partitionKey : requestOptions.PartitionKey, cosmosContainerCore : this.cosmosContainerCore, streamPayload : this.clientContext.CosmosSerializer.ToStream <SqlQuerySpec>(sqlQuerySpec), requestEnricher : (cosmosRequestMessage) => { this.PopulatePartitionKeyRangeInfo(cosmosRequestMessage, partitionKeyRange); cosmosRequestMessage.Headers.Add( HttpConstants.HttpHeaders.IsContinuationExpected, isContinuationExpected.ToString()); QueryRequestOptions.FillContinuationToken( cosmosRequestMessage, continuationToken); QueryRequestOptions.FillMaxItemCount( cosmosRequestMessage, pageSize); cosmosRequestMessage.Headers.Add(HttpConstants.HttpHeaders.ContentType, MediaTypes.QueryJson); cosmosRequestMessage.Headers.Add(HttpConstants.HttpHeaders.IsQuery, bool.TrueString); }, cancellationToken : cancellationToken); return(this.GetCosmosElementResponse( requestOptions, resourceType, containerResourceId, message)); }
private Task <CosmosResponseMessage> ContainerStreamFeedRequestExecutorAsync( int?maxItemCount, string continuationToken, RequestOptions requestOptions, object state, CancellationToken cancellationToken) { return(this.ClientContext.ProcessResourceOperationAsStreamAsync( resourceUri: this.database.LinkUri, resourceType: ResourceType.Collection, operationType: OperationType.ReadFeed, cosmosContainerCore: null, partitionKey: null, streamPayload: null, requestOptions: requestOptions, requestEnricher: request => { QueryRequestOptions.FillContinuationToken(request, continuationToken); QueryRequestOptions.FillMaxItemCount(request, maxItemCount); }, cancellationToken: cancellationToken)); }
private Task <CosmosResponseMessage> ConflictsFeedStreamRequestExecutorAsync( int?maxItemCount, string continuationToken, RequestOptions options, object state, CancellationToken cancellationToken) { return(this.clientContext.ProcessResourceOperationAsync <CosmosResponseMessage>( resourceUri: this.container.LinkUri, resourceType: ResourceType.Conflict, operationType: OperationType.ReadFeed, requestOptions: options, requestEnricher: request => { QueryRequestOptions.FillContinuationToken(request, continuationToken); QueryRequestOptions.FillMaxItemCount(request, maxItemCount); }, responseCreator: response => response, cosmosContainerCore: this.container, partitionKey: null, streamPayload: null, cancellationToken: cancellationToken)); }