lucene-solr-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Erik Hatcher <e...@ehatchersolutions.com>
Subject multiple same-named parameters
Date Fri, 21 Apr 2006 17:16:49 GMT
In my application I'm POSTing into the Solr for querying, and need to  
specify any number of "constraints" (which correspond to BitSet  
filters that get combined into a BitDocSet as a filter on the  
query).  Rather than have the client uniquely name each of the  
parameters, I want to name them all "constraint" in the request.  The  
servlet API supports this, but SolrQueryRequest currently does not.   
I've patched my local copy with the following and it all works fine.   
For LocalSolrQueryRequest, since it is using a Map for the arguments  
anyway, I simply added the new getParams method to return a single  
item array.

Any objections to me committing this?

Thanks,
	Erik



Index: src/java/org/apache/solr/request/LocalSolrQueryRequest.java
===================================================================
--- src/java/org/apache/solr/request/LocalSolrQueryRequest.java  
(revision 395947)
+++ src/java/org/apache/solr/request/LocalSolrQueryRequest.java  
(working copy)
@@ -70,6 +70,10 @@
      return (String)args.get(name);
    }
+  public String[] getParams(String name) {
+    return new String[] {(String)args.get(name)};
+  }
+
    public String getQueryString() {
      return query;
    }
Index: src/java/org/apache/solr/request/SolrQueryRequest.java
===================================================================
--- src/java/org/apache/solr/request/SolrQueryRequest.java       
(revision 395947)
+++ src/java/org/apache/solr/request/SolrQueryRequest.java       
(working copy)
@@ -31,6 +31,8 @@
    public String getParam(String name);
+  public String[] getParams(String name);
+
    public String getQueryString();
    // signifies the syntax and the handler that should be used
Index: src/webapp/src/org/apache/solr/servlet/SolrServletRequest.java
===================================================================
--- src/webapp/src/org/apache/solr/servlet/ 
SolrServletRequest.java      (revision 395947)
+++ src/webapp/src/org/apache/solr/servlet/ 
SolrServletRequest.java      (working copy)
@@ -25,7 +25,11 @@
      return req.getParameter(name);
    }
+  public String[] getParams(String name) {
+    return req.getParameterValues(name);
+  }
+
    public String getParamString() {
      StringBuilder sb = new StringBuilder(128);
      try {


Mime
View raw message