Exemple #1
0
 public SpanController(ISpanProducer spanProducer, ISpanStorage spanStorage, ISpanQuery spanQuery, IMapper mapper)
 {
     _spanProducer = spanProducer;
     _spanStorage  = spanStorage;
     _spanQuery    = spanQuery;
     _mapper       = mapper;
 }
 internal static bool IsConditionless(ISpanQuery q) => new[]
 {
     q.SpanTerm as IQuery,
     q.SpanFirst,
     q.SpanNear,
     q.SpanOr,
     q.SpanNot,
     q.SpanMultiTerm
 }.All(sq => sq == null || sq.Conditionless);
Exemple #3
0
 private static void Accept(IQueryVisitor visitor, ISpanQuery query, VisitorScope scope = VisitorScope.Span)
 {
     if (query == null)
     {
         return;
     }
     visitor.Scope = scope;
     query.Accept(visitor);
 }
Exemple #4
0
        public void Walk(ISpanQuery qd, IQueryVisitor visitor)
        {
            VisitSpanSubQuery(qd.SpanFirst, visitor, (v, d) =>
            {
                v.Visit(d);
                Accept(visitor, d.Match);
            });
            VisitSpanSubQuery(qd.SpanNear, visitor, (v, d) =>
            {
                v.Visit(d);
                foreach (var q in d.Clauses ?? Enumerable.Empty <ISpanQuery>())
                {
                    Accept(visitor, q);
                }
            });
            VisitSpanSubQuery(qd.SpanNot, visitor, (v, d) =>
            {
                v.Visit(d);
                Accept(visitor, d.Include);
                Accept(visitor, d.Exclude);
            });

            VisitSpanSubQuery(qd.SpanOr, visitor, (v, d) =>
            {
                v.Visit(d);
                foreach (var q in d.Clauses ?? Enumerable.Empty <ISpanQuery>())
                {
                    Accept(visitor, q);
                }
            });

            VisitSpanSubQuery(qd.SpanTerm, visitor, (v, d) => v.Visit(d));
            VisitSpanSubQuery(qd.SpanMultiTerm, visitor, (v, d) =>
            {
                v.Visit(d);
                Accept(visitor, d.Match);
            });
            VisitSpanSubQuery(qd.SpanContaining, visitor, (v, d) =>
            {
                v.Visit(d);
                Accept(visitor, d.Big);
                Accept(visitor, d.Little);
            });
            VisitSpanSubQuery(qd.SpanWithin, visitor, (v, d) =>
            {
                v.Visit(d);
                Accept(visitor, d.Big);
                Accept(visitor, d.Little);
            });
        }
 public virtual void Visit(ISpanQuery query) => Write("span");
 public SpanFirstQuery(ISpanQuery spanQuery, int end)
 {
     _spanQuery = spanQuery;
     _end       = end;
 }
		public void Visit(ISpanQuery query)=> Write("span");
Exemple #8
0
 public TraceController(ISpanQuery spanQuery, IMapper mapper)
 {
     _spanQuery = spanQuery;
     _mapper    = mapper;
 }
Exemple #9
0
 public StatisticController(ISpanQuery spanQuery, IMapper mapper)
 {
     _spanQuery = spanQuery;
     _mapper    = mapper;
 }
		public SpanFirstQuery(ISpanQuery spanQuery, int end)
		{
			_spanQuery = spanQuery;
			_end = end;
		}
Exemple #11
0
 public DependencyController(ISpanQuery spanQuery)
 {
     _spanQuery = spanQuery;
 }
		public virtual void Visit(ISpanQuery query) { }
Exemple #13
0
 /// <summary>
 /// Removes matches which overlap with another span query. The span not query maps to Lucene SpanNotQuery.
 /// The include and exclude clauses can be any span type query. The include clause is the span query whose matches are filtered,
 /// and the exclude clause is the span query whose matches must not overlap those returned.
 ///
 /// In the above example all documents with the term hoya are filtered except the ones that have la preceeding them.
 /// </summary>
 public SpanNotQuery(ISpanQuery include, ISpanQuery exclude)
 {
     _include = include;
     _exclude = exclude;
 }
 public Task <IEnumerable <string> > Get([FromServices] ISpanQuery spanQuery)
 {
     return(spanQuery.GetServices());
 }
 public virtual void Visit(ISpanQuery query)
 {
 }
Exemple #16
0
 public SpanDetailController(ISpanQuery spanQuery, IMapper mapper)
 {
     _spanQuery = spanQuery;
     _mapper    = mapper;
 }
 /// <summary>
 /// Removes matches which overlap with another span query. The span not query maps to Lucene SpanNotQuery.
 /// The include and exclude clauses can be any span type query. The include clause is the span query whose matches are filtered, 
 /// and the exclude clause is the span query whose matches must not overlap those returned.
 /// 
 /// In the above example all documents with the term hoya are filtered except the ones that have la preceeding them.
 /// </summary>
 public SpanNotQuery(ISpanQuery include, ISpanQuery exclude)
 {
     _include = include;
     _exclude = exclude;
 }