You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-commits@lucene.apache.org by yo...@apache.org on 2008/07/12 16:12:29 UTC

svn commit: r676180 - in /lucene/solr/trunk: CHANGES.txt src/webapp/web/admin/analysis.jsp

Author: yonik
Date: Sat Jul 12 07:12:29 2008
New Revision: 676180

URL: http://svn.apache.org/viewvc?rev=676180&view=rev
Log:
SOLR-522: Make analysis.jsp show payloads

Modified:
    lucene/solr/trunk/CHANGES.txt
    lucene/solr/trunk/src/webapp/web/admin/analysis.jsp

Modified: lucene/solr/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/CHANGES.txt?rev=676180&r1=676179&r2=676180&view=diff
==============================================================================
--- lucene/solr/trunk/CHANGES.txt (original)
+++ lucene/solr/trunk/CHANGES.txt Sat Jul 12 07:12:29 2008
@@ -311,6 +311,9 @@
 59. SOLR-605: Add the ability to register callbacks programatically (ryan, Noble Paul)
 
 60. SOLR-610: hl.maxAnalyzedChars can be -1 to highlight everything (Lars Kotthoff via klaas)
+
+61. SOLR-522: Make analysis.jsp show payloads. (Tricia Williams via yonik)
+
     
 Changes in runtime behavior
  1. SOLR-559: use Lucene updateDocument, deleteDocuments methods.  This

Modified: lucene/solr/trunk/src/webapp/web/admin/analysis.jsp
URL: http://svn.apache.org/viewvc/lucene/solr/trunk/src/webapp/web/admin/analysis.jsp?rev=676180&r1=676179&r2=676180&view=diff
==============================================================================
--- lucene/solr/trunk/src/webapp/web/admin/analysis.jsp (original)
+++ lucene/solr/trunk/src/webapp/web/admin/analysis.jsp Sat Jul 12 07:12:29 2008
@@ -18,6 +18,7 @@
 <%@ page import="org.apache.lucene.analysis.Analyzer,
                  org.apache.lucene.analysis.Token,
                  org.apache.lucene.analysis.TokenStream,
+                 org.apache.lucene.index.Payload,
                  org.apache.solr.analysis.TokenFilterFactory,
                  org.apache.solr.analysis.TokenizerChain,
                  org.apache.solr.analysis.TokenizerFactory,
@@ -29,6 +30,7 @@
 <%@ page import="java.io.Reader"%>
 <%@ page import="java.io.StringReader"%>
 <%@ page import="java.util.*"%>
+<%@ page import="java.math.BigInteger" %>
 
 <%-- $Id$ --%>
 <%-- $Source: /cvs/main/searching/org.apache.solrolarServer/resources/admin/analysis.jsp,v $ --%>
@@ -66,7 +68,8 @@
 	<strong>Field
           <select name="nt">
 	  <option <%= nt.equals("name") ? "selected=\"selected\"" : "" %> >name</option>
-	  <option <%= nt.equals("type") ? "selected=\"selected\"" : "" %>>type</option></strong>
+	  <option <%= nt.equals("type") ? "selected=\"selected\"" : "" %>>type</option>
+          </select></strong>
   </td>
   <td>
 	<input class="std" name="name" type="text" value="<% XML.escapeCharData(name, out); %>">
@@ -295,7 +298,14 @@
 
   }
 
-
+  static String isPayloadString( Payload p ) {
+  	String sp = new String( p.getData() );
+	for( int i=0; i < sp.length(); i++ ) {
+	if( !Character.isDefined( sp.charAt(i) ) || Character.isISOControl( sp.charAt(i) ) )
+	  return "";
+	}
+	return "(" + sp + ")";
+  }
 
   static void writeHeader(JspWriter out, Class clazz, Map<String,String> args) throws IOException {
     out.print("<h4>");
@@ -416,6 +426,30 @@
       );
     }
 
+    if (verbose) {
+      printRow(out,"payload", arr, new ToStr() {
+        public String toStr(Object o) {
+          Token t = ((Tok)o).token;
+          Payload p = t.getPayload();
+          if( null != p ) {
+            BigInteger bi = new BigInteger( p.getData() );
+            String ret = bi.toString( 16 );
+            if (ret.length() % 2 != 0) {
+              // Pad with 0
+              ret = "0"+ret;
+            }
+            ret += isPayloadString( p );
+            return ret;
+          }
+          return "";			
+        }
+      }
+              ,true
+              ,verbose
+              ,null
+      );
+    }
+    
     out.println("</table>");
   }