/// <summary>
        /// Initializes a new instance of the <see cref="CosmosDocumentQuery{T}"/> class.
        /// </summary>
        /// <param name="queryContext">The query context.</param>
        /// <param name="documentQuery">The document query to execute.</param>
        /// <param name="logger">The logger.</param>
        public CosmosDocumentQuery(
            ICosmosQueryContext queryContext,
            IDocumentQuery <T> documentQuery,
            ICosmosDocumentQueryLogger logger)
        {
            EnsureArg.IsNotNull(queryContext, nameof(queryContext));
            EnsureArg.IsNotNull(documentQuery, nameof(documentQuery));
            EnsureArg.IsNotNull(logger, nameof(logger));

            _queryContext  = queryContext;
            _documentQuery = documentQuery;
            _logger        = logger;

            _continuationToken = _queryContext.FeedOptions?.RequestContinuation;
        }
        /// <summary>
        /// Initializes a new instance of the <see cref="CosmosDocumentQueryFactory"/> class.
        /// </summary>
        /// <param name="logger">The logger.</param>
        public CosmosDocumentQueryFactory(ICosmosDocumentQueryLogger logger)
        {
            EnsureArg.IsNotNull(logger, nameof(logger));

            _logger = logger;
        }