public static async Task <ParallelDocumentQueryExecutionContext> CreateAsync( IDocumentQueryClient client, ResourceType resourceTypeEnum, Type resourceType, Expression expression, FeedOptions feedOptions, string resourceLink, string collectionRid, PartitionedQueryExecutionInfo partitionedQueryExecutionInfo, List <PartitionKeyRange> targetRanges, int initialPageSize, bool isContinuationExpected, bool getLazyFeedResponse, string requestContinuation, CancellationToken token, Guid correlatedActivityId) { Debug.Assert( !partitionedQueryExecutionInfo.QueryInfo.HasOrderBy, "Parallel~Context must not have order by query info."); ParallelDocumentQueryExecutionContext context = new ParallelDocumentQueryExecutionContext( client, resourceTypeEnum, resourceType, expression, feedOptions, resourceLink, partitionedQueryExecutionInfo.QueryInfo.RewrittenQuery, isContinuationExpected, getLazyFeedResponse, collectionRid, correlatedActivityId); await context.InitializeAsync( collectionRid, partitionedQueryExecutionInfo.QueryRanges, targetRanges, initialPageSize, requestContinuation, token); return(context); }
/// <summary> /// Creates a ParallelDocumentQueryExecutionContext /// </summary> /// <param name="constructorParams">The params the construct the base class.</param> /// <param name="initParams">The params to initialize the cross partition context.</param> /// <param name="token">The cancellation token.</param> /// <returns>A task to await on, which in turn returns a ParallelDocumentQueryExecutionContext.</returns> public static async Task <ParallelDocumentQueryExecutionContext> CreateAsync( DocumentQueryExecutionContextBase.InitParams constructorParams, CrossPartitionQueryExecutionContext.CrossPartitionInitParams initParams, CancellationToken token) { Debug.Assert( !initParams.PartitionedQueryExecutionInfo.QueryInfo.HasOrderBy, "Parallel~Context must not have order by query info."); ParallelDocumentQueryExecutionContext context = new ParallelDocumentQueryExecutionContext( constructorParams, initParams.PartitionedQueryExecutionInfo.QueryInfo.RewrittenQuery); await context.InitializeAsync( initParams.CollectionRid, initParams.PartitionKeyRanges, initParams.InitialPageSize, initParams.RequestContinuation, token); return(context); }