org.apache.solr.client.solrj.impl
Class ConcurrentUpdateSolrServer

java.lang.Object
  extended by org.apache.solr.client.solrj.SolrServer
      extended by org.apache.solr.client.solrj.impl.ConcurrentUpdateSolrServer
All Implemented Interfaces:
Serializable

public class ConcurrentUpdateSolrServer
extends SolrServer

ConcurrentUpdateSolrServer buffers all added documents and writes them into open HTTP connections. This class is thread safe. Params from UpdateRequest are converted to http request parameters. When params change between UpdateRequests a new HTTP request is started. Although any SolrServer request can be made with this implementation, it is only recommended to use ConcurrentUpdateSolrServer with /update requests. The class HttpSolrServer is better suited for the query interface.

See Also:
Serialized Form

Constructor Summary
ConcurrentUpdateSolrServer(String solrServerUrl, org.apache.http.client.HttpClient client, int queueSize, int threadCount)
          Uses the supplied HttpClient to send documents to the Solr server.
ConcurrentUpdateSolrServer(String solrServerUrl, int queueSize, int threadCount)
          Uses an internaly managed HttpClient instance.
 
Method Summary
 void blockUntilFinished()
           
 void handleError(Throwable ex)
           
 NamedList<Object> request(SolrRequest request)
          SolrServer implementations need to implement how a request is actually processed
 void setConnectionTimeout(int timeout)
           
 void setParser(ResponseParser responseParser)
           
 void setRequestWriter(RequestWriter requestWriter)
           
 void setSoTimeout(int timeout)
          set soTimeout (read timeout) on the underlying HttpConnectionManager.
 void shutdown()
          Release allocated resources.
 void shutdownNow()
           
 
Methods inherited from class org.apache.solr.client.solrj.SolrServer
add, add, add, add, addBean, addBean, addBeans, addBeans, commit, commit, commit, deleteById, deleteById, deleteById, deleteById, deleteByQuery, deleteByQuery, getBinder, optimize, optimize, optimize, ping, query, query, queryAndStreamResponse, rollback
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ConcurrentUpdateSolrServer

public ConcurrentUpdateSolrServer(String solrServerUrl,
                                  int queueSize,
                                  int threadCount)
Uses an internaly managed HttpClient instance.

Parameters:
solrServerUrl - The Solr server URL
queueSize - The buffer size before the documents are sent to the server
threadCount - The number of background threads used to empty the queue

ConcurrentUpdateSolrServer

public ConcurrentUpdateSolrServer(String solrServerUrl,
                                  org.apache.http.client.HttpClient client,
                                  int queueSize,
                                  int threadCount)
Uses the supplied HttpClient to send documents to the Solr server.

Method Detail

request

public NamedList<Object> request(SolrRequest request)
                          throws SolrServerException,
                                 IOException
Description copied from class: SolrServer
SolrServer implementations need to implement how a request is actually processed

Specified by:
request in class SolrServer
Throws:
SolrServerException
IOException

blockUntilFinished

public void blockUntilFinished()

handleError

public void handleError(Throwable ex)

shutdown

public void shutdown()
Description copied from class: SolrServer
Release allocated resources.

Specified by:
shutdown in class SolrServer

setConnectionTimeout

public void setConnectionTimeout(int timeout)

setSoTimeout

public void setSoTimeout(int timeout)
set soTimeout (read timeout) on the underlying HttpConnectionManager. This is desirable for queries, but probably not for indexing.


shutdownNow

public void shutdownNow()

setParser

public void setParser(ResponseParser responseParser)

setRequestWriter

public void setRequestWriter(RequestWriter requestWriter)


Copyright © 2000-2013 Apache Software Foundation. All Rights Reserved.