Author: ijabz
Date: 2009-11-04 21:00:01 +0000 (Wed, 04 Nov 2009)
New Revision: 12288
Added:
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd1/V1TrackIndexField.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd2/ArtistWriter.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd2/LabelWriter.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd2/RecordingWriter.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd2/ReleaseGroupWriter.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd2/ReleaseWriter.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd2/ResultsWriter.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd2/WorkWriter.java
Removed:
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/AnnotationHtmlWriter.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/ArtistHtmlWriter.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/CDStubHtmlWriter.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/FreeDBHtmlWriter.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/HtmlWriter.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/LabelHtmlWriter.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/ReleaseGroupHtmlWriter.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/ReleaseHtmlWriter.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/TrackHtmlWriter.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/VelocityLogChute.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/main/java/org/musicbrainz/search/servlet/mmd2/RecordingXmlWriter.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd2/ReleaseGroupXmlWriter.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd2/ReleaseXmlWriter.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd2/WorkXmlWriter.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd2/XmlWriter.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/v1support/V1TrackIndexField.java
search_server/branches/ngs/servlet/src/main/resources/annotation.html.vtl
search_server/branches/ngs/servlet/src/main/resources/artist.html.vtl
search_server/branches/ngs/servlet/src/main/resources/cdstub.html.vtl
search_server/branches/ngs/servlet/src/main/resources/freedb.html.vtl
search_server/branches/ngs/servlet/src/main/resources/label.html.vtl
search_server/branches/ngs/servlet/src/main/resources/release.html.vtl
search_server/branches/ngs/servlet/src/main/resources/releasegroup.html.vtl
search_server/branches/ngs/servlet/src/main/resources/track.html.vtl
Modified:
search_server/branches/ngs/servlet/pom.xml
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/AnnotationSearch.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/ArtistSearch.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/CDStubSearch.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/FreeDBSearch.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/LabelSearch.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/RecordingQueryParser.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/RecordingSearch.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/ReleaseGroupSearch.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/ReleaseSearch.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/ResultsWriter.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/SearchServer.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/SearchServerServlet.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/WorkSearch.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd1/Mmd1XmlWriter.java
search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd1/ReleaseGroupMmd1XmlWriter.java
search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindAnnotationTest.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/FindFreeDBTest.java
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/FindRecordingTest.java
search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindReleaseGroupTest.java
search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindReleaseTest.java
search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindWorkTest.java
Log:
Added support for outputting as JSON (use fmt=json)
Remove support for outputtiong as html (and velocity)
Modified: search_server/branches/ngs/servlet/pom.xml
===================================================================
--- search_server/branches/ngs/servlet/pom.xml 2009-11-04 19:15:17 UTC (rev 12287)
+++ search_server/branches/ngs/servlet/pom.xml 2009-11-04 21:00:01 UTC (rev 12288)
@@ -20,6 +20,11 @@
<id>brainz-mmd-jaxb</id>
<url>
http://brainz-mmd-jaxb.googlecode.com/svn/trunk/repo</url>
</repository>
+ <repository>
+ <id>maven2-repository.dev.java.net</id>
+ <name>Java.net Repository for Maven</name>
+ <url>
http://download.java.net/maven/2/</url>
+ </repository>
</repositories>
<dependencies>
<dependency>
@@ -64,17 +69,17 @@
<scope>test</scope>
</dependency>
<dependency>
+ <groupId>com.sun.jersey</groupId>
+ <artifactId>jersey-json</artifactId>
+ <version>1.1.2-ea</version>
+ </dependency>
+ <dependency>
<groupId>org.musicbrainz.search</groupId>
<artifactId>index</artifactId>
<version>2.0-SNAPSHOT</version>
<scope>compile</scope>
</dependency>
<dependency>
- <groupId>org.apache.velocity</groupId>
- <artifactId>velocity</artifactId>
- <version>1.6.2</version>
- </dependency>
- <dependency>
<groupId>org.tuckey</groupId>
<artifactId>urlrewritefilter</artifactId>
<version>3.1.0</version>
Modified: search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/AnnotationSearch.java
===================================================================
--- search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/AnnotationSearch.java 2009-11-04 19:15:17 UTC (rev 12287)
+++ search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/AnnotationSearch.java 2009-11-04 21:00:01 UTC (rev 12288)
@@ -12,7 +12,6 @@
private AnnotationSearch() throws Exception {
mmd1XmlWriter = null;
- htmlWriter = new AnnotationHtmlWriter();
defaultFields = new ArrayList<String>();
defaultFields.add(AnnotationIndexField.TEXT.getName());
analyzer = new PerFieldEntityAnalyzer(AnnotationIndexField.class);
Modified: search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/ArtistSearch.java
===================================================================
--- search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/ArtistSearch.java 2009-11-04 19:15:17 UTC (rev 12287)
+++ search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/ArtistSearch.java 2009-11-04 21:00:01 UTC (rev 12288)
@@ -4,7 +4,7 @@
import org.apache.lucene.queryParser.QueryParser;
import org.musicbrainz.search.index.ArtistIndexField;
import org.musicbrainz.search.servlet.mmd1.ArtistMmd1XmlWriter;
-import org.musicbrainz.search.servlet.mmd2.ArtistXmlWriter;
+import org.musicbrainz.search.servlet.mmd2.ArtistWriter;
import org.musicbrainz.search.analysis.PerFieldEntityAnalyzer;
import java.util.ArrayList;
@@ -13,9 +13,8 @@
public class ArtistSearch extends SearchServer {
private ArtistSearch() throws Exception {
- xmlWriter = new ArtistXmlWriter();
+ resultsWriter = new ArtistWriter();
mmd1XmlWriter = new ArtistMmd1XmlWriter();
- htmlWriter = new ArtistHtmlWriter();
defaultFields = new ArrayList<String>();
defaultFields.add(ArtistIndexField.ARTIST.getName());
defaultFields.add(ArtistIndexField.ALIAS.getName());
Modified: search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/CDStubSearch.java
===================================================================
--- search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/CDStubSearch.java 2009-11-04 19:15:17 UTC (rev 12287)
+++ search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/CDStubSearch.java 2009-11-04 21:00:01 UTC (rev 12288)
@@ -13,7 +13,6 @@
private CDStubSearch() throws Exception {
mmd1XmlWriter = null;
- htmlWriter = new CDStubHtmlWriter();
defaultFields = new ArrayList<String>();
defaultFields.add(CDStubIndexField.ARTIST.getName());
defaultFields.add(CDStubIndexField.TITLE.getName());
Modified: search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/FreeDBSearch.java
===================================================================
--- search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/FreeDBSearch.java 2009-11-04 19:15:17 UTC (rev 12287)
+++ search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/FreeDBSearch.java 2009-11-04 21:00:01 UTC (rev 12288)
@@ -13,7 +13,6 @@
private FreeDBSearch() throws Exception {
mmd1XmlWriter = null;
- htmlWriter = new FreeDBHtmlWriter();
defaultFields = new ArrayList<String>();
defaultFields.add(FreeDBIndexField.ARTIST.getName());
defaultFields.add(FreeDBIndexField.TITLE.getName());
Modified: search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/LabelSearch.java
===================================================================
--- search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/LabelSearch.java 2009-11-04 19:15:17 UTC (rev 12287)
+++ search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/LabelSearch.java 2009-11-04 21:00:01 UTC (rev 12288)
@@ -4,7 +4,7 @@
import org.apache.lucene.queryParser.QueryParser;
import org.musicbrainz.search.index.LabelIndexField;
import org.musicbrainz.search.servlet.mmd1.LabelMmd1XmlWriter;
-import org.musicbrainz.search.servlet.mmd2.LabelXmlWriter;
+import org.musicbrainz.search.servlet.mmd2.LabelWriter;
import org.musicbrainz.search.analysis.PerFieldEntityAnalyzer;
import java.util.ArrayList;
@@ -14,9 +14,8 @@
public LabelSearch() throws Exception {
- xmlWriter = new LabelXmlWriter();
+ resultsWriter = new LabelWriter();
mmd1XmlWriter = new LabelMmd1XmlWriter();
- htmlWriter = new LabelHtmlWriter();
defaultFields = new ArrayList<String>();
defaultFields.add(LabelIndexField.LABEL.getName());
defaultFields.add(LabelIndexField.ALIAS.getName());
Modified: search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/RecordingQueryParser.java
===================================================================
--- search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/RecordingQueryParser.java 2009-11-04 19:15:17 UTC (rev 12287)
+++ search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/RecordingQueryParser.java 2009-11-04 21:00:01 UTC (rev 12288)
@@ -10,7 +10,7 @@
import org.apache.lucene.util.NumericUtils;
import org.musicbrainz.search.index.RecordingIndexField;
import org.musicbrainz.search.index.ReleaseGroupType;
-import org.musicbrainz.search.servlet.v1support.V1TrackIndexField;
+import org.musicbrainz.search.servlet.mmd1.V1TrackIndexField;
/**
Modified: search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/RecordingSearch.java
===================================================================
--- search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/RecordingSearch.java 2009-11-04 19:15:17 UTC (rev 12287)
+++ search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/RecordingSearch.java 2009-11-04 21:00:01 UTC (rev 12288)
@@ -4,7 +4,7 @@
import org.apache.lucene.queryParser.QueryParser;
import org.musicbrainz.search.index.RecordingIndexField;
import org.musicbrainz.search.servlet.mmd1.TrackMmd1XmlWriter;
-import org.musicbrainz.search.servlet.mmd2.RecordingXmlWriter;
+import org.musicbrainz.search.servlet.mmd2.RecordingWriter;
import org.musicbrainz.search.analysis.PerFieldEntityAnalyzer;
import java.util.ArrayList;
@@ -14,9 +14,8 @@
public RecordingSearch() throws Exception {
- xmlWriter = new RecordingXmlWriter();
+ resultsWriter = new RecordingWriter();
mmd1XmlWriter = new TrackMmd1XmlWriter();
- htmlWriter = new TrackHtmlWriter();
defaultFields = new ArrayList<String>();
defaultFields.add(RecordingIndexField.RECORDING.getName());
analyzer = new PerFieldEntityAnalyzer(RecordingIndexField.class);
Modified: search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/ReleaseGroupSearch.java
===================================================================
--- search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/ReleaseGroupSearch.java 2009-11-04 19:15:17 UTC (rev 12287)
+++ search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/ReleaseGroupSearch.java 2009-11-04 21:00:01 UTC (rev 12288)
@@ -4,7 +4,7 @@
import org.apache.lucene.queryParser.QueryParser;
import org.musicbrainz.search.index.ReleaseGroupIndexField;
import org.musicbrainz.search.servlet.mmd1.ReleaseGroupMmd1XmlWriter;
-import org.musicbrainz.search.servlet.mmd2.ReleaseGroupXmlWriter;
+import org.musicbrainz.search.servlet.mmd2.ReleaseGroupWriter;
import org.musicbrainz.search.analysis.PerFieldEntityAnalyzer;
import java.util.ArrayList;
@@ -14,9 +14,8 @@
public ReleaseGroupSearch() throws Exception
{
- xmlWriter = new ReleaseGroupXmlWriter();
+ resultsWriter = new ReleaseGroupWriter();
mmd1XmlWriter = new ReleaseGroupMmd1XmlWriter();
- htmlWriter = new ReleaseGroupHtmlWriter();
defaultFields = new ArrayList<String>();
defaultFields.add(ReleaseGroupIndexField.RELEASEGROUP.getName());
analyzer = new PerFieldEntityAnalyzer(ReleaseGroupIndexField.class);
Modified: search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/ReleaseSearch.java
===================================================================
--- search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/ReleaseSearch.java 2009-11-04 19:15:17 UTC (rev 12287)
+++ search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/ReleaseSearch.java 2009-11-04 21:00:01 UTC (rev 12288)
@@ -4,8 +4,7 @@
import org.apache.lucene.queryParser.QueryParser;
import org.musicbrainz.search.index.ReleaseIndexField;
import org.musicbrainz.search.servlet.mmd1.ReleaseMmd1XmlWriter;
-import org.musicbrainz.search.servlet.mmd2.ReleaseGroupXmlWriter;
-import org.musicbrainz.search.servlet.mmd2.ReleaseXmlWriter;
+import org.musicbrainz.search.servlet.mmd2.ReleaseWriter;
import org.musicbrainz.search.analysis.PerFieldEntityAnalyzer;
import java.util.ArrayList;
@@ -15,9 +14,8 @@
public ReleaseSearch() throws Exception {
- xmlWriter = new ReleaseXmlWriter();
+ resultsWriter = new ReleaseWriter();
mmd1XmlWriter = new ReleaseMmd1XmlWriter();
- htmlWriter = new ReleaseHtmlWriter();
defaultFields = new ArrayList<String>();
defaultFields.add(ReleaseIndexField.RELEASE.getName());
analyzer = new PerFieldEntityAnalyzer(ReleaseIndexField.class);
Modified: search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/ResultsWriter.java
===================================================================
--- search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/ResultsWriter.java 2009-11-04 19:15:17 UTC (rev 12287)
+++ search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/ResultsWriter.java 2009-11-04 21:00:01 UTC (rev 12288)
@@ -39,10 +39,9 @@
public abstract String getMimeType();
public void write(PrintWriter out, Results results) throws IOException {
- write(out,results,new EnumMap<RequestParameter,String>(RequestParameter.class) );
+ write(out, results, SearchServerServlet.RESPONSE_XML ) ;
}
+ public abstract void write(PrintWriter out, Results results,String outputFormat) throws IOException ;
- public abstract void write(PrintWriter out, Results results,EnumMap<RequestParameter,String> extraInfoMap) throws IOException;
-
}
Modified: search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/SearchServer.java
===================================================================
--- search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/SearchServer.java 2009-11-04 19:15:17 UTC (rev 12287)
+++ search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/SearchServer.java 2009-11-04 21:00:01 UTC (rev 12288)
@@ -41,7 +41,7 @@
import org.musicbrainz.search.MbDocument;
import org.musicbrainz.search.index.MetaIndexField;
import org.musicbrainz.search.servlet.mmd1.Mmd1XmlWriter;
-import org.musicbrainz.search.servlet.mmd2.XmlWriter;
+import org.musicbrainz.search.servlet.mmd2.ResultsWriter;
import java.io.File;
import java.io.IOException;
@@ -56,13 +56,11 @@
public abstract class SearchServer {
protected PerFieldAnalyzerWrapper analyzer;
- protected XmlWriter xmlWriter;
+ protected ResultsWriter resultsWriter;
protected Mmd1XmlWriter mmd1XmlWriter;
- protected HtmlWriter htmlWriter;
protected List<String> defaultFields;
protected IndexSearcher indexSearcher;
protected Date serverLastUpdatedDate;
- protected String htmlLastUpdated;
protected SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm zz",Locale.US);
protected AtomicInteger searchCount = new AtomicInteger();
@@ -95,7 +93,6 @@
serverLastUpdatedDate = new Date(NumericUtils.prefixCodedToLong(indexSearcher.getIndexReader().document(indexSearcher.getIndexReader().maxDoc()-1)
.getField(MetaIndexField.META.getName()).stringValue()));
dateFormat.setTimeZone(TimeZone.getTimeZone("UTC"));
- htmlWriter.setLastUpdated(dateFormat.format(serverLastUpdatedDate));
}
catch(Exception e) {
System.out.println(e);
@@ -108,18 +105,14 @@
}
- public XmlWriter getXmlWriter() {
- return xmlWriter;
+ public org.musicbrainz.search.servlet.mmd2.ResultsWriter getXmlWriter() {
+ return resultsWriter;
}
public Mmd1XmlWriter getXmlV1Writer() {
return mmd1XmlWriter;
}
- public HtmlWriter getHtmlWriter() {
- return htmlWriter;
- }
-
public List<String> getSearchFields() {
return defaultFields;
}
@@ -129,25 +122,13 @@
}
- public ResultsWriter getWriter(String fmt, String version) {
- if (SearchServerServlet.RESPONSE_XML.equals(fmt)) {
- if(SearchServerServlet.WS_VERSION_1.equals(version)) {
- return getXmlV1Writer();
- }
- else {
- //TODO whilst in dev fall back to v1 if don't have a v2 one yet
- ResultsWriter writer = getXmlWriter();
- if(writer==null) {
- return getXmlV1Writer();
- } else {
- return writer;
- }
-
- }
-
- } else {
- return getHtmlWriter();
+ public org.musicbrainz.search.servlet.ResultsWriter getWriter(String fmt, String version) {
+ if(SearchServerServlet.WS_VERSION_1.equals(version)) {
+ return getXmlV1Writer();
}
+ else {
+ return getXmlWriter();
+ }
}
/**
Modified: search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/SearchServerServlet.java
===================================================================
--- search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/SearchServerServlet.java 2009-11-04 19:15:17 UTC (rev 12287)
+++ search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/SearchServerServlet.java 2009-11-04 21:00:01 UTC (rev 12288)
@@ -29,7 +29,7 @@
package org.musicbrainz.search.servlet;
import org.apache.lucene.queryParser.ParseException;
-import org.apache.velocity.app.Velocity;
+import org.musicbrainz.search.servlet.mmd2.ResultsWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
@@ -39,9 +39,8 @@
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.PrintWriter;
-import java.util.logging.Logger;
-import java.util.EnumMap;
import java.lang.management.ManagementFactory;
+import java.util.logging.Logger;
public class SearchServerServlet extends HttpServlet {
@@ -52,8 +51,8 @@
final static int MAX_MATCHES_LIMIT = 100;
- final static String RESPONSE_XML = "xml";
- final static String RESPONSE_HTML = "html";
+ public final static String RESPONSE_XML = "xml";
+ public final static String RESPONSE_JSON = "json";
final static String WS_VERSION_1 = "1";
final static String WS_VERSION_2 = "2";
@@ -70,11 +69,8 @@
String indexDir = getServletConfig().getInitParameter("index_dir");
log.info("Index dir = " + indexDir);
log.info("Max Heap = "+ ManagementFactory.getMemoryMXBean().getHeapMemoryUsage().getMax());
- // Setup Velocity and Search server
- setUpVelocity();
try {
- Velocity.init();
SearchServerFactory.init(indexDir);
isServletInitialized = true;
} catch (Exception e1) {
@@ -85,13 +81,8 @@
}
- public static void setUpVelocity() {
- Velocity.setProperty("resource.loader", "class");
- Velocity.setProperty("class.resource.loader.class", org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader.class.getName());
- Velocity.setProperty("eventhandler.referenceinsertion.class", "org.apache.velocity.app.event.implement.EscapeHtmlReference");
- Velocity.setProperty(Velocity.RUNTIME_LOG_LOGSYSTEM, new VelocityLogChute());
- }
+
@Override
public void destroy() {
SearchServerFactory.close();
@@ -195,68 +186,30 @@
}
}
- EnumMap<RequestParameter, String> extraInfoMap = new EnumMap<RequestParameter, String>(RequestParameter.class);
- switch (resourceType) {
- case RELEASE: {
- String tport = request.getParameter(RequestParameter.TAGGER_PORT.getName());
- String rel = request.getParameter(RequestParameter.RELATIONSHIPS.getName());
- if (tport != null) {
- extraInfoMap.put(RequestParameter.TAGGER_PORT, tport);
- String duration = request.getParameter(RequestParameter.DURATION.getName());
- if (duration != null) {
- extraInfoMap.put(RequestParameter.DURATION, duration);
- }
- } else if (rel != null) {
- extraInfoMap.put(RequestParameter.RELATIONSHIPS, rel);
- }
- }
- break;
- case RECORDING: {
- String tport = request.getParameter(RequestParameter.TAGGER_PORT.getName());
- String rel = request.getParameter(RequestParameter.RELATIONSHIPS.getName());
- String oldLink = request.getParameter(RequestParameter.OLD_STYLE_LINK.getName());
-
- if (tport != null) {
- extraInfoMap.put(RequestParameter.TAGGER_PORT, tport);
- String duration = request.getParameter(RequestParameter.DURATION.getName());
- if (duration != null) {
- extraInfoMap.put(RequestParameter.DURATION, duration);
- }
- } else if (oldLink != null) {
- extraInfoMap.put(RequestParameter.OLD_STYLE_LINK, oldLink);
- } else if (rel != null) {
- extraInfoMap.put(RequestParameter.RELATIONSHIPS, rel);
- }
- }
- break;
-
- case ARTIST: {
- String rel = request.getParameter(RequestParameter.RELATIONSHIPS.getName());
- if (rel != null) {
- extraInfoMap.put(RequestParameter.RELATIONSHIPS, rel);
- }
- }
- break;
- }
-
// Make the search
try {
SearchServer searchServer = SearchServerFactory.getSearchServer(resourceType);
Results results = searchServer.search(query, offset, limit);
+ org.musicbrainz.search.servlet.ResultsWriter writer = searchServer.getWriter(responseFormat, responseVersion);
- ResultsWriter writer = searchServer.getWriter(responseFormat, responseVersion);
-
if (writer == null) {
response.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR, ErrorMessage.NO_HANDLER_FOR_TYPE_AND_FORMAT.getMsg(resourceType, responseFormat));
return;
}
response.setCharacterEncoding(CHARSET);
- response.setContentType(writer.getMimeType());
+ if(responseFormat.equals(RESPONSE_XML)) {
+ response.setContentType(writer.getMimeType());
+ }
+ else {
+ response.setContentType(((ResultsWriter)writer).getJsonMimeType());
+ }
+
PrintWriter out = new PrintWriter(new BufferedWriter(new OutputStreamWriter(response.getOutputStream(), CHARSET)));
- writer.write(out, results, extraInfoMap);
+ writer.write(out, results,responseFormat);
out.close();
+
}
catch (ParseException pe) {
response.sendError(HttpServletResponse.SC_BAD_REQUEST, ErrorMessage.UNABLE_TO_PARSE_SEARCH.getMsg(query));
Modified: search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/WorkSearch.java
===================================================================
--- search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/WorkSearch.java 2009-11-04 19:15:17 UTC (rev 12287)
+++ search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/WorkSearch.java 2009-11-04 21:00:01 UTC (rev 12288)
@@ -2,12 +2,8 @@
import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.queryParser.QueryParser;
-import org.musicbrainz.search.index.ReleaseIndexField;
import org.musicbrainz.search.index.WorkIndexField;
-import org.musicbrainz.search.servlet.mmd1.ReleaseMmd1XmlWriter;
-import org.musicbrainz.search.servlet.mmd2.ReleaseGroupXmlWriter;
-import org.musicbrainz.search.servlet.mmd2.ReleaseXmlWriter;
-import org.musicbrainz.search.servlet.mmd2.WorkXmlWriter;
+import org.musicbrainz.search.servlet.mmd2.WorkWriter;
import org.musicbrainz.search.analysis.PerFieldEntityAnalyzer;
import java.util.ArrayList;
@@ -17,7 +13,7 @@
public WorkSearch() throws Exception {
- xmlWriter = new WorkXmlWriter();
+ resultsWriter = new WorkWriter();
defaultFields = new ArrayList<String>();
defaultFields.add(WorkIndexField.WORK.getName());
analyzer = new PerFieldEntityAnalyzer(WorkIndexField.class);
Modified: search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd1/Mmd1XmlWriter.java
===================================================================
--- search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd1/Mmd1XmlWriter.java 2009-11-04 19:15:17 UTC (rev 12287)
+++ search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd1/Mmd1XmlWriter.java 2009-11-04 21:00:01 UTC (rev 12288)
@@ -87,7 +87,7 @@
* @param results
* @throws IOException
*/
- public void write(PrintWriter out, Results results, EnumMap<RequestParameter,String> extraInfoMap) throws IOException {
+ public void write(PrintWriter out, Results results, String outputFormat) throws IOException {
try {
Metadata metadata = write(results);
Marshaller m = context.createMarshaller();
Modified: search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd1/ReleaseGroupMmd1XmlWriter.java
===================================================================
--- search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd1/ReleaseGroupMmd1XmlWriter.java 2009-11-04 19:15:17 UTC (rev 12287)
+++ search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd1/ReleaseGroupMmd1XmlWriter.java 2009-11-04 21:00:01 UTC (rev 12288)
@@ -72,15 +72,12 @@
//i.e
http://localhost:8080/?type=release-group&query=artist:%22Cincinnati%20Pops%20Orchestra%22&fmt=xml&version=1 String artistName = doc.get(ReleaseGroupIndexField.ARTIST_NAME);
if (artistName != null) {
-
Artist artist = of.createArtist();
artist.setName(artistName);
artist.setId(doc.get(ReleaseGroupIndexField.ARTIST_ID));
artist.setSortName(doc.get(ReleaseGroupIndexField.ARTIST_SORTNAME));
releaseGroup.setArtist(artist);
}
-
-
releaseGroupList.getReleaseGroup().add(releaseGroup);
}
releaseGroupList.setCount(BigInteger.valueOf(results.totalHits));
Property changes on: search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd1/V1TrackIndexField.java
___________________________________________________________________
Added: svn:mergeinfo
+ /search_server/branches/lucene-java/index/src/main/java/org/musicbrainz/search/index/RecordingIndexField.java:12117-12127
/search_server/trunk/index/src/main/java/org/musicbrainz/search/index/RecordingIndexField.java:12128-12159
Property changes on: search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd2/RecordingWriter.java
___________________________________________________________________
Added: svn:mergeinfo
+ /search_server/branches/lucene-java/servlet/src/main/java/org/musicbrainz/search/servlet/mmd1/TrackMmd1XmlWriter.java:12117-12127
/search_server/trunk/servlet/src/main/java/org/musicbrainz/search/servlet/mmd1/TrackMmd1XmlWriter.java:12128-12159
Property changes on: search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd2/ReleaseWriter.java
___________________________________________________________________
Added: svn:mergeinfo
+ /search_server/branches/lucene-java/servlet/src/main/java/org/musicbrainz/search/servlet/mmd1/ReleaseMmd1XmlWriter.java:12117-12127
/search_server/trunk/servlet/src/main/java/org/musicbrainz/search/servlet/mmd1/ReleaseMmd1XmlWriter.java:12128-12159
Property changes on: search_server/branches/ngs/servlet/src/main/java/org/musicbrainz/search/servlet/mmd2/WorkWriter.java
___________________________________________________________________
Added: svn:mergeinfo
+ /search_server/branches/lucene-java/servlet/src/main/java/org/musicbrainz/search/servlet/mmd2/ReleaseGroupXmlWriter.java:12117-12127
/search_server/trunk/servlet/src/main/java/org/musicbrainz/search/servlet/mmd2/ReleaseGroupXmlWriter.java:12128-12159
Modified: search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindAnnotationTest.java
===================================================================
--- search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindAnnotationTest.java 2009-11-04 19:15:17 UTC (rev 12287)
+++ search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindAnnotationTest.java 2009-11-04 21:00:01 UTC (rev 12288)
@@ -5,16 +5,11 @@
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.store.RAMDirectory;
-import org.apache.velocity.app.Velocity;
import org.musicbrainz.search.MbDocument;
import org.musicbrainz.search.analysis.PerFieldEntityAnalyzer;
import org.musicbrainz.search.index.AnnotationIndexField;
import org.musicbrainz.search.index.AnnotationType;
-import java.io.PrintWriter;
-import java.io.StringWriter;
-import java.util.Date;
-
/**
* Test retrieving Annotations entries from index and Outputting as Html
*/
@@ -28,8 +23,6 @@
@Override
protected void setUp() throws Exception {
- SearchServerServlet.setUpVelocity();
- Velocity.init();
RAMDirectory ramDir = new RAMDirectory();
PerFieldAnalyzerWrapper analyzer = new PerFieldEntityAnalyzer(AnnotationIndexField.class);
IndexWriter writer = new IndexWriter(ramDir, analyzer, true, IndexWriter.MaxFieldLength.LIMITED);
@@ -93,39 +86,4 @@
Results res = ss.searchLucene("DiscID", 0, 10);
assertEquals(1, res.totalHits);
}
-
-
- public void testOutputAsHtml() throws Exception {
-
- Results res = ss.searchLucene("DiscID", 0, 1);
- ResultsWriter writer = new AnnotationHtmlWriter();
- StringWriter sw = new StringWriter();
- PrintWriter pr = new PrintWriter(sw);
- writer.write(pr, res);
- pr.close();
-
- String output = sw.toString();
- //System.out.println(output);
- assertTrue(output.contains("<a href=\"/release/bdb24cb5-404b-4f60-bba4-7b730325ae47.html\">Pieds nus sur la braise</a>"));
- assertTrue(output.contains("<td>%WIKIBEGIN%EAN: 0828768226629 - DiscID: TWj6cLku360MfFYAq_MEaT_stgc-%WIKIEND%</td>"));
- }
-
-
-
- public void testHtmlWritingPerformance() throws Exception {
- Results res = ss.searchLucene("DiscID", 0, 10);
- assertEquals(1, res.totalHits);
-
- Date start = new Date();
- ResultsWriter writer = new AnnotationHtmlWriter();
- StringWriter sw = new StringWriter();
- PrintWriter pr = new PrintWriter(sw);
- for (int i = 0; i < 1000; i++) {
- writer.write(pr, res);
- }
- pr.close();
- Date end = new Date();
- System.out.println("HTML - Time Taken: " + (end.getTime() - start.getTime()) + "ms");
- }
-
}
\ No newline at end of file
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-11-04 19:15:17 UTC (rev 12287)
+++ search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindArtistTest.java 2009-11-04 21:00:01 UTC (rev 12288)
@@ -1,25 +1,18 @@
package org.musicbrainz.search.servlet;
+
import junit.framework.TestCase;
+import org.apache.lucene.analysis.PerFieldAnalyzerWrapper;
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.store.RAMDirectory;
-import org.apache.lucene.analysis.PerFieldAnalyzerWrapper;
-import org.apache.velocity.app.Velocity;
+import org.musicbrainz.search.MbDocument;
+import org.musicbrainz.search.analysis.PerFieldEntityAnalyzer;
import org.musicbrainz.search.index.ArtistIndexField;
import org.musicbrainz.search.index.ArtistType;
-import org.musicbrainz.search.servlet.ArtistHtmlWriter;
-import org.musicbrainz.search.servlet.ArtistSearch;
import org.musicbrainz.search.servlet.mmd1.ArtistMmd1XmlWriter;
-import org.musicbrainz.search.MbDocument;
-import org.musicbrainz.search.servlet.Result;
-import org.musicbrainz.search.servlet.Results;
-import org.musicbrainz.search.servlet.ResultsWriter;
-import org.musicbrainz.search.servlet.SearchServer;
-import org.musicbrainz.search.servlet.SearchServerServlet;
import org.musicbrainz.search.servlet.mmd1.Mmd1XmlWriter;
-import org.musicbrainz.search.servlet.mmd2.ArtistXmlWriter;
-import org.musicbrainz.search.servlet.mmd2.XmlWriter;
-import org.musicbrainz.search.analysis.PerFieldEntityAnalyzer;
+import org.musicbrainz.search.servlet.mmd2.ArtistWriter;
+import org.musicbrainz.search.servlet.mmd2.ResultsWriter;
import java.io.PrintWriter;
import java.io.StringWriter;
@@ -38,8 +31,6 @@
@Override
protected void setUp() throws Exception {
- SearchServerServlet.setUpVelocity();
- Velocity.init();
RAMDirectory ramDir = new RAMDirectory();
PerFieldAnalyzerWrapper analyzer = new PerFieldEntityAnalyzer(ArtistIndexField.class);
IndexWriter writer = new IndexWriter(ramDir, analyzer, true, IndexWriter.MaxFieldLength.LIMITED);
@@ -76,6 +67,8 @@
ss = new ArtistSearch(new IndexSearcher(ramDir,true));
}
+
+
public void testFindArtistById() throws Exception {
Results res = ss.searchLucene("arid:\"4302e264-1cf0-4d1f-aca7-2a6f89e34b36\"", 0, 10);
assertEquals(1, res.totalHits);
@@ -293,7 +286,7 @@
public void testOutputXml() throws Exception {
Results res = ss.searchLucene("artist:\"Farming Incident\"", 0, 1);
- XmlWriter v1Writer = new ArtistXmlWriter();
+ ResultsWriter v1Writer = new ArtistWriter();
StringWriter sw = new StringWriter();
PrintWriter pr = new PrintWriter(sw);
v1Writer.write(pr, res);
@@ -323,7 +316,7 @@
public void testOutputXml2() throws Exception {
Results res = ss.searchLucene("artist:\"Echo & the Bunnymen\"", 0, 1);
- XmlWriter v1Writer = new ArtistXmlWriter();
+ ResultsWriter v1Writer = new ArtistWriter();
StringWriter sw = new StringWriter();
PrintWriter pr = new PrintWriter(sw);
v1Writer.write(pr, res);
@@ -372,7 +365,7 @@
assertEquals(1, res.totalHits);
Date start = new Date();
- ResultsWriter writer = new ArtistMmd1XmlWriter();
+ org.musicbrainz.search.servlet.ResultsWriter writer = new ArtistMmd1XmlWriter();
StringWriter sw = new StringWriter();
PrintWriter pr = new PrintWriter(sw);
for (int i = 0; i < 1000; i++) {
@@ -382,39 +375,4 @@
Date end = new Date();
System.out.println("XML - Time Taken: " + (end.getTime() - start.getTime()) + "ms");
}
-
-
-
-
- /**
- * Tests strips off header and footer
- *
http://musicbrainz.org/ws/1/artist/?type=xml&query=%22Farming%20Incident%22- *
- * @throws Exception
- */
- /*
- public void testOutputAsXmlFragment() throws Exception {
-
- Results res = ss.searchLucene("artist:\"Farming Incident\"", 0, 1);
- Mmd1XmlWriter writer = new ArtistMmd1XmlWriter();
- StringWriter sw = new StringWriter();
- PrintWriter pr = new PrintWriter(sw);
- writer.write(pr, res);
- pr.close();
-
- String output = sw.toString();
- assertFalse(output.contains("metadata"));
- assertFalse(output.contains("<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>"));
- assertTrue(output.contains("count=\"1\""));
- assertTrue(output.contains("offset=\"0\""));
- assertTrue(output.contains("type=\"Group\""));
- assertTrue(output.contains("<name>Farming Incident</name>"));
- assertTrue(output.contains("<sort-name>Farming Incident</sort-name>"));
- assertTrue(output.contains("<life-span begin=\"1999-04\""));
- assertFalse(output.contains("end"));
- assertFalse(output.contains("alias"));
- assertFalse(output.contains("disambugation"));
- System.out.println("Xml Fragment is" + output);
- }
- */
}
\ No newline at end of file
Modified: search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindFreeDBTest.java
===================================================================
--- search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindFreeDBTest.java 2009-11-04 19:15:17 UTC (rev 12287)
+++ search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindFreeDBTest.java 2009-11-04 21:00:01 UTC (rev 12288)
@@ -1,25 +1,14 @@
package org.musicbrainz.search.servlet;
+
import junit.framework.TestCase;
+import org.apache.lucene.analysis.PerFieldAnalyzerWrapper;
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.store.RAMDirectory;
-import org.apache.lucene.analysis.PerFieldAnalyzerWrapper;
-import org.apache.velocity.app.Velocity;
+import org.musicbrainz.search.MbDocument;
import org.musicbrainz.search.analysis.PerFieldEntityAnalyzer;
import org.musicbrainz.search.index.FreeDBIndexField;
-import org.musicbrainz.search.servlet.FreeDBHtmlWriter;
-import org.musicbrainz.search.servlet.FreeDBSearch;
-import org.musicbrainz.search.MbDocument;
-import org.musicbrainz.search.servlet.Result;
-import org.musicbrainz.search.servlet.Results;
-import org.musicbrainz.search.servlet.ResultsWriter;
-import org.musicbrainz.search.servlet.SearchServer;
-import org.musicbrainz.search.servlet.SearchServerServlet;
-import java.io.PrintWriter;
-import java.io.StringWriter;
-import java.util.Date;
-
/**
* Test retrieving FreeDB entries from index and Outputting as Html
*/
@@ -33,8 +22,6 @@
@Override
protected void setUp() throws Exception {
- SearchServerServlet.setUpVelocity();
- Velocity.init();
RAMDirectory ramDir = new RAMDirectory();
PerFieldAnalyzerWrapper analyzer = new PerFieldEntityAnalyzer(FreeDBIndexField.class);
IndexWriter writer = new IndexWriter(ramDir, analyzer, true, IndexWriter.MaxFieldLength.LIMITED);
@@ -137,57 +124,7 @@
assertEquals("2008", doc.get(FreeDBIndexField.YEAR));
}
-
}
- public void testOutputAsHtml() throws Exception {
- Results res = ss.searchLucene("artist:\"Ska-P\"", 0, 1);
- ResultsWriter writer = new FreeDBHtmlWriter();
- StringWriter sw = new StringWriter();
- PrintWriter pr = new PrintWriter(sw);
- writer.write(pr, res);
- pr.close();
-
- String output = sw.toString();
- assertTrue(output.contains("Lágrimas & Gozos"));
- assertTrue(output.contains("Ska-P"));
- assertTrue(output.contains("c20c4b0d"));
-
- }
-
- /**
- * Tests that & is converted to valid html
- *
- * @throws Exception
- */
- public void testOutputAsHtmlSpecialCharacters() throws Exception {
-
- Results res = ss.searchLucene("artist:\"Ska-P\"", 0, 1);
- ResultsWriter writer = new FreeDBHtmlWriter();
- StringWriter sw = new StringWriter();
- PrintWriter pr = new PrintWriter(sw);
- writer.write(pr, res);
- pr.close();
-
- String output = sw.toString();
- assertTrue(output.contains("Lágrimas & Gozos"));
- }
-
- public void testHtmlWritingPerformance() throws Exception {
- Results res = ss.searchLucene("artist:\"Ska-P\"", 0, 10);
- assertEquals(1, res.totalHits);
-
- Date start = new Date();
- ResultsWriter writer = new FreeDBHtmlWriter();
- StringWriter sw = new StringWriter();
- PrintWriter pr = new PrintWriter(sw);
- for (int i = 0; i < 1000; i++) {
- writer.write(pr, res);
- }
- pr.close();
- Date end = new Date();
- System.out.println("HTML - Time Taken: " + (end.getTime() - start.getTime()) + "ms");
- }
-
}
\ No newline at end of file
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-11-04 19:15:17 UTC (rev 12287)
+++ search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindLabelTest.java 2009-11-04 21:00:01 UTC (rev 12288)
@@ -1,21 +1,16 @@
package org.musicbrainz.search.servlet;
+
import junit.framework.TestCase;
+import org.apache.lucene.analysis.PerFieldAnalyzerWrapper;
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.store.RAMDirectory;
-import org.apache.lucene.analysis.PerFieldAnalyzerWrapper;
-import org.apache.velocity.app.Velocity;
-import org.musicbrainz.search.index.*;
-import org.musicbrainz.search.servlet.LabelSearch;
-import org.musicbrainz.search.servlet.mmd1.LabelMmd1XmlWriter;
import org.musicbrainz.search.MbDocument;
-import org.musicbrainz.search.servlet.Result;
-import org.musicbrainz.search.servlet.Results;
-import org.musicbrainz.search.servlet.ResultsWriter;
-import org.musicbrainz.search.servlet.SearchServer;
-import org.musicbrainz.search.servlet.SearchServerServlet;
-import org.musicbrainz.search.servlet.mmd2.LabelXmlWriter;
import org.musicbrainz.search.analysis.PerFieldEntityAnalyzer;
+import org.musicbrainz.search.index.LabelIndexField;
+import org.musicbrainz.search.index.LabelType;
+import org.musicbrainz.search.servlet.mmd1.LabelMmd1XmlWriter;
+import org.musicbrainz.search.servlet.mmd2.LabelWriter;
import java.io.PrintWriter;
import java.io.StringWriter;
@@ -35,8 +30,6 @@
@Override
protected void setUp() throws Exception {
- SearchServerServlet.setUpVelocity();
- Velocity.init();
RAMDirectory ramDir = new RAMDirectory();
PerFieldAnalyzerWrapper analyzer = new PerFieldEntityAnalyzer(LabelIndexField.class);
IndexWriter writer = new IndexWriter(ramDir, analyzer, true, IndexWriter.MaxFieldLength.LIMITED);
@@ -216,7 +209,7 @@
public void testOutputAsXml() throws Exception {
Results res = ss.searchLucene("label:\"Jockey Slut\"", 0, 1);
- ResultsWriter writer = new LabelXmlWriter();
+ ResultsWriter writer = new LabelWriter();
StringWriter sw = new StringWriter();
PrintWriter pr = new PrintWriter(sw);
writer.write(pr, res);
Modified: search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindRecordingTest.java
===================================================================
--- search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindRecordingTest.java 2009-11-04 19:15:17 UTC (rev 12287)
+++ search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindRecordingTest.java 2009-11-04 21:00:01 UTC (rev 12288)
@@ -1,16 +1,17 @@
package org.musicbrainz.search.servlet;
+
import junit.framework.TestCase;
+import org.apache.lucene.analysis.PerFieldAnalyzerWrapper;
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.store.RAMDirectory;
-import org.apache.lucene.analysis.PerFieldAnalyzerWrapper;
import org.apache.lucene.util.NumericUtils;
-import org.apache.velocity.app.Velocity;
import org.musicbrainz.search.MbDocument;
-import org.musicbrainz.search.index.*;
-import org.musicbrainz.search.servlet.mmd2.RecordingXmlWriter;
+import org.musicbrainz.search.analysis.PerFieldEntityAnalyzer;
+import org.musicbrainz.search.index.RecordingIndexField;
+import org.musicbrainz.search.index.ReleaseGroupType;
import org.musicbrainz.search.servlet.mmd1.TrackMmd1XmlWriter;
-import org.musicbrainz.search.analysis.PerFieldEntityAnalyzer;
+import org.musicbrainz.search.servlet.mmd2.RecordingWriter;
import java.io.PrintWriter;
import java.io.StringWriter;
@@ -32,8 +33,6 @@
@Override
protected void setUp() throws Exception {
- SearchServerServlet.setUpVelocity();
- Velocity.init();
RAMDirectory ramDir = new RAMDirectory();
PerFieldAnalyzerWrapper analyzer = new PerFieldEntityAnalyzer(RecordingIndexField.class);
IndexWriter writer = new IndexWriter(ramDir, analyzer, true, IndexWriter.MaxFieldLength.LIMITED);
@@ -57,6 +56,7 @@
doc.addNumericField(RecordingIndexField.TRACKNUM, 5);
doc.addField(RecordingIndexField.TRACK_OUTPUT, "Gravitational Lens");
doc.addField(RecordingIndexField.RECORDING, "Gravitational Lens");
+ doc.addField(RecordingIndexField.MEDIUM_POS_OUTPUT, "1");
doc.addField(RecordingIndexField.RELEASE_TYPE, ReleaseGroupType.ALBUM.getName());
writer.addDocument(doc.getLuceneDocument());
writer.close();
@@ -282,7 +282,7 @@
public void testOutputAsXml() throws Exception {
Results res = ss.searchLucene("track:\"Gravitational Lenz\"", 0, 10);
- ResultsWriter writer = new RecordingXmlWriter();
+ ResultsWriter writer = new RecordingWriter();
StringWriter sw = new StringWriter();
PrintWriter pr = new PrintWriter(sw);
writer.write(pr, res);
Modified: search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindReleaseGroupTest.java
===================================================================
--- search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindReleaseGroupTest.java 2009-11-04 19:15:17 UTC (rev 12287)
+++ search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindReleaseGroupTest.java 2009-11-04 21:00:01 UTC (rev 12288)
@@ -1,21 +1,16 @@
package org.musicbrainz.search.servlet;
+
import junit.framework.TestCase;
+import org.apache.lucene.analysis.PerFieldAnalyzerWrapper;
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.store.RAMDirectory;
-import org.apache.lucene.analysis.PerFieldAnalyzerWrapper;
-import org.apache.velocity.app.Velocity;
-import org.musicbrainz.search.index.*;
import org.musicbrainz.search.MbDocument;
-import org.musicbrainz.search.servlet.ReleaseGroupSearch;
-import org.musicbrainz.search.servlet.mmd1.ReleaseGroupMmd1XmlWriter;
-import org.musicbrainz.search.servlet.Result;
-import org.musicbrainz.search.servlet.Results;
-import org.musicbrainz.search.servlet.ResultsWriter;
-import org.musicbrainz.search.servlet.SearchServer;
-import org.musicbrainz.search.servlet.SearchServerServlet;
-import org.musicbrainz.search.servlet.mmd2.ReleaseGroupXmlWriter;
import org.musicbrainz.search.analysis.PerFieldEntityAnalyzer;
+import org.musicbrainz.search.index.ReleaseGroupIndexField;
+import org.musicbrainz.search.index.ReleaseGroupType;
+import org.musicbrainz.search.servlet.mmd1.ReleaseGroupMmd1XmlWriter;
+import org.musicbrainz.search.servlet.mmd2.ReleaseGroupWriter;
import java.io.PrintWriter;
import java.io.StringWriter;
@@ -35,8 +30,6 @@
@Override
protected void setUp() throws Exception {
- SearchServerServlet.setUpVelocity();
- Velocity.init();
RAMDirectory ramDir = new RAMDirectory();
PerFieldAnalyzerWrapper analyzer = new PerFieldEntityAnalyzer(ReleaseGroupIndexField.class);
IndexWriter writer = new IndexWriter(ramDir, analyzer, true, IndexWriter.MaxFieldLength.LIMITED);
@@ -295,7 +288,7 @@
public void testOutputAsAsXml() throws Exception {
Results res = ss.searchLucene("releasegroup:\"Nobody's Twisting Your Arm\"", 0, 1);
- ResultsWriter writer = new ReleaseGroupXmlWriter();
+ ResultsWriter writer = new ReleaseGroupWriter();
StringWriter sw = new StringWriter();
PrintWriter pr = new PrintWriter(sw);
writer.write(pr, res);
@@ -354,7 +347,7 @@
public void testOutputAsAsXml2() throws Exception {
Results res = ss.searchLucene("releasegroup:Epics", 0, 1);
- ResultsWriter writer = new ReleaseGroupXmlWriter();
+ ResultsWriter writer = new ReleaseGroupWriter();
StringWriter sw = new StringWriter();
PrintWriter pr = new PrintWriter(sw);
writer.write(pr, res);
Modified: search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindReleaseTest.java
===================================================================
--- search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindReleaseTest.java 2009-11-04 19:15:17 UTC (rev 12287)
+++ search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindReleaseTest.java 2009-11-04 21:00:01 UTC (rev 12288)
@@ -1,23 +1,18 @@
package org.musicbrainz.search.servlet;
+
import junit.framework.TestCase;
+import org.apache.lucene.analysis.PerFieldAnalyzerWrapper;
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.store.RAMDirectory;
-import org.apache.lucene.analysis.PerFieldAnalyzerWrapper;
import org.apache.lucene.util.NumericUtils;
-import org.apache.velocity.app.Velocity;
-import org.musicbrainz.search.index.*;
import org.musicbrainz.search.MbDocument;
-import org.musicbrainz.search.servlet.ReleaseSearch;
-import org.musicbrainz.search.servlet.mmd1.ReleaseMmd1XmlWriter;
-import org.musicbrainz.search.servlet.ResourceType;
-import org.musicbrainz.search.servlet.Result;
-import org.musicbrainz.search.servlet.Results;
-import org.musicbrainz.search.servlet.ResultsWriter;
-import org.musicbrainz.search.servlet.SearchServer;
-import org.musicbrainz.search.servlet.SearchServerServlet;
-import org.musicbrainz.search.servlet.mmd2.ReleaseXmlWriter;
import org.musicbrainz.search.analysis.PerFieldEntityAnalyzer;
+import org.musicbrainz.search.index.ReleaseGroupIndexField;
+import org.musicbrainz.search.index.ReleaseGroupType;
+import org.musicbrainz.search.index.ReleaseIndexField;
+import org.musicbrainz.search.servlet.mmd1.ReleaseMmd1XmlWriter;
+import org.musicbrainz.search.servlet.mmd2.ReleaseWriter;
import java.io.PrintWriter;
import java.io.StringWriter;
@@ -39,8 +34,6 @@
@Override
protected void setUp() throws Exception {
- SearchServerServlet.setUpVelocity();
- Velocity.init();
RAMDirectory ramDir = new RAMDirectory();
PerFieldAnalyzerWrapper analyzer = new PerFieldEntityAnalyzer(ReleaseIndexField.class);
IndexWriter writer = new IndexWriter(ramDir, analyzer, true, IndexWriter.MaxFieldLength.LIMITED);
@@ -543,7 +536,7 @@
public void testOutputAsXml() throws Exception {
Results res = ss.searchLucene("release:\"Our Glorious 5 Year Plan\"", 0, 1);
- ResultsWriter writer = new ReleaseXmlWriter();
+ ResultsWriter writer = new ReleaseWriter();
StringWriter sw = new StringWriter();
PrintWriter pr = new PrintWriter(sw);
writer.write(pr, res);
Modified: search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindWorkTest.java
===================================================================
--- search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindWorkTest.java 2009-11-04 19:15:17 UTC (rev 12287)
+++ search_server/branches/ngs/servlet/src/test/java/org/musicbrainz/search/servlet/FindWorkTest.java 2009-11-04 21:00:01 UTC (rev 12288)
@@ -1,21 +1,14 @@
package org.musicbrainz.search.servlet;
import junit.framework.TestCase;
+import org.apache.lucene.analysis.PerFieldAnalyzerWrapper;
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.search.IndexSearcher;
import org.apache.lucene.store.RAMDirectory;
-import org.apache.lucene.analysis.PerFieldAnalyzerWrapper;
-import org.apache.velocity.app.Velocity;
-import org.musicbrainz.search.index.*;
-import org.musicbrainz.search.servlet.LabelSearch;
import org.musicbrainz.search.MbDocument;
-import org.musicbrainz.search.servlet.Result;
-import org.musicbrainz.search.servlet.Results;
-import org.musicbrainz.search.servlet.ResultsWriter;
-import org.musicbrainz.search.servlet.SearchServer;
-import org.musicbrainz.search.servlet.SearchServerServlet;
-import org.musicbrainz.search.servlet.mmd2.WorkXmlWriter;
import org.musicbrainz.search.analysis.PerFieldEntityAnalyzer;
+import org.musicbrainz.search.index.WorkIndexField;
+import org.musicbrainz.search.servlet.mmd2.WorkWriter;
import java.io.PrintWriter;
import java.io.StringWriter;
@@ -35,8 +28,6 @@
@Override
protected void setUp() throws Exception {
- SearchServerServlet.setUpVelocity();
- Velocity.init();
RAMDirectory ramDir = new RAMDirectory();
PerFieldAnalyzerWrapper analyzer = new PerFieldEntityAnalyzer(WorkIndexField.class);
IndexWriter writer = new IndexWriter(ramDir, analyzer, true, IndexWriter.MaxFieldLength.LIMITED);
@@ -85,7 +76,7 @@
public void testOutputAsXml() throws Exception {
Results res = ss.searchLucene("work:\"Symphony No. 5\"", 0, 1);
- ResultsWriter writer = new WorkXmlWriter();
+ ResultsWriter writer = new WorkWriter();
StringWriter sw = new StringWriter();
PrintWriter pr = new PrintWriter(sw);
writer.write(pr, res);
_______________________________________________
MusicBrainz-commits mailing list
MusicBrainz-commits@...
http://lists.musicbrainz.org/mailman/listinfo/musicbrainz-commits