public TypedElementSearchIndexerTests() { var supportedSearchParameterDefinitionManager = Substitute.For <ISupportedSearchParameterDefinitionManager>(); var typedElementToSearchValueConverterManager = GetTypeConverterAsync().Result; var referenceToElementResolver = Substitute.For <IReferenceToElementResolver>(); var modelInfoProvider = ModelInfoProvider.Instance; var logger = Substitute.For <ILogger <TypedElementSearchIndexer> >(); _searchIndexer = new TypedElementSearchIndexer(supportedSearchParameterDefinitionManager, typedElementToSearchValueConverterManager, referenceToElementResolver, modelInfoProvider, logger); List <string> baseResourceTypes = new List <string>() { "Resource" }; List <string> targetResourceTypes = new List <string>() { "Coverage", "Observation", "Claim", "Patient" }; statusSearchParameterInfo = new SearchParameterInfo("_status", "_status", (ValueSets.SearchParamType)SearchParamType.Token, new Uri(ResourceStaus), expression: CoverageStausExpression, targetResourceTypes: targetResourceTypes, baseResourceTypes: baseResourceTypes); var searchParameterInfos = new[] { statusSearchParameterInfo, new SearchParameterInfo("_status", "_status", (ValueSets.SearchParamType)SearchParamType.Token, new Uri(ResourceStaus), expression: ObservationStausExpression, targetResourceTypes: targetResourceTypes, baseResourceTypes: baseResourceTypes), new SearchParameterInfo("_use", "_use", (ValueSets.SearchParamType)SearchParamType.Token, new Uri(ResourceUse), expression: ClaimUseExpression, targetResourceTypes: targetResourceTypes, baseResourceTypes: baseResourceTypes), new SearchParameterInfo("name", "name", (ValueSets.SearchParamType)SearchParamType.String, new Uri(ResourceName), expression: PatientNameExpression, targetResourceTypes: targetResourceTypes, baseResourceTypes: baseResourceTypes), }; supportedSearchParameterDefinitionManager.GetSearchParameters(Arg.Any <string>()).Returns(searchParameterInfos); }
public MemberMatchService( Func <IScoped <ISearchService> > searchServiceFactory, IResourceDeserializer resourceDeserializer, ISearchIndexer searchIndexer, ISearchParameterDefinitionManager.SearchableSearchParameterDefinitionManagerResolver searchParameterDefinitionManagerResolver, IExpressionParser expressionParser, ILogger <MemberMatchService> logger) { EnsureArg.IsNotNull(searchServiceFactory, nameof(searchServiceFactory)); EnsureArg.IsNotNull(resourceDeserializer, nameof(resourceDeserializer)); EnsureArg.IsNotNull(searchIndexer, nameof(searchIndexer)); EnsureArg.IsNotNull(searchParameterDefinitionManagerResolver, nameof(searchParameterDefinitionManagerResolver)); EnsureArg.IsNotNull(expressionParser, nameof(expressionParser)); EnsureArg.IsNotNull(logger, nameof(logger)); _searchServiceFactory = searchServiceFactory; _resourceDeserializer = resourceDeserializer; _searchIndexer = searchIndexer; _expressionParser = expressionParser; var searchParameterDefinition = searchParameterDefinitionManagerResolver(); _coverageBeneficiaryParameter = searchParameterDefinition.GetSearchParameter("Coverage", "beneficiary"); _resourceTypeSearchParameter = searchParameterDefinition.GetSearchParameter(ResourceType.Resource.ToString(), SearchParameterNames.ResourceType); _logger = logger; }
/// <summary> /// Initializes a new instance of the <see cref="ResourceWrapperFactory"/> class. /// </summary> /// <param name="rawResourceFactory">The raw resource factory.</param> /// <param name="fhirRequestContextAccessor">The FHIR request context accessor.</param> /// <param name="searchIndexer">The search indexer used to generate search indices.</param> /// <param name="claimsExtractor">The claims extractor used to extract claims.</param> /// <param name="compartmentIndexer">The compartment indexer.</param> /// <param name="searchParameterDefinitionManager"> The search parameter definition manager.</param> /// <param name="resourceDeserializer">Resource deserializer</param> public ResourceWrapperFactory( IRawResourceFactory rawResourceFactory, IFhirRequestContextAccessor fhirRequestContextAccessor, ISearchIndexer searchIndexer, IClaimsExtractor claimsExtractor, ICompartmentIndexer compartmentIndexer, ISearchParameterDefinitionManager searchParameterDefinitionManager, IResourceDeserializer resourceDeserializer) { EnsureArg.IsNotNull(rawResourceFactory, nameof(rawResourceFactory)); EnsureArg.IsNotNull(searchIndexer, nameof(searchIndexer)); EnsureArg.IsNotNull(fhirRequestContextAccessor, nameof(fhirRequestContextAccessor)); EnsureArg.IsNotNull(claimsExtractor, nameof(claimsExtractor)); EnsureArg.IsNotNull(compartmentIndexer, nameof(compartmentIndexer)); EnsureArg.IsNotNull(searchParameterDefinitionManager, nameof(searchParameterDefinitionManager)); EnsureArg.IsNotNull(resourceDeserializer, nameof(resourceDeserializer)); _rawResourceFactory = rawResourceFactory; _searchIndexer = searchIndexer; _fhirRequestContextAccessor = fhirRequestContextAccessor; _claimsExtractor = claimsExtractor; _compartmentIndexer = compartmentIndexer; _searchParameterDefinitionManager = searchParameterDefinitionManager; _resourceDeserializer = resourceDeserializer; }
public SearchIndexerTests() { _indexer = new SearchIndexer( () => SearchParameterFixtureData.SearchDefinitionManager, SearchParameterFixtureData.Manager, new LightweightReferenceToElementResolver(new ReferenceSearchValueParser(new FhirRequestContextAccessor()), ModelInfoProvider.Instance), NullLogger <SearchIndexer> .Instance); }
public IndexerService(StatelessServiceContext context, ISearchIndexer searchIndexer, IOptions <QueueOptions> options) : base(context) { this.searchIndexer = searchIndexer; var storageAccount = CloudStorageAccount.Parse(options.Value.ConnectionString); var queueClient = storageAccount.CreateCloudQueueClient(); queue = queueClient.GetQueueReference(options.Value.SearchIndexQueueName); queue.CreateIfNotExistsAsync().Wait(); }
public ReindexUtilities( Func <IScoped <IFhirDataStore> > fhirDataStoreFactory, ISearchIndexer searchIndexer, ResourceDeserializer deserializer) { EnsureArg.IsNotNull(fhirDataStoreFactory, nameof(fhirDataStoreFactory)); EnsureArg.IsNotNull(searchIndexer, nameof(searchIndexer)); EnsureArg.IsNotNull(deserializer, nameof(deserializer)); _fhirDataStoreFactory = fhirDataStoreFactory; _searchIndexer = searchIndexer; _deserializer = deserializer; }
public PackageIndexingService( IPackageService packages, IPackageStorageService storage, ISearchIndexer search, IOptionsSnapshot <BaGetOptions> options, ILogger <PackageIndexingService> logger) { _packages = packages ?? throw new ArgumentNullException(nameof(packages)); _storage = storage ?? throw new ArgumentNullException(nameof(storage)); _search = search ?? throw new ArgumentNullException(nameof(search)); _options = options ?? throw new ArgumentNullException(nameof(options)); _logger = logger ?? throw new ArgumentNullException(nameof(logger)); }
/// <summary> /// Initializes a new instance of the <see cref="ResourceWrapperWithSearchIndicesFactory"/> class. /// </summary> /// <param name="rawResourceFactory">The raw resource factory.</param> /// <param name="fhirRequestContextAccessor">The FHIR request context accessor.</param> /// <param name="searchIndexer">The search indexer used to generate search indices.</param> /// <param name="claimsIndexer">The claims indexer used to generate claims indices.</param> /// <param name="compartmentIndexer">The compartment indexer.</param> public ResourceWrapperWithSearchIndicesFactory(IRawResourceFactory rawResourceFactory, IFhirRequestContextAccessor fhirRequestContextAccessor, ISearchIndexer searchIndexer, IClaimsIndexer claimsIndexer, ICompartmentIndexer compartmentIndexer) { EnsureArg.IsNotNull(rawResourceFactory, nameof(rawResourceFactory)); EnsureArg.IsNotNull(searchIndexer, nameof(searchIndexer)); EnsureArg.IsNotNull(fhirRequestContextAccessor, nameof(fhirRequestContextAccessor)); EnsureArg.IsNotNull(claimsIndexer, nameof(claimsIndexer)); EnsureArg.IsNotNull(compartmentIndexer, nameof(compartmentIndexer)); _rawResourceFactory = rawResourceFactory; _searchIndexer = searchIndexer; _fhirRequestContextAccessor = fhirRequestContextAccessor; _claimsIndexer = claimsIndexer; _compartmentIndexer = compartmentIndexer; }
public ReindexSingleResourceRequestHandler( IAuthorizationService <DataActions> authorizationService, IFhirDataStore fhirDataStore, ISearchIndexer searchIndexer, IResourceDeserializer deserializer) { EnsureArg.IsNotNull(authorizationService, nameof(authorizationService)); EnsureArg.IsNotNull(fhirDataStore, nameof(fhirDataStore)); EnsureArg.IsNotNull(searchIndexer, nameof(searchIndexer)); EnsureArg.IsNotNull(deserializer, nameof(deserializer)); _authorizationService = authorizationService; _fhirDataStore = fhirDataStore; _searchIndexer = searchIndexer; _resourceDeserializer = deserializer; }
public ReindexSingleResourceRequestHandlerTests() { _authorizationService = Substitute.For <IFhirAuthorizationService>(); _fhirDataStore = Substitute.For <IFhirDataStore>(); _searchIndexer = Substitute.For <ISearchIndexer>(); _resourceDeserializer = Substitute.For <IResourceDeserializer>(); _cancellationToken = CancellationToken.None; _authorizationService.CheckAccess(Arg.Is(DataActions.Reindex)).Returns(DataActions.Reindex); _reindexHandler = new ReindexSingleResourceRequestHandler( _authorizationService, _fhirDataStore, _searchIndexer, _resourceDeserializer); }
public ResourceWrapperFactoryTests() { var serializer = new FhirJsonSerializer(); _rawResourceFactory = new RawResourceFactory(serializer); var dummyRequestContext = new FhirRequestContext( "POST", "https://localhost/Patient", "https://localhost/", Guid.NewGuid().ToString(), new Dictionary <string, StringValues>(), new Dictionary <string, StringValues>()); _fhirRequestContextAccessor = Substitute.For <RequestContextAccessor <IFhirRequestContext> >(); _fhirRequestContextAccessor.RequestContext.Returns(dummyRequestContext); _claimsExtractor = Substitute.For <IClaimsExtractor>(); _compartmentIndexer = Substitute.For <ICompartmentIndexer>(); _searchIndexer = Substitute.For <ISearchIndexer>(); _searchParameterDefinitionManager = Substitute.For <ISearchParameterDefinitionManager>(); _searchParameterDefinitionManager.GetSearchParameterHashForResourceType(Arg.Any <string>()).Returns("hash"); _resourceWrapperFactory = new ResourceWrapperFactory( _rawResourceFactory, _fhirRequestContextAccessor, _searchIndexer, _claimsExtractor, _compartmentIndexer, _searchParameterDefinitionManager, Deserializers.ResourceDeserializer); _nameSearchParameterInfo = new SearchParameterInfo("name", "name", ValueSets.SearchParamType.String, new Uri("https://localhost/searchParameter/name")) { SortStatus = SortParameterStatus.Enabled }; _addressSearchParameterInfo = new SearchParameterInfo("address-city", "address-city", ValueSets.SearchParamType.String, new Uri("https://localhost/searchParameter/address-city")) { SortStatus = SortParameterStatus.Enabled }; _ageSearchParameterInfo = new SearchParameterInfo("age", "age", ValueSets.SearchParamType.Number, new Uri("https://localhost/searchParameter/age")) { SortStatus = SortParameterStatus.Supported }; }
protected async Task CreateIndex() { ISearchIndexer indexer = null; try { indexer = GetSearchIndexer(); } catch (Exception ex) { Console.WriteLine("Failed to get indexer..." + ex.Message); } if (indexer != null) { await CreateIndex(indexer); } }
public ReindexUtilities( Func <IScoped <IFhirDataStore> > fhirDataStoreFactory, ISearchIndexer searchIndexer, ResourceDeserializer deserializer, ISupportedSearchParameterDefinitionManager searchParameterDefinitionManager, ISearchParameterRegistry searchParameterRegistry) { EnsureArg.IsNotNull(fhirDataStoreFactory, nameof(fhirDataStoreFactory)); EnsureArg.IsNotNull(searchIndexer, nameof(searchIndexer)); EnsureArg.IsNotNull(deserializer, nameof(deserializer)); EnsureArg.IsNotNull(searchParameterDefinitionManager, nameof(searchParameterDefinitionManager)); EnsureArg.IsNotNull(searchParameterRegistry, nameof(searchParameterRegistry)); _fhirDataStoreFactory = fhirDataStoreFactory; _searchIndexer = searchIndexer; _deserializer = deserializer; _searchParameterDefinitionManager = searchParameterDefinitionManager; _searchParameterRegistry = searchParameterRegistry; }
public ReindexSingleResourceRequestHandlerTests() { _authorizationService = Substitute.For <IAuthorizationService <DataActions> >(); _fhirDataStore = Substitute.For <IFhirDataStore>(); _searchIndexer = Substitute.For <ISearchIndexer>(); _resourceDeserializer = Substitute.For <IResourceDeserializer>(); _cancellationToken = CancellationToken.None; _authorizationService.CheckAccess(Arg.Is(DataActions.Reindex), Arg.Any <CancellationToken>()).Returns(DataActions.Reindex); var searchParameterOperations = Substitute.For <ISearchParameterOperations>(); var searchParameterDefinitionManager = Substitute.For <ISearchParameterDefinitionManager>(); _reindexHandler = new ReindexSingleResourceRequestHandler( _authorizationService, _fhirDataStore, _searchIndexer, _resourceDeserializer, searchParameterOperations, searchParameterDefinitionManager); }
public UpdateAccommodationCommandHandler(ISearchIndexer searchIndexer, IConfiguration configuration) { this.searchIndexer = searchIndexer; this.configuration = configuration; }
public RemoveAccommodationCommandHandler(ISearchIndexer searchIndexer) { this.searchIndexer = searchIndexer; }
public SearchService(ISearchIndexer indexer) { _indexer = indexer; }
public FileEventHandler(IFileService fileService, ISearchIndexer indexer, IEnumerable <ISearchCrawler> crawlers) { _fileService = fileService; _indexer = indexer; _crawlers = crawlers.ToArray(); }
public UpdateAccommodationCommandHandler(ISearchIndexer searchIndexer, IApiClientFactory <IBookFastFacilityAPI> apiClientFactory) { this.searchIndexer = searchIndexer; this.apiClientFactory = apiClientFactory; }
public DeleteActiveUserHandler(ISearchIndexerFactory searchIndexerFactory) { _searchIndexer = searchIndexerFactory.GetSearchIndexer("activeusers"); }
private static async Task TestIndexer(ISearchIndexer indexer) {
public AccommodationService(IAccommodationDataSource accommodationDataSource, IFacilityService facilityService, ISearchIndexer searchIndexer) { this.accommodationDataSource = accommodationDataSource; this.facilityService = facilityService; this.searchIndexer = searchIndexer; }
protected virtual async Task CreateIndex(ISearchIndexer indexer) { throw new NotImplementedException("CreateIndex(ISearchIndexer indexer) needs to be implemented."); }
public IndexSearchDataController(ISearchIndexer indexer, IIndexedSearchService searchService) { _indexer = indexer; _searchService = searchService; }