public static string Trace(this Query query)
 {
     AzureQueryLogger.IndentedTextWriter writer = new AzureQueryLogger.IndentedTextWriter((TextWriter)new StringWriter());
     writer.WriteLine("-----------------------");
     AzureQueryLogger.Visit(query, writer);
     writer.WriteLine("-----------------------");
     return writer.ToString();
 }
Beispiel #2
0
 private static void VisitQuery(PhraseQuery query, AzureQueryLogger.IndentedTextWriter writer)
 {
     writer.WriteLine("Slop: {0}", (object)query.Slop);
     foreach (Term term in query.GetTerms())
     {
         AzureQueryLogger.VisitTerm(term, writer);
     }
 }
Beispiel #3
0
 private static void VisitQuery(DisjunctionMaxQuery query, AzureQueryLogger.IndentedTextWriter writer)
 {
     foreach (Query query1 in query)
     {
         writer.WriteLine("Sub query:");
         ++writer.Indent;
         AzureQueryLogger.Visit(query1, writer);
         --writer.Indent;
     }
 }
Beispiel #4
0
 private static void VisitClauses(AzureQueryLogger.IndentedTextWriter writer, SpanQuery[] clauses)
 {
     writer.WriteLine("Clauses:");
     ++writer.Indent;
     foreach (Query query in clauses)
     {
         AzureQueryLogger.Visit(query, writer);
     }
     --writer.Indent;
 }
Beispiel #5
0
 private static void VisitQuery(SpanQuery query, AzureQueryLogger.IndentedTextWriter writer)
 {
     writer.WriteLine("Field: {0}", (object)query.Field);
     if (query is FieldMaskingSpanQuery)
     {
         AzureQueryLogger.VisitQuery((FieldMaskingSpanQuery)query, writer);
     }
     if (query is SpanFirstQuery)
     {
         AzureQueryLogger.VisitQuery((SpanFirstQuery)query, writer);
     }
     if (query is SpanNearQuery)
     {
         AzureQueryLogger.VisitQuery((SpanNearQuery)query, writer);
     }
     if (query is SpanNotQuery)
     {
         AzureQueryLogger.VisitQuery((SpanNotQuery)query, writer);
     }
     if (query is SpanOrQuery)
     {
         AzureQueryLogger.VisitQuery((SpanOrQuery)query, writer);
     }
     if (query is SpanRegexQuery)
     {
         AzureQueryLogger.VisitQuery((SpanRegexQuery)query, writer);
     }
     if (query is SpanTermQuery)
     {
         AzureQueryLogger.VisitQuery((SpanTermQuery)query, writer);
     }
     if (query is PayloadNearQuery)
     {
         AzureQueryLogger.VisitQuery((PayloadNearQuery)query, writer);
     }
     if (query is PayloadTermQuery)
     {
         AzureQueryLogger.VisitQuery((PayloadTermQuery)query, writer);
     }
     if (query is SpanWildcardQuery)
     {
         AzureQueryLogger.VisitQuery((SpanWildcardQuery)query, writer);
     }
     if (query is SpanLastQuery)
     {
         AzureQueryLogger.VisitQuery((SpanLastQuery)query, writer);
     }
     if (!(query is SpanFuzzyQuery))
     {
         return;
     }
     AzureQueryLogger.VisitQuery((SpanFuzzyQuery)query, writer);
 }
Beispiel #6
0
 private static void MultiTermQuery(TermRangeQuery query, AzureQueryLogger.IndentedTextWriter writer)
 {
     writer.WriteLine("Field: {0}", (object)query.Field);
     writer.WriteLine("Collator: {0}", (object)query.Collator);
     writer.WriteLine("IncludesLower: {0}", (query.IncludesLower ? 1 : 0));
     writer.WriteLine("IncludesUpper: {0}", (query.IncludesUpper ? 1 : 0));
     writer.WriteLine("LowerTerm: {0}", (object)query.LowerTerm);
     writer.WriteLine("UpperTerm: {0}", (object)query.UpperTerm);
 }
Beispiel #7
0
 private static void VisitTerm(Term term, string termName, AzureQueryLogger.IndentedTextWriter writer)
 {
     writer.WriteLine("{0}: Field: {1}; Text: {2}", (object)termName, (object)term.Field, (object)term.Text);
 }
Beispiel #8
0
 private static void MultiTermQuery(FuzzyQuery query, AzureQueryLogger.IndentedTextWriter writer)
 {
     writer.WriteLine("MinSimilarity: {0}", (object)query.MinSimilarity);
     writer.WriteLine("PrefixLength: {0}", (object)query.PrefixLength);
     AzureQueryLogger.VisitTerm(query.Term, "Fuzzy Term", writer);
 }
Beispiel #9
0
 private static void MultiTermQuery(RegexQuery query, AzureQueryLogger.IndentedTextWriter writer)
 {
     writer.WriteLine("RegexImplementation: {0}", query.RegexImplementation);
     AzureQueryLogger.VisitTerm(query.Term, "Regex Term", writer);
 }
Beispiel #10
0
 private static void VisitQuery(CustomScoreQuery query, AzureQueryLogger.IndentedTextWriter writer)
 {
     writer.WriteLine("IsStrict: {0}", (query.IsStrict() ? 1 : 0));
     writer.WriteLine("Name: {0}", (object)query.Name());
 }
Beispiel #11
0
 private static void VisitQuery(ConstantScoreQuery query, AzureQueryLogger.IndentedTextWriter writer)
 {
     writer.WriteLine("Filter: {0}", (object)query.Filter);
 }
Beispiel #12
0
 private static void VisitQuery(PayloadNearQuery query, AzureQueryLogger.IndentedTextWriter writer)
 {
     writer.WriteLine("IsInOrder: {0}", (query.IsInOrder ? 1 : 0));
     writer.WriteLine("Slop: {0}", (object)query.Slop);
 }
Beispiel #13
0
 private static void VisitQuery(SpanNearQuery query, AzureQueryLogger.IndentedTextWriter writer)
 {
     writer.WriteLine("IsInOrder: {0}", (query.IsInOrder ? 1 : 0));
     writer.WriteLine("Slop: {0}", (object)query.Slop);
     AzureQueryLogger.VisitClauses(writer, query.GetClauses());
 }