You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucenenet.apache.org by ar...@apache.org on 2009/11/17 20:43:11 UTC
svn commit: r881458 - in /incubator/lucene.net/trunk/C#/src:
Lucene.Net/Search/Payloads/ Lucene.Net/Search/Spans/ Test/Search/
Test/Search/Spans/
Author: aroush
Date: Tue Nov 17 19:43:09 2009
New Revision: 881458
URL: http://svn.apache.org/viewvc?rev=881458&view=rev
Log:
Fixed NUnit test-cases for: TestPhrasePrefixQuery & TestPositionIncrement
Modified:
incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Payloads/PayloadNearQuery.cs
incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Payloads/PayloadSpanUtil.cs
incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Spans/NearSpansOrdered.cs
incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Spans/NearSpansUnordered.cs
incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Spans/SpanFirstQuery.cs
incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Spans/SpanNotQuery.cs
incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Spans/SpanOrQuery.cs
incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Spans/Spans.cs
incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Spans/TermSpans.cs
incubator/lucene.net/trunk/C#/src/Test/Search/Spans/JustCompileSearchSpans.cs
incubator/lucene.net/trunk/C#/src/Test/Search/Spans/TestPayloadSpans.cs
incubator/lucene.net/trunk/C#/src/Test/Search/TestPhrasePrefixQuery.cs
incubator/lucene.net/trunk/C#/src/Test/Search/TestPositionIncrement.cs
Modified: incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Payloads/PayloadNearQuery.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/C%23/src/Lucene.Net/Search/Payloads/PayloadNearQuery.cs?rev=881458&r1=881457&r2=881458&view=diff
==============================================================================
--- incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Payloads/PayloadNearQuery.cs (original)
+++ incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Payloads/PayloadNearQuery.cs Tue Nov 17 19:43:09 2009
@@ -242,14 +242,13 @@
/// </param>
/// <seealso cref="Spans">
/// </seealso>
- protected internal virtual void ProcessPayloads(System.Collections.ICollection payLoads, int start, int end)
+ protected internal virtual void ProcessPayloads(System.Collections.Generic.ICollection<byte[]> payLoads, int start, int end)
{
- for (System.Collections.IEnumerator iterator = payLoads.GetEnumerator(); iterator.MoveNext(); )
- {
- byte[] thePayload = (byte[]) iterator.Current;
- payloadScore = Enclosing_Instance.function.CurrentScore(doc, Enclosing_Instance.fieldName, start, end, payloadsSeen, payloadScore, similarity.ScorePayload(doc, Enclosing_Instance.fieldName, spans.Start(), spans.End(), thePayload, 0, thePayload.Length));
- ++payloadsSeen;
- }
+ foreach (byte[] thePayload in payLoads)
+ {
+ payloadScore = Enclosing_Instance.function.CurrentScore(doc, Enclosing_Instance.fieldName, start, end, payloadsSeen, payloadScore, similarity.ScorePayload(doc, Enclosing_Instance.fieldName, spans.Start(), spans.End(), thePayload, 0, thePayload.Length));
+ ++payloadsSeen;
+ }
}
//
Modified: incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Payloads/PayloadSpanUtil.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/C%23/src/Lucene.Net/Search/Payloads/PayloadSpanUtil.cs?rev=881458&r1=881457&r2=881458&view=diff
==============================================================================
--- incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Payloads/PayloadSpanUtil.cs (original)
+++ incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Payloads/PayloadSpanUtil.cs Tue Nov 17 19:43:09 2009
@@ -200,14 +200,12 @@
if (spans.IsPayloadAvailable())
{
//ICollection<byte[]> payload = spans.GetPayload();
- System.Collections.ICollection payload = spans.GetPayload();
+ System.Collections.Generic.ICollection<byte[]> payload = spans.GetPayload();
//IEnumerator<byte[]> it = payload.GetEnumerator();
- System.Collections.IEnumerator it = payload.GetEnumerator();
- while (it.MoveNext())
- {
- byte[] bytes = (byte[]) it.Current;
- payloads.Add(bytes);
- }
+ foreach (byte[] bytes in payload)
+ {
+ payloads.Add(bytes);
+ }
}
}
}
Modified: incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Spans/NearSpansOrdered.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/C%23/src/Lucene.Net/Search/Spans/NearSpansOrdered.cs?rev=881458&r1=881457&r2=881458&view=diff
==============================================================================
--- incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Spans/NearSpansOrdered.cs (original)
+++ incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Spans/NearSpansOrdered.cs Tue Nov 17 19:43:09 2009
@@ -87,7 +87,7 @@
private int matchDoc = - 1;
private int matchStart = - 1;
private int matchEnd = - 1;
- private System.Collections.ArrayList matchPayload;
+ private System.Collections.Generic.List<byte[]> matchPayload;
private Spans[] subSpansByDoc;
private System.Collections.IComparer spanDocComparator;
@@ -110,7 +110,7 @@
allowedSlop = spanNearQuery.GetSlop();
SpanQuery[] clauses = spanNearQuery.GetClauses();
subSpans = new Spans[clauses.Length];
- matchPayload = new System.Collections.ArrayList();
+ matchPayload = new System.Collections.Generic.List<byte[]>();
subSpansByDoc = new Spans[clauses.Length];
for (int i = 0; i < clauses.Length; i++)
{
@@ -145,7 +145,7 @@
// TODO: Remove warning after API has been finalized
// TODO: Would be nice to be able to lazy load payloads
- public override System.Collections.ICollection GetPayload()
+ public override System.Collections.Generic.ICollection<byte[]> GetPayload()
{
return matchPayload;
}
@@ -323,13 +323,20 @@
{
matchStart = subSpans[subSpans.Length - 1].Start();
matchEnd = subSpans[subSpans.Length - 1].End();
- System.Collections.Hashtable possibleMatchPayloads = new System.Collections.Hashtable();
+ System.Collections.Generic.Dictionary<byte[], byte[]> possibleMatchPayloads = new System.Collections.Generic.Dictionary<byte[], byte[]>();
if (subSpans[subSpans.Length - 1].IsPayloadAvailable())
{
- SupportClass.CollectionsHelper.AddAllIfNotContains(possibleMatchPayloads, subSpans[subSpans.Length - 1].GetPayload());
+ System.Collections.Generic.ICollection<byte[]> payload = subSpans[subSpans.Length - 1].GetPayload();
+ foreach(byte[] pl in payload)
+ {
+ if (!possibleMatchPayloads.ContainsKey(pl))
+ {
+ possibleMatchPayloads.Add(pl, pl);
+ }
+ }
}
- System.Collections.ArrayList possiblePayload = null;
+ System.Collections.Generic.List<byte[]> possiblePayload = null;
int matchSlop = 0;
int lastStart = matchStart;
@@ -339,8 +346,8 @@
Spans prevSpans = subSpans[i];
if (collectPayloads && prevSpans.IsPayloadAvailable())
{
- System.Collections.ICollection payload = prevSpans.GetPayload();
- possiblePayload = new System.Collections.ArrayList(payload.Count);
+ System.Collections.Generic.ICollection<byte[]> payload = prevSpans.GetPayload();
+ possiblePayload = new System.Collections.Generic.List<byte[]>(payload.Count);
possiblePayload.AddRange(payload);
}
@@ -375,8 +382,8 @@
prevEnd = ppEnd;
if (collectPayloads && prevSpans.IsPayloadAvailable())
{
- System.Collections.ICollection payload = prevSpans.GetPayload();
- possiblePayload = new System.Collections.ArrayList(payload.Count);
+ System.Collections.Generic.ICollection<byte[]> payload = prevSpans.GetPayload();
+ possiblePayload = new System.Collections.Generic.List<byte[]>(payload.Count);
possiblePayload.AddRange(payload);
}
}
@@ -385,7 +392,13 @@
if (collectPayloads && possiblePayload != null)
{
- SupportClass.CollectionsHelper.AddAllIfNotContains(possibleMatchPayloads, possiblePayload);
+ foreach (byte[] pl in possiblePayload)
+ {
+ if (!possibleMatchPayloads.ContainsKey(pl))
+ {
+ possibleMatchPayloads.Add(pl, pl);
+ }
+ }
}
System.Diagnostics.Debug.Assert(prevStart <= matchStart);
@@ -407,7 +420,7 @@
if (collectPayloads && match && possibleMatchPayloads.Count > 0)
{
- matchPayload.AddRange(possibleMatchPayloads);
+ matchPayload.AddRange(possibleMatchPayloads.Keys);
}
return match; // ordered and allowed slop
Modified: incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Spans/NearSpansUnordered.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/C%23/src/Lucene.Net/Search/Spans/NearSpansUnordered.cs?rev=881458&r1=881457&r2=881458&view=diff
==============================================================================
--- incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Spans/NearSpansUnordered.cs (original)
+++ incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Spans/NearSpansUnordered.cs Tue Nov 17 19:43:09 2009
@@ -155,9 +155,9 @@
return spans.End();
}
// TODO: Remove warning after API has been finalized
- public override System.Collections.ICollection GetPayload()
+ public override System.Collections.Generic.ICollection<byte[]> GetPayload()
{
- return new System.Collections.ArrayList(spans.GetPayload());
+ return spans.GetPayload();
}
// TODO: Remove warning after API has been finalized
@@ -318,17 +318,25 @@
/// <returns> Collection of <code>byte[]</code> payloads
/// </returns>
/// <throws> IOException </throws>
- public override System.Collections.ICollection GetPayload()
+ public override System.Collections.Generic.ICollection<byte[]> GetPayload()
{
- System.Collections.Hashtable matchPayload = new System.Collections.Hashtable();
+ //mgarski: faking out another HashSet<T>...
+ System.Collections.Generic.Dictionary<byte[], byte[]> matchPayload = new System.Collections.Generic.Dictionary<byte[], byte[]>();
for (SpansCell cell = first; cell != null; cell = cell.next)
{
if (cell.IsPayloadAvailable())
{
- SupportClass.CollectionsHelper.AddAllIfNotContains(matchPayload, cell.GetPayload());
+ System.Collections.Generic.ICollection<byte[]> cellPayload = cell.GetPayload();
+ foreach (byte[] val in cellPayload)
+ {
+ if (!matchPayload.ContainsKey(val))
+ {
+ matchPayload.Add(val, val);
+ }
+ }
}
}
- return matchPayload;
+ return matchPayload.Keys;
}
// TODO: Remove warning after API has been finalized
Modified: incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Spans/SpanFirstQuery.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/C%23/src/Lucene.Net/Search/Spans/SpanFirstQuery.cs?rev=881458&r1=881457&r2=881458&view=diff
==============================================================================
--- incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Spans/SpanFirstQuery.cs (original)
+++ incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Spans/SpanFirstQuery.cs Tue Nov 17 19:43:09 2009
@@ -85,12 +85,12 @@
}
// TODO: Remove warning after API has been finalized
- public override System.Collections.ICollection GetPayload()
+ public override System.Collections.Generic.ICollection<byte[]> GetPayload()
{
- System.Collections.ArrayList result = null;
+ System.Collections.Generic.ICollection<byte[]> result = null;
if (spans.IsPayloadAvailable())
{
- result = new System.Collections.ArrayList(spans.GetPayload());
+ result = spans.GetPayload();
}
return result; //TODO: any way to avoid the new construction?
}
Modified: incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Spans/SpanNotQuery.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/C%23/src/Lucene.Net/Search/Spans/SpanNotQuery.cs?rev=881458&r1=881457&r2=881458&view=diff
==============================================================================
--- incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Spans/SpanNotQuery.cs (original)
+++ incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Spans/SpanNotQuery.cs Tue Nov 17 19:43:09 2009
@@ -121,12 +121,12 @@
}
// TODO: Remove warning after API has been finalizedb
- public override System.Collections.ICollection GetPayload()
+ public override System.Collections.Generic.ICollection<byte[]> GetPayload()
{
- System.Collections.ArrayList result = null;
+ System.Collections.Generic.ICollection<byte[]> result = null;
if (includeSpans.IsPayloadAvailable())
{
- result = new System.Collections.ArrayList(includeSpans.GetPayload());
+ result = includeSpans.GetPayload();
}
return result;
}
Modified: incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Spans/SpanOrQuery.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/C%23/src/Lucene.Net/Search/Spans/SpanOrQuery.cs?rev=881458&r1=881457&r2=881458&view=diff
==============================================================================
--- incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Spans/SpanOrQuery.cs (original)
+++ incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Spans/SpanOrQuery.cs Tue Nov 17 19:43:09 2009
@@ -138,13 +138,13 @@
}
// TODO: Remove warning after API has been finalized
- public override System.Collections.ICollection GetPayload()
+ public override System.Collections.Generic.ICollection<byte[]> GetPayload()
{
- System.Collections.ArrayList result = null;
+ System.Collections.Generic.ICollection<byte[]> result = null;
Spans theTop = Top();
if (theTop != null && theTop.IsPayloadAvailable())
{
- result = new System.Collections.ArrayList(theTop.GetPayload());
+ result = theTop.GetPayload();
}
return result;
}
Modified: incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Spans/Spans.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/C%23/src/Lucene.Net/Search/Spans/Spans.cs?rev=881458&r1=881457&r2=881458&view=diff
==============================================================================
--- incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Spans/Spans.cs (original)
+++ incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Spans/Spans.cs Tue Nov 17 19:43:09 2009
@@ -77,7 +77,7 @@
/// </returns>
/// <throws> java.io.IOException </throws>
// TODO: Remove warning after API has been finalized
- public abstract System.Collections.ICollection GetPayload();
+ public abstract System.Collections.Generic.ICollection<byte[]> GetPayload();
/// <summary> Checks if a payload can be loaded at this position.
/// <p/>
Modified: incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Spans/TermSpans.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/C%23/src/Lucene.Net/Search/Spans/TermSpans.cs?rev=881458&r1=881457&r2=881458&view=diff
==============================================================================
--- incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Spans/TermSpans.cs (original)
+++ incubator/lucene.net/trunk/C#/src/Lucene.Net/Search/Spans/TermSpans.cs Tue Nov 17 19:43:09 2009
@@ -96,11 +96,13 @@
}
// TODO: Remove warning after API has been finalized
- public override System.Collections.ICollection GetPayload()
+ public override System.Collections.Generic.ICollection<byte[]> GetPayload()
{
byte[] bytes = new byte[positions.GetPayloadLength()];
bytes = positions.GetPayload(bytes, 0);
- return System.Collections.ArrayList.ReadOnly(new System.Collections.ArrayList(new System.Object[]{bytes}));
+ System.Collections.Generic.List<byte[]> val = new System.Collections.Generic.List<byte[]>();
+ val.Add(bytes);
+ return val;
}
// TODO: Remove warning after API has been finalized
Modified: incubator/lucene.net/trunk/C#/src/Test/Search/Spans/JustCompileSearchSpans.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/C%23/src/Test/Search/Spans/JustCompileSearchSpans.cs?rev=881458&r1=881457&r2=881458&view=diff
==============================================================================
--- incubator/lucene.net/trunk/C#/src/Test/Search/Spans/JustCompileSearchSpans.cs (original)
+++ incubator/lucene.net/trunk/C#/src/Test/Search/Spans/JustCompileSearchSpans.cs Tue Nov 17 19:43:09 2009
@@ -65,7 +65,7 @@
throw new System.NotSupportedException(Lucene.Net.Search.Spans.JustCompileSearchSpans.UNSUPPORTED_MSG);
}
- public override System.Collections.ICollection GetPayload()
+ public override System.Collections.Generic.ICollection<byte[]> GetPayload()
{
throw new System.NotSupportedException(Lucene.Net.Search.Spans.JustCompileSearchSpans.UNSUPPORTED_MSG);
}
@@ -106,7 +106,7 @@
internal sealed class JustCompilePayloadSpans:Spans
{
- public override System.Collections.ICollection GetPayload()
+ public override System.Collections.Generic.ICollection<byte[]> GetPayload()
{
throw new System.NotSupportedException(Lucene.Net.Search.Spans.JustCompileSearchSpans.UNSUPPORTED_MSG);
}
Modified: incubator/lucene.net/trunk/C#/src/Test/Search/Spans/TestPayloadSpans.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/C%23/src/Test/Search/Spans/TestPayloadSpans.cs?rev=881458&r1=881457&r2=881458&view=diff
==============================================================================
--- incubator/lucene.net/trunk/C#/src/Test/Search/Spans/TestPayloadSpans.cs (original)
+++ incubator/lucene.net/trunk/C#/src/Test/Search/Spans/TestPayloadSpans.cs Tue Nov 17 19:43:09 2009
@@ -286,7 +286,7 @@
{
while (spans.Next())
{
- System.Collections.ICollection payloads = spans.GetPayload();
+ System.Collections.Generic.ICollection<byte[]> payloads = spans.GetPayload();
for (System.Collections.IEnumerator it = payloads.GetEnumerator(); it.MoveNext(); )
{
@@ -323,7 +323,7 @@
{
while (spans.Next())
{
- System.Collections.ICollection payloads = spans.GetPayload();
+ System.Collections.Generic.ICollection<byte[]> payloads = spans.GetPayload();
int cnt = 0;
for (System.Collections.IEnumerator it = payloads.GetEnumerator(); it.MoveNext(); )
{
@@ -360,7 +360,7 @@
{
while (spans.Next())
{
- System.Collections.ICollection payloads = spans.GetPayload();
+ System.Collections.Generic.ICollection<byte[]> payloads = spans.GetPayload();
for (System.Collections.IEnumerator it = payloads.GetEnumerator(); it.MoveNext(); )
{
@@ -431,7 +431,7 @@
//See payload helper, for the PayloadHelper.FIELD field, there is a single byte payload at every token
if (spans.IsPayloadAvailable())
{
- System.Collections.ICollection payload = spans.GetPayload();
+ System.Collections.Generic.ICollection<byte[]> payload = spans.GetPayload();
Assert.IsTrue(payload.Count == expectedNumPayloads, "payload Size: " + payload.Count + " is not: " + expectedNumPayloads);
for (System.Collections.IEnumerator iterator = payload.GetEnumerator(); iterator.MoveNext(); )
{
@@ -479,7 +479,7 @@
System.Console.Out.WriteLine("\nSpans Dump --");
if (spans.IsPayloadAvailable())
{
- System.Collections.ICollection payload = spans.GetPayload();
+ System.Collections.Generic.ICollection<byte[]> payload = spans.GetPayload();
if (DEBUG)
System.Console.Out.WriteLine("payloads for span:" + payload.Count);
System.Collections.IEnumerator it = payload.GetEnumerator();
Modified: incubator/lucene.net/trunk/C#/src/Test/Search/TestPhrasePrefixQuery.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/C%23/src/Test/Search/TestPhrasePrefixQuery.cs?rev=881458&r1=881457&r2=881458&view=diff
==============================================================================
--- incubator/lucene.net/trunk/C#/src/Test/Search/TestPhrasePrefixQuery.cs (original)
+++ incubator/lucene.net/trunk/C#/src/Test/Search/TestPhrasePrefixQuery.cs Tue Nov 17 19:43:09 2009
@@ -41,9 +41,9 @@
[TestFixture]
public class TestPhrasePrefixQuery:LuceneTestCase
{
- public TestPhrasePrefixQuery(System.String name):base(name)
+ /*public TestPhrasePrefixQuery(System.String name):base(name)
{
- }
+ }*/
/// <summary> </summary>
[Test]
Modified: incubator/lucene.net/trunk/C#/src/Test/Search/TestPositionIncrement.cs
URL: http://svn.apache.org/viewvc/incubator/lucene.net/trunk/C%23/src/Test/Search/TestPositionIncrement.cs?rev=881458&r1=881457&r2=881458&view=diff
==============================================================================
--- incubator/lucene.net/trunk/C#/src/Test/Search/TestPositionIncrement.cs (original)
+++ incubator/lucene.net/trunk/C#/src/Test/Search/TestPositionIncrement.cs Tue Nov 17 19:43:09 2009
@@ -286,7 +286,13 @@
writer.SetAllowMinus1Position();
}
Document doc = new Document();
- doc.Add(new Field("content", new System.IO.StreamReader("a a b c d e a f g h i j a b k k")));
+ System.IO.MemoryStream ms = new System.IO.MemoryStream();
+ System.IO.StreamWriter sw = new System.IO.StreamWriter(ms);
+ sw.Write("a a b c d e a f g h i j a b k k");
+ // flush to stream & reset it's position so it can be read
+ sw.Flush();
+ ms.Position = 0;
+ doc.Add(new Field("content", new System.IO.StreamReader(ms)));
writer.AddDocument(doc);
IndexReader r = writer.GetReader();
@@ -331,7 +337,7 @@
while (pspans.Next())
{
//System.out.println(pspans.doc() + " - " + pspans.start() + " - "+ pspans.end());
- System.Collections.ICollection payloads = pspans.GetPayload();
+ System.Collections.Generic.ICollection<byte[]> payloads = pspans.GetPayload();
sawZero |= pspans.Start() == 0;
for (System.Collections.IEnumerator it = payloads.GetEnumerator(); it.MoveNext(); )
{