/// <summary> /// Initializes a new instance of the <see cref="FhirCosmosDocumentQueryFactory"/> class. /// </summary> /// <param name="fhirRequestContextAccessor">The request context accessor</param> /// <param name="logger">The logger.</param> public FhirCosmosDocumentQueryFactory(IFhirRequestContextAccessor fhirRequestContextAccessor, IFhirDocumentQueryLogger logger) { EnsureArg.IsNotNull(logger, nameof(logger)); EnsureArg.IsNotNull(fhirRequestContextAccessor, nameof(fhirRequestContextAccessor)); _logger = logger; _fhirRequestContextAccessor = fhirRequestContextAccessor; }
/// <summary> /// Initializes a new instance of the <see cref="FhirCosmosDocumentQueryFactory"/> class. /// </summary> /// <param name="cosmosResponseProcessor">The cosmos response processor</param> /// <param name="logger">The logger.</param> public FhirCosmosDocumentQueryFactory(ICosmosResponseProcessor cosmosResponseProcessor, IFhirDocumentQueryLogger logger) { EnsureArg.IsNotNull(logger, nameof(logger)); EnsureArg.IsNotNull(cosmosResponseProcessor, nameof(cosmosResponseProcessor)); _cosmosResponseProcessor = cosmosResponseProcessor; _logger = logger; }
/// <summary> /// Initializes a new instance of the <see cref="FhirDocumentQuery{T}"/> class. /// </summary> /// <param name="queryContext">The query context.</param> /// <param name="documentQuery">The document query to execute.</param> /// <param name="fhirRequestContextAccessor">The request accessor</param> /// <param name="logger">The logger.</param> public FhirDocumentQuery( ICosmosQueryContext queryContext, IDocumentQuery <T> documentQuery, IFhirRequestContextAccessor fhirRequestContextAccessor, IFhirDocumentQueryLogger logger) { EnsureArg.IsNotNull(queryContext, nameof(queryContext)); EnsureArg.IsNotNull(documentQuery, nameof(documentQuery)); EnsureArg.IsNotNull(fhirRequestContextAccessor, nameof(fhirRequestContextAccessor)); EnsureArg.IsNotNull(logger, nameof(logger)); _queryContext = queryContext; _documentQuery = documentQuery; _fhirRequestContextAccessor = fhirRequestContextAccessor; _logger = logger; _continuationToken = _queryContext.FeedOptions?.RequestContinuation; }