Author: ijabz
Date: 2009-11-02 16:37:20 +0000 (Mon, 02 Nov 2009)
New Revision: 12277
Modified:
search_server/branches/ngs/index/src/main/java/org/musicbrainz/search/index/ArtistIndexField.java
search_server/branches/ngs/index/src/main/java/org/musicbrainz/search/index/LabelIndexField.java
search_server/branches/ngs/index/src/test/java/org/musicbrainz/search/index/ArtistIndexTest.java
search_server/branches/ngs/index/src/test/java/org/musicbrainz/search/index/LabelIndexTest.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd2/ArtistXmlWriter.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd2/LabelXmlWriter.java
search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindArtistTest.java
search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindLabelTest.java
Log:
Artist and Alias Xml now outputs alias list
Modified: search_server/branches/ngs/index/src/main/java/org/musicbrainz/search/index/ArtistIndexField.java
===================================================================
--- search_server/branches/ngs/index/src/main/java/org/musicbrainz/search/index/ArtistIndexField.java 2009-10-31 21:03:55 UTC (rev 12276)
+++ search_server/branches/ngs/index/src/main/java/org/musicbrainz/search/index/ArtistIndexField.java 2009-11-02 16:37:20 UTC (rev 12277)
@@ -10,7 +10,7 @@
*/
public enum ArtistIndexField implements IndexField {
- ALIAS ("alias", Field.Store.NO, Field.Index.ANALYZED),
+ ALIAS ("alias", Field.Store.YES, Field.Index.ANALYZED),
ARTIST_ID ("arid", Field.Store.YES, Field.Index.NOT_ANALYZED, new KeywordAnalyzer()),
ARTIST ("artist", Field.Store.YES, Field.Index.ANALYZED),
SORTNAME ("sortname", Field.Store.YES, Field.Index.ANALYZED),
Modified: search_server/branches/ngs/index/src/main/java/org/musicbrainz/search/index/LabelIndexField.java
===================================================================
--- search_server/branches/ngs/index/src/main/java/org/musicbrainz/search/index/LabelIndexField.java 2009-10-31 21:03:55 UTC (rev 12276)
+++ search_server/branches/ngs/index/src/main/java/org/musicbrainz/search/index/LabelIndexField.java 2009-11-02 16:37:20 UTC (rev 12277)
@@ -14,7 +14,7 @@
LABEL ("label", Field.Store.YES, Field.Index.ANALYZED),
COUNTRY ("country", Field.Store.YES, Field.Index.ANALYZED),
CODE ("code", Field.Store.YES, Field.Index.ANALYZED, new StripLeadingZeroAnalyzer()),
- ALIAS ("alias", Field.Store.NO, Field.Index.ANALYZED),
+ ALIAS ("alias", Field.Store.YES, Field.Index.ANALYZED),
SORTNAME ("sortname", Field.Store.YES, Field.Index.ANALYZED),
BEGIN ("begin", Field.Store.YES, Field.Index.NOT_ANALYZED),
END ("end", Field.Store.YES, Field.Index.NOT_ANALYZED),
Modified: search_server/branches/ngs/index/src/test/java/org/musicbrainz/search/index/ArtistIndexTest.java
===================================================================
--- search_server/branches/ngs/index/src/test/java/org/musicbrainz/search/index/ArtistIndexTest.java 2009-10-31 21:03:55 UTC (rev 12276)
+++ search_server/branches/ngs/index/src/test/java/org/musicbrainz/search/index/ArtistIndexTest.java 2009-11-02 16:37:20 UTC (rev 12277)
@@ -238,7 +238,7 @@
assertEquals(1, ir.numDocs());
{
Document doc = ir.document(0);
- assertEquals(0, doc.getFields(ArtistIndexField.ALIAS.getName()).length); //aliases are searchable but not stored
+ assertEquals(3, doc.getFields(ArtistIndexField.ALIAS.getName()).length); //aliases are searchable but not stored
assertEquals(1, doc.getFields(ArtistIndexField.ARTIST.getName()).length);
assertEquals(1, doc.getFields(ArtistIndexField.ARTIST_ID.getName()).length);
assertEquals(1, doc.getFields(ArtistIndexField.SORTNAME.getName()).length);
Modified: search_server/branches/ngs/index/src/test/java/org/musicbrainz/search/index/LabelIndexTest.java
===================================================================
--- search_server/branches/ngs/index/src/test/java/org/musicbrainz/search/index/LabelIndexTest.java 2009-10-31 21:03:55 UTC (rev 12276)
+++ search_server/branches/ngs/index/src/test/java/org/musicbrainz/search/index/LabelIndexTest.java 2009-11-02 16:37:20 UTC (rev 12277)
@@ -260,7 +260,7 @@
assertEquals(1, ir.numDocs());
{
Document doc = ir.document(0);
- assertEquals(0, doc.getFields(LabelIndexField.ALIAS.getName()).length); //aliases are searchable but not stored
+ assertEquals(1, doc.getFields(LabelIndexField.ALIAS.getName()).length);
}
ir.close();
}
Modified: search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd2/ArtistXmlWriter.java
===================================================================
--- search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd2/ArtistXmlWriter.java 2009-10-31 21:03:55 UTC (rev 12276)
+++ search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd2/ArtistXmlWriter.java 2009-11-02 16:37:20 UTC (rev 12277)
@@ -115,6 +115,17 @@
artist.setDisambiguation(comment);
}
+ String[] aliases = doc.getValues(ArtistIndexField.ALIAS);
+ if(aliases.length>0)
+ {
+ AliasList aliasList = of.createAliasList();
+ for(int i = 0;i<aliases.length;i++) {
+ Alias alias = of.createAlias();
+ alias.getContent().add(aliases[i]);
+ aliasList.getAlias().add(alias);
+ }
+ artist.setAliasList(aliasList);
+ }
artistList.getArtist().add(artist);
}
Modified: search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd2/LabelXmlWriter.java
===================================================================
--- search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd2/LabelXmlWriter.java 2009-10-31 21:03:55 UTC (rev 12276)
+++ search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd2/LabelXmlWriter.java 2009-11-02 16:37:20 UTC (rev 12277)
@@ -32,6 +32,7 @@
import org.apache.commons.lang.StringUtils;
import org.musicbrainz.mmd2.*;
import org.musicbrainz.search.index.LabelIndexField;
+import org.musicbrainz.search.index.ArtistIndexField;
import org.musicbrainz.search.servlet.MbDocument;
import org.musicbrainz.search.servlet.Result;
import org.musicbrainz.search.servlet.Results;
@@ -91,6 +92,18 @@
label.setDisambiguation(comment);
}
+ String[] aliases = doc.getValues(LabelIndexField.ALIAS);
+ if(aliases.length>0)
+ {
+ AliasList aliasList = of.createAliasList();
+ for(int i = 0;i<aliases.length;i++) {
+ Alias alias = of.createAlias();
+ alias.getContent().add(aliases[i]);
+ aliasList.getAlias().add(alias);
+ }
+ label.setAliasList(aliasList);
+ }
+
labelList.getLabel().add(label);
}
Modified: search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindArtistTest.java
===================================================================
--- search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindArtistTest.java 2009-10-31 21:03:55 UTC (rev 12276)
+++ search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindArtistTest.java 2009-11-02 16:37:20 UTC (rev 12277)
@@ -57,7 +57,6 @@
Index.addFieldToDocument(doc, ArtistIndexField.COMMENT, "the real one");
Index.addFieldToDocument(doc, ArtistIndexField.COUNTRY, "af");
Index.addFieldToDocument(doc, ArtistIndexField.GENDER, "male");
-
writer.addDocument(doc);
}
@@ -273,6 +272,7 @@
pr.close();
String output = sw.toString();
+ System.out.println("Xml is" + output);
//assertTrue(output.contains("<artist id=\"4302e264-1cf0-4d1f-aca7-2a6f89e34b36\"")); group comes before id in output
//assertTrue(output.contains("<artist-list count=\"1\" offset=\"0\">")); offset comes before count in output
assertTrue(output.contains("count=\"1\""));
@@ -316,6 +316,35 @@
assertFalse(output.contains("alias"));
assertFalse(output.contains("disambugation"));
}
+
+ /**
+
+ *
+ * @throws Exception
+ */
+ public void testOutputXml2() throws Exception {
+
+ Results res = ss.searchLucene("artist:\"Echo & the Bunnymen\"", 0, 1);
+ XmlWriter v1Writer = new ArtistXmlWriter();
+ StringWriter sw = new StringWriter();
+ PrintWriter pr = new PrintWriter(sw);
+ v1Writer.write(pr, res);
+ pr.close();
+ String output = sw.toString();
+ System.out.println("Xml is" + output);
+ assertTrue(output.contains("count=\"1\""));
+ assertTrue(output.contains("offset=\"0\""));
+ assertTrue(output.contains("type=\"group\""));
+ assertTrue(output.contains("<name>Echo & The Bunnymen</name>"));
+ assertTrue(output.contains("<sort-name>Echo & The Bunnymen</sort-name>"));
+ assertTrue(output.contains("<life-span><begin>1978</begin></life-span>"));
+ assertTrue(output.contains("<alias>Echo And The Bunnymen</alias>"));
+ assertTrue(output.contains("<alias>Echo & The Bunnyman</alias>"));
+ assertTrue(output.contains("<alias>Echo and The Bunymen</alias>"));
+ assertTrue(output.contains("<alias>Echo & The Bunymen</alias>"));
+ }
+
+
public void testOutputAsHtml() throws Exception {
Results res = ss.searchLucene("artist:\"Farming Incident\"", 0, 1);
Modified: search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindLabelTest.java
===================================================================
--- search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindLabelTest.java 2009-10-31 21:03:55 UTC (rev 12276)
+++ search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindLabelTest.java 2009-11-02 16:37:20 UTC (rev 12277)
@@ -80,7 +80,7 @@
assertEquals("Jockey Slut", doc.get(LabelIndexField.LABEL));
assertEquals("1993", doc.get(LabelIndexField.BEGIN));
assertEquals("2004", doc.get(LabelIndexField.END));
- assertNull(doc.get(LabelIndexField.ALIAS));
+ assertEquals("Jockeys",doc.get(LabelIndexField.ALIAS));
assertNull(doc.get(LabelIndexField.COMMENT));
assertEquals("Slut, Jockey", doc.get(LabelIndexField.SORTNAME));
assertEquals("production", doc.get(LabelIndexField.TYPE));
@@ -93,12 +93,6 @@
MbDocument doc = result.doc;
assertEquals("ff571ff4-04cb-4b9c-8a1c-354c330f863c", doc.get(LabelIndexField.LABEL_ID));
assertEquals("Jockey Slut", doc.get(LabelIndexField.LABEL));
- assertEquals("1993", doc.get(LabelIndexField.BEGIN));
- assertEquals("2004", doc.get(LabelIndexField.END));
- assertNull(doc.get(LabelIndexField.ALIAS));
- assertNull(doc.get(LabelIndexField.COMMENT));
- assertEquals("Slut, Jockey", doc.get(LabelIndexField.SORTNAME));
- assertEquals("production", doc.get(LabelIndexField.TYPE));
}
public void testFindLabelByDefault() throws Exception {
@@ -110,12 +104,6 @@
MbDocument doc = result.doc;
assertEquals("ff571ff4-04cb-4b9c-8a1c-354c330f863c", doc.get(LabelIndexField.LABEL_ID));
assertEquals("Jockey Slut", doc.get(LabelIndexField.LABEL));
- assertEquals("1993", doc.get(LabelIndexField.BEGIN));
- assertEquals("2004", doc.get(LabelIndexField.END));
- assertNull(doc.get(LabelIndexField.ALIAS));
- assertNull(doc.get(LabelIndexField.COMMENT));
- assertEquals("Slut, Jockey", doc.get(LabelIndexField.SORTNAME));
- assertEquals("production", doc.get(LabelIndexField.TYPE));
}
{
@@ -125,12 +113,6 @@
MbDocument doc = result.doc;
assertEquals("ff571ff4-04cb-4b9c-8a1c-354c330f863c", doc.get(LabelIndexField.LABEL_ID));
assertEquals("Jockey Slut", doc.get(LabelIndexField.LABEL));
- assertEquals("1993", doc.get(LabelIndexField.BEGIN));
- assertEquals("2004", doc.get(LabelIndexField.END));
- assertNull(doc.get(LabelIndexField.ALIAS));
- assertNull(doc.get(LabelIndexField.COMMENT));
- assertEquals("Slut, Jockey", doc.get(LabelIndexField.SORTNAME));
- assertEquals("production", doc.get(LabelIndexField.TYPE));
}
{
@@ -140,12 +122,6 @@
MbDocument doc = result.doc;
assertEquals("ff571ff4-04cb-4b9c-8a1c-354c330f863c", doc.get(LabelIndexField.LABEL_ID));
assertEquals("Jockey Slut", doc.get(LabelIndexField.LABEL));
- assertEquals("1993", doc.get(LabelIndexField.BEGIN));
- assertEquals("2004", doc.get(LabelIndexField.END));
- assertNull(doc.get(LabelIndexField.ALIAS));
- assertNull(doc.get(LabelIndexField.COMMENT));
- assertEquals("Slut, Jockey", doc.get(LabelIndexField.SORTNAME));
- assertEquals("production", doc.get(LabelIndexField.TYPE));
}
}
@@ -158,12 +134,6 @@
//(This will always come first because searcher sots by score and then docno, and this doc added first)
assertEquals("ff571ff4-04cb-4b9c-8a1c-354c330f863c", doc.get(LabelIndexField.LABEL_ID));
assertEquals("Jockey Slut", doc.get(LabelIndexField.LABEL));
- assertEquals("1993", doc.get(LabelIndexField.BEGIN));
- assertEquals("2004", doc.get(LabelIndexField.END));
- assertNull(doc.get(LabelIndexField.ALIAS));
- assertNull(doc.get(LabelIndexField.COMMENT));
- assertEquals("Slut, Jockey", doc.get(LabelIndexField.SORTNAME));
- assertEquals("production", doc.get(LabelIndexField.TYPE));
}
public void testFindLabelByNumericType() throws Exception {
@@ -175,12 +145,6 @@
//(This will always come first because searcher sots by score and then docno, and this doc added first)
assertEquals("ff571ff4-04cb-4b9c-8a1c-354c330f863c", doc.get(LabelIndexField.LABEL_ID));
assertEquals("Jockey Slut", doc.get(LabelIndexField.LABEL));
- assertEquals("1993", doc.get(LabelIndexField.BEGIN));
- assertEquals("2004", doc.get(LabelIndexField.END));
- assertNull(doc.get(LabelIndexField.ALIAS));
- assertNull(doc.get(LabelIndexField.COMMENT));
- assertEquals("Slut, Jockey", doc.get(LabelIndexField.SORTNAME));
- assertEquals("production", doc.get(LabelIndexField.TYPE));
}
@@ -191,12 +155,6 @@
MbDocument doc = result.doc;
assertEquals("ff571ff4-04cb-4b9c-8a1c-354c330f863c", doc.get(LabelIndexField.LABEL_ID));
assertEquals("Jockey Slut", doc.get(LabelIndexField.LABEL));
- assertEquals("1993", doc.get(LabelIndexField.BEGIN));
- assertEquals("2004", doc.get(LabelIndexField.END));
- assertNull(doc.get(LabelIndexField.ALIAS));
- assertNull(doc.get(LabelIndexField.COMMENT));
- assertEquals("Slut, Jockey", doc.get(LabelIndexField.SORTNAME));
- assertEquals("production", doc.get(LabelIndexField.TYPE));
}
public void testFindLabelByCountry() throws Exception {
@@ -206,12 +164,6 @@
MbDocument doc = result.doc;
assertEquals("ff571ff4-04cb-4b9c-8a1c-354c330f863c", doc.get(LabelIndexField.LABEL_ID));
assertEquals("Jockey Slut", doc.get(LabelIndexField.LABEL));
- assertEquals("1993", doc.get(LabelIndexField.BEGIN));
- assertEquals("2004", doc.get(LabelIndexField.END));
- assertNull(doc.get(LabelIndexField.ALIAS));
- assertNull(doc.get(LabelIndexField.COMMENT));
- assertEquals("Slut, Jockey", doc.get(LabelIndexField.SORTNAME));
- assertEquals("production", doc.get(LabelIndexField.TYPE));
}
public void testFindLabelByCode() throws Exception {
@@ -221,12 +173,6 @@
MbDocument doc = result.doc;
assertEquals("a539bb1e-f2e1-4b45-9db8-8053841e7503", doc.get(LabelIndexField.LABEL_ID));
assertEquals("4AD", doc.get(LabelIndexField.LABEL));
- assertEquals("1979", doc.get(LabelIndexField.BEGIN));
- assertNull(doc.get(LabelIndexField.END));
- assertNull(doc.get(LabelIndexField.ALIAS));
- assertNull(doc.get(LabelIndexField.COMMENT));
- assertEquals("5807", doc.get(LabelIndexField.CODE));
- assertEquals("production", doc.get(LabelIndexField.TYPE));
}
public void testFindLabelByZeroedCode() throws Exception {
@@ -236,12 +182,6 @@
MbDocument doc = result.doc;
assertEquals("a539bb1e-f2e1-4b45-9db8-8053841e7503", doc.get(LabelIndexField.LABEL_ID));
assertEquals("4AD", doc.get(LabelIndexField.LABEL));
- assertEquals("1979", doc.get(LabelIndexField.BEGIN));
- assertNull(doc.get(LabelIndexField.END));
- assertNull(doc.get(LabelIndexField.ALIAS));
- assertNull(doc.get(LabelIndexField.COMMENT));
- assertEquals("5807", doc.get(LabelIndexField.CODE));
- assertEquals("production", doc.get(LabelIndexField.TYPE));
}
/**
* Tests get same results as
@@ -291,6 +231,7 @@
assertTrue(output.contains("type=\"production\""));
assertTrue(output.contains("<name>Jockey Slut</name>"));
assertTrue(output.contains("<sort-name>Slut, Jockey</sort-name>"));
+ assertTrue(output.contains("<alias>Jockeys</alias>"));
assertTrue(output.contains("<begin>1993</begin"));
assertTrue(output.contains("<end>2004</end>"));
}
_______________________________________________
MusicBrainz-commits mailing list
MusicBrainz-commits@...
http://lists.musicbrainz.org/mailman/listinfo/musicbrainz-commits