factor out commit param parsing: SOLR-185

git-svn-id: https://svn.apache.org/repos/asf/lucene/solr/trunk@524611 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Yonik Seeley 2007-04-01 15:13:25 +00:00
parent 55ee8f2305
commit 32d95f5c89
3 changed files with 31 additions and 29 deletions

View File

@ -46,7 +46,10 @@ public class CSVRequestHandler extends RequestHandlerBase {
Iterable<ContentStream> streams = req.getContentStreams(); Iterable<ContentStream> streams = req.getContentStreams();
if (streams == null) { if (streams == null) {
throw new SolrException(400, "missing content stream"); if(!RequestHandlerUtils.handleCommit(req, rsp, false)) {
throw new SolrException( 400, "missing content stream" );
}
return;
} }
for(ContentStream stream : streams) { for(ContentStream stream : streams) {
@ -58,6 +61,9 @@ public class CSVRequestHandler extends RequestHandlerBase {
IOUtils.closeQuietly(reader); IOUtils.closeQuietly(reader);
} }
} }
// perhaps commit when we are done
RequestHandlerUtils.handleCommit(req, rsp, false);
} }
//////////////////////// SolrInfoMBeans methods ////////////////////// //////////////////////// SolrInfoMBeans methods //////////////////////
@ -68,11 +74,11 @@ public class CSVRequestHandler extends RequestHandlerBase {
@Override @Override
public String getVersion() { public String getVersion() {
return "$Revision:$"; return "$Revision:$";
} }
@Override @Override
public String getSourceId() { public String getSourceId() {
return "$Id:$"; return "$Id:$";
} }
@ -94,7 +100,6 @@ abstract class CSVLoader {
static String EMPTY="keepEmpty"; static String EMPTY="keepEmpty";
static String SPLIT="split"; static String SPLIT="split";
static String ENCAPSULATOR="encapsulator"; static String ENCAPSULATOR="encapsulator";
static String COMMIT="commit";
static String OVERWRITE="overwrite"; static String OVERWRITE="overwrite";
private static Pattern colonSplit = Pattern.compile(":"); private static Pattern colonSplit = Pattern.compile(":");
@ -345,10 +350,6 @@ abstract class CSVLoader {
addDoc(line,vals); addDoc(line,vals);
} }
if (params.getBool(COMMIT,false)) {
handler.commit(new CommitUpdateCommand(false));
}
} }
/** called for each line of values (document) */ /** called for each line of values (document) */

View File

@ -25,26 +25,21 @@ import org.apache.solr.request.SolrQueryRequest;
import org.apache.solr.request.SolrQueryResponse; import org.apache.solr.request.SolrQueryResponse;
import org.apache.solr.update.CommitUpdateCommand; import org.apache.solr.update.CommitUpdateCommand;
/**
* This handler could be replace with the standard XmlUpdateHandler with
* a default parameter set to commit=true
*
* TODO? -- Delete it now, while it is not in mainstream use yet...
*
*/
@Deprecated
public class CommitRequestHandler extends RequestHandlerBase public class CommitRequestHandler extends RequestHandlerBase
{ {
@Override @Override
public void handleRequestBody(SolrQueryRequest req, SolrQueryResponse rsp) throws IOException public void handleRequestBody(SolrQueryRequest req, SolrQueryResponse rsp) throws IOException
{ {
SolrParams params = req.getParams(); // common parameters
RequestHandlerUtils.handleCommit(req, rsp, true);
boolean optimize = params.getBool( UpdateParams.OPTIMIZE, false );
CommitUpdateCommand cmd = new CommitUpdateCommand( optimize );
cmd.waitFlush = params.getBool( UpdateParams.WAIT_FLUSH, cmd.waitFlush );
cmd.waitSearcher = params.getBool( UpdateParams.WAIT_SEARCHER, cmd.waitSearcher );
SolrCore.getSolrCore().getUpdateHandler().commit( cmd );
if( optimize ) {
rsp.add( "optimize", "true" );
}
else {
rsp.add( "commit", "true" );
}
} }
//////////////////////// SolrInfoMBeans methods ////////////////////// //////////////////////// SolrInfoMBeans methods //////////////////////
@ -56,16 +51,16 @@ public class CommitRequestHandler extends RequestHandlerBase
@Override @Override
public String getVersion() { public String getVersion() {
return "$Revision:$"; return "$Revision$";
} }
@Override @Override
public String getSourceId() { public String getSourceId() {
return "$Id:$"; return "$Id$";
} }
@Override @Override
public String getSource() { public String getSource() {
return "$URL:$"; return "$URL$";
} }
} }

View File

@ -73,7 +73,10 @@ public class XmlUpdateRequestHandler extends RequestHandlerBase
{ {
Iterable<ContentStream> streams = req.getContentStreams(); Iterable<ContentStream> streams = req.getContentStreams();
if( streams == null ) { if( streams == null ) {
throw new SolrException( 400, "missing content stream" ); if( !RequestHandlerUtils.handleCommit(req, rsp, false) ) {
throw new SolrException( 400, "missing content stream" );
}
return;
} }
// Cycle through each stream // Cycle through each stream
@ -86,6 +89,9 @@ public class XmlUpdateRequestHandler extends RequestHandlerBase
IOUtils.closeQuietly(reader); IOUtils.closeQuietly(reader);
} }
} }
// perhaps commit when we are done
RequestHandlerUtils.handleCommit(req, rsp, false);
} }