Lucene.Net.QueryParser.Classic.QueryParserBase refactor: de-nested the Operator [Flags] enum from QueryParserBase to make the usage syntax shorter
Project: http://git-wip-us.apache.org/repos/asf/lucenenet/repo Commit: http://git-wip-us.apache.org/repos/asf/lucenenet/commit/3b5b9cc7 Tree: http://git-wip-us.apache.org/repos/asf/lucenenet/tree/3b5b9cc7 Diff: http://git-wip-us.apache.org/repos/asf/lucenenet/diff/3b5b9cc7 Branch: refs/heads/api-work Commit: 3b5b9cc79f1851915fd7d636baefeaac29c33a00 Parents: 8e6439d Author: Shad Storhaug <[email protected]> Authored: Mon Mar 6 10:43:17 2017 +0700 Committer: Shad Storhaug <[email protected]> Committed: Mon Mar 6 18:08:07 2017 +0700 ---------------------------------------------------------------------- .../Classic/QueryParserBase.cs | 31 ++++++++++---------- .../Classic/TestMultiFieldQueryParser.cs | 2 +- .../Classic/TestQueryParser.cs | 16 +++++----- 3 files changed, 25 insertions(+), 24 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/lucenenet/blob/3b5b9cc7/src/Lucene.Net.QueryParser/Classic/QueryParserBase.cs ---------------------------------------------------------------------- diff --git a/src/Lucene.Net.QueryParser/Classic/QueryParserBase.cs b/src/Lucene.Net.QueryParser/Classic/QueryParserBase.cs index 0779bf6..712dcf2 100644 --- a/src/Lucene.Net.QueryParser/Classic/QueryParserBase.cs +++ b/src/Lucene.Net.QueryParser/Classic/QueryParserBase.cs @@ -31,6 +31,19 @@ namespace Lucene.Net.QueryParsers.Classic * limitations under the License. */ + // LUCENENET specific: In Java, this was part of the QueryParser class, + // but it has been de-nested to make usage syntax shorter. + + /// <summary> + /// The default operator for parsing queries. + /// Use <see cref="QueryParserBase.DefaultOperator"/> to change it. + /// </summary> + public enum Operator + { + OR, + AND + } + /// <summary> /// This class is overridden by <see cref="QueryParser"/>. /// </summary> @@ -54,11 +67,11 @@ namespace Lucene.Net.QueryParsers.Classic // the nested class: /// <summary> - /// Alternative form of <see cref="QueryParserBase.Operator.AND"/> + /// Alternative form of <see cref="Operator.AND"/> /// </summary> public const Operator AND_OPERATOR = Operator.AND; /// <summary> - /// Alternative form of <see cref="QueryParserBase.Operator.OR"/> + /// Alternative form of <see cref="Operator.OR"/> /// </summary> public const Operator OR_OPERATOR = Operator.OR; @@ -68,19 +81,7 @@ namespace Lucene.Net.QueryParsers.Classic //Operator operator_Renamed = OR_OPERATOR; - // Note: In Java, this was part of the QueryParser class. - // However, in .NET we need to put it here for the constants - // defined above. - - /// <summary> - /// The default operator for parsing queries. - /// Use <see cref="QueryParserBase.DefaultOperator"/> to change it. - /// </summary> - public enum Operator - { - OR, - AND - } + //bool lowercaseExpandedTerms = true; //MultiTermQuery.RewriteMethod multiTermRewriteMethod = MultiTermQuery.CONSTANT_SCORE_AUTO_REWRITE_DEFAULT; http://git-wip-us.apache.org/repos/asf/lucenenet/blob/3b5b9cc7/src/Lucene.Net.Tests.QueryParser/Classic/TestMultiFieldQueryParser.cs ---------------------------------------------------------------------- diff --git a/src/Lucene.Net.Tests.QueryParser/Classic/TestMultiFieldQueryParser.cs b/src/Lucene.Net.Tests.QueryParser/Classic/TestMultiFieldQueryParser.cs index 437841d..8d66f19 100644 --- a/src/Lucene.Net.Tests.QueryParser/Classic/TestMultiFieldQueryParser.cs +++ b/src/Lucene.Net.Tests.QueryParser/Classic/TestMultiFieldQueryParser.cs @@ -321,7 +321,7 @@ namespace Lucene.Net.QueryParsers.Classic MultiFieldQueryParser mfqp = new MultiFieldQueryParser(TEST_VERSION_CURRENT, new string[] { "body" }, analyzer); - mfqp.DefaultOperator = QueryParser.Operator.AND; + mfqp.DefaultOperator = Operator.AND; Query q = mfqp.Parse("the footest"); using (IndexReader ir = DirectoryReader.Open(ramDir)) { http://git-wip-us.apache.org/repos/asf/lucenenet/blob/3b5b9cc7/src/Lucene.Net.Tests.QueryParser/Classic/TestQueryParser.cs ---------------------------------------------------------------------- diff --git a/src/Lucene.Net.Tests.QueryParser/Classic/TestQueryParser.cs b/src/Lucene.Net.Tests.QueryParser/Classic/TestQueryParser.cs index ab63341..4f4924d 100644 --- a/src/Lucene.Net.Tests.QueryParser/Classic/TestQueryParser.cs +++ b/src/Lucene.Net.Tests.QueryParser/Classic/TestQueryParser.cs @@ -86,14 +86,14 @@ namespace Lucene.Net.QueryParsers.Classic { Debug.Assert(cqpC is QueryParser); QueryParser qp = (QueryParser)cqpC; - qp.DefaultOperator = QueryParserBase.Operator.OR; + qp.DefaultOperator = Operator.OR; } public override void SetDefaultOperatorAND(ICommonQueryParserConfiguration cqpC) { Debug.Assert(cqpC is QueryParser); QueryParser qp = (QueryParser)cqpC; - qp.DefaultOperator = QueryParserBase.Operator.AND; + qp.DefaultOperator = Operator.AND; } public override void SetAnalyzeRangeTerms(ICommonQueryParserConfiguration cqpC, bool value) @@ -363,7 +363,7 @@ namespace Lucene.Net.QueryParsers.Classic QueryParser qp = new QueryParser(TEST_VERSION_CURRENT, "field", new MockSynonymAnalyzer()); assertEquals(expected, qp.Parse("dogs")); assertEquals(expected, qp.Parse("\"dogs\"")); - qp.DefaultOperator = (QueryParserBase.Operator.AND); + qp.DefaultOperator = (Operator.AND); assertEquals(expected, qp.Parse("dogs")); assertEquals(expected, qp.Parse("\"dogs\"")); expected.Boost = (2.0f); @@ -382,7 +382,7 @@ namespace Lucene.Net.QueryParsers.Classic expected.Add(new Index.Term[] { new Index.Term("field", "dogs"), new Index.Term("field", "dog") }); QueryParser qp = new QueryParser(TEST_VERSION_CURRENT, "field", new MockSynonymAnalyzer()); assertEquals(expected, qp.Parse("\"old dogs\"")); - qp.DefaultOperator = (QueryParserBase.Operator.AND); + qp.DefaultOperator = (Operator.AND); assertEquals(expected, qp.Parse("\"old dogs\"")); expected.Boost = (2.0f); assertEquals(expected, qp.Parse("\"old dogs\"^2")); @@ -449,7 +449,7 @@ namespace Lucene.Net.QueryParsers.Classic expected.Add(new TermQuery(new Index.Term("field", "å")), Occur.SHOULD); QueryParser qp = new QueryParser(TEST_VERSION_CURRENT, "field", new MockCJKSynonymAnalyzer()); assertEquals(expected, qp.Parse("å½")); - qp.DefaultOperator = (QueryParserBase.Operator.AND); + qp.DefaultOperator = (Operator.AND); assertEquals(expected, qp.Parse("å½")); expected.Boost = (2.0f); assertEquals(expected, qp.Parse("å½^2")); @@ -508,7 +508,7 @@ namespace Lucene.Net.QueryParsers.Classic inner.Add(new TermQuery(new Index.Term("field", "å")), Occur.SHOULD); expected.Add(inner, Occur.MUST); QueryParser qp = new QueryParser(TEST_VERSION_CURRENT, "field", new MockCJKSynonymAnalyzer()); - qp.DefaultOperator = (QueryParserBase.Operator.AND); + qp.DefaultOperator = (Operator.AND); assertEquals(expected, qp.Parse("ä¸å½")); expected.Boost = (2.0f); assertEquals(expected, qp.Parse("ä¸å½^2")); @@ -531,7 +531,7 @@ namespace Lucene.Net.QueryParsers.Classic inner2.Add(new TermQuery(new Index.Term("field", "å")), Occur.SHOULD); expected.Add(inner2, Occur.MUST); QueryParser qp = new QueryParser(TEST_VERSION_CURRENT, "field", new MockCJKSynonymAnalyzer()); - qp.DefaultOperator = (QueryParserBase.Operator.AND); + qp.DefaultOperator = (Operator.AND); assertEquals(expected, qp.Parse("ä¸å½å½")); expected.Boost = (2.0f); assertEquals(expected, qp.Parse("ä¸å½å½^2")); @@ -544,7 +544,7 @@ namespace Lucene.Net.QueryParsers.Classic expected.Add(new Index.Term("field", "ä¸")); expected.Add(new Index.Term[] { new Index.Term("field", "å½"), new Index.Term("field", "å") }); QueryParser qp = new QueryParser(TEST_VERSION_CURRENT, "field", new MockCJKSynonymAnalyzer()); - qp.DefaultOperator = (QueryParserBase.Operator.AND); + qp.DefaultOperator = (Operator.AND); assertEquals(expected, qp.Parse("\"ä¸å½\"")); expected.Boost = (2.0f); assertEquals(expected, qp.Parse("\"ä¸å½\"^2"));
