public async Task <FunctionIndexTransactionHandler <TFunctionMessage> > CreateFunctionHandlerAsync <TFunctionMessage, TSearchDocument>( string indexName, Func <FunctionCall <TFunctionMessage>, TSearchDocument> mappingFunc) where TFunctionMessage : FunctionMessage, new() where TSearchDocument : class, IHasId, new() { var functionIndexer = await _elasticSearchService.CreateFunctionIndexer <TFunctionMessage, TSearchDocument>(indexName, mappingFunc); var functionHandler = new FunctionIndexTransactionHandler <TFunctionMessage>(functionIndexer); return(functionHandler); }