public async Task <FunctionIndexTransactionHandler <TFunctionMessage> > CreateFunctionHandlerAsync <TFunctionMessage, TSearchDocument>(
            Index index, IFunctionMessageToSearchDocumentMapper <TFunctionMessage, TSearchDocument> mapper)
            where TFunctionMessage : FunctionMessage, new()
            where TSearchDocument : class, new()
        {
            var functionIndexer = await AzureSearchService.CreateFunctionIndexer <TFunctionMessage, TSearchDocument>(index, mapper);

            var functionHandler = new FunctionIndexTransactionHandler <TFunctionMessage>(functionIndexer);

            return(functionHandler);
        }
Exemple #2
0
        public async Task <FunctionIndexTransactionHandler <TFunctionMessage> > CreateFunctionHandlerAsync <TFunctionMessage, TSearchDocument>(
            string indexName, IFunctionMessageToSearchDocumentMapper <TFunctionMessage, TSearchDocument> mapper)
            where TFunctionMessage : FunctionMessage, new()
            where TSearchDocument : class, IHasId, new()
        {
            var functionIndexer = await _elasticSearchService.CreateFunctionIndexer <TFunctionMessage, TSearchDocument>(indexName, mapper);

            var functionHandler = new FunctionIndexTransactionHandler <TFunctionMessage>(functionIndexer);

            return(functionHandler);
        }
Exemple #3
0
 public AzureFunctionIndexer(Index index, ISearchIndexClient indexClient, IFunctionMessageToSearchDocumentMapper <TFunctionMessage, TSearchDocument> mapper) : base(index, indexClient)
 {
     _mapper = mapper;
 }
        public async Task <IFunctionIndexer <TFunctionMessage> > CreateFunctionIndexer <TFunctionMessage, TSearchDocument>(Index index, IFunctionMessageToSearchDocumentMapper <TFunctionMessage, TSearchDocument> mapper)
            where TFunctionMessage : FunctionMessage, new()
            where TSearchDocument : class, new()
        {
            index = await GetOrCreateAzureIndex(index);

            return(new AzureFunctionIndexer <TFunctionMessage, TSearchDocument>(index, GetOrCreateIndexClient(index.Name), mapper));
        }
        public async Task <IFunctionIndexer <TFunctionMessage> > CreateFunctionIndexer <TFunctionMessage, TSearchDocument>(string indexName, IFunctionMessageToSearchDocumentMapper <TFunctionMessage, TSearchDocument> mapper)
            where TFunctionMessage : FunctionMessage, new()
            where TSearchDocument : class, IHasId, new()
        {
            await CreateIfNotExists(indexName);

            var indexer =
                new ElasticFunctionIndexer <TFunctionMessage, TSearchDocument>(_elasticClient, indexName, mapper);

            return(indexer);
        }
Exemple #6
0
 public ElasticFunctionIndexer(IElasticClient client, string indexName, IFunctionMessageToSearchDocumentMapper <TFunctionMessage, TSearchDocument> mapper) : base(client, indexName)
 {
     this._mapper = mapper;
 }