public AddressConsumer(ITypesenseClient client, ILogger <AddressConsumer> logger, IPostgresWriter postgresWriter, IOptions <KafkaSetting> kafkaSetting, IOptions <DatabaseSetting> databaseSetting, IOptions <TypesenseSetting> typesenseSetting)
 {
     _client           = client;
     _logger           = logger;
     _postgresWriter   = postgresWriter;
     _kafkaSetting     = kafkaSetting.Value;
     _databaseSetting  = databaseSetting.Value;
     _typesenseSetting = typesenseSetting.Value;
 }
Exemple #2
0
 public SearchController(ITypesenseClient client, ILogger <SearchController> logger)
 {
     _client = client;
     _logger = logger;
 }
Exemple #3
0
 public GlobalSearchClient(ITypesenseClient typesenseClient, IQueryDispatcher queryDispatcher)
 {
     _typesenseClient = typesenseClient;
     _queryDispatcher = queryDispatcher;
 }
        public SearchQueries(ILogger <SearchQueries> logger, IQueryDispatcher queryDispatcher, ITypesenseClient typesenseClient)
        {
            Description = "GraphQL API for search operations";

            FieldAsync <ListGraphType <GlobalSearchHitType> >(
                name: "globalSearch",
                description: "Search for route network node, adresses etc.",
                arguments: new QueryArguments(
                    new QueryArgument <NonNullGraphType <StringGraphType> > {
                Name = "searchString"
            },
                    new QueryArgument <NonNullGraphType <IntGraphType> > {
                Name = "pageSize"
            }
                    ),
                resolve: async(context) =>
            {
                var searchString = context.GetArgument <string>("searchString");
                var pageSize     = context.GetArgument <int>("pageSize");
                var searchClient = new GlobalSearchClient(typesenseClient, queryDispatcher);
                return(await searchClient.Search(searchString, pageSize));
            }
                );
        }