Esempio n. 1
0
        public ElasticQueryParserConfiguration UseFieldResolver(QueryFieldResolver resolver, int priority = 10)
        {
            FieldResolver = resolver;
            ReplaceVisitor <FieldResolverQueryVisitor>(new FieldResolverQueryVisitor(resolver), priority);

            return(this);
        }
Esempio n. 2
0
        public static T SetFieldResolver <T>(this T context, QueryFieldResolver resolver) where T : IQueryVisitorContext
        {
            if (!(context is IQueryVisitorContextWithFieldResolver resolverContext))
            {
                throw new ArgumentException("Context must be of type IQueryVisitorContextWithFieldResolver", nameof(context));
            }

            resolverContext.FieldResolver = resolver;

            return(context);
        }
Esempio n. 3
0
 public FieldResolverQueryBuilder(QueryFieldResolver aliasMap)
 {
     _aliasMap = aliasMap;
 }
 public static IQueryNode Run(IQueryNode node, QueryFieldResolver resolver, IQueryVisitorContextWithFieldResolver context = null)
 {
     return(RunAsync(node, resolver, context).GetAwaiter().GetResult());
 }
 public static Task <IQueryNode> RunAsync(IQueryNode node, QueryFieldResolver resolver, IQueryVisitorContextWithFieldResolver context = null)
 {
     return(new FieldResolverQueryVisitor().AcceptAsync(node, context ?? new QueryVisitorContextWithFieldResolver {
         FieldResolver = resolver
     }));
 }
 public FieldResolverQueryVisitor(QueryFieldResolver globalResolver = null)
 {
     _globalResolver = globalResolver;
 }
Esempio n. 7
0
 public static T QueryFieldResolver <T>(this T options, QueryFieldResolver rootAliasResolver) where T : ICommandOptions
 {
     options.Values.Set(QueryFieldResolverKey, rootAliasResolver);
     return(options);
 }
 public void UseAliases(QueryFieldResolver aliasMap)
 {
     Unregister <ExpressionQueryBuilder>();
     Register(new FieldResolverQueryBuilder(aliasMap));
 }