org.kitesdk.morphline.solr
Class SolrServerDocumentLoader

java.lang.Object
  extended by org.kitesdk.morphline.solr.SolrServerDocumentLoader
All Implemented Interfaces:
DocumentLoader

public class SolrServerDocumentLoader
extends Object
implements DocumentLoader

A vehicle to load a list of Solr documents into a local or remote SolrServer.


Constructor Summary
SolrServerDocumentLoader(org.apache.solr.client.solrj.SolrServer server, int batchSize)
           
 
Method Summary
 void beginTransaction()
          Begins a transaction
 void commitTransaction()
          Sends any outstanding documents to the destination and waits for a positive or negative ack (i.e.
 org.apache.solr.client.solrj.SolrServer getSolrServer()
           
 void load(org.apache.solr.common.SolrInputDocument doc)
          Loads the given document into the destination
 org.apache.solr.client.solrj.response.SolrPingResponse ping()
          Issues a ping request to check if the server is alive
 org.apache.solr.client.solrj.response.UpdateResponse rollbackTransaction()
          Performs a rollback of all non-committed documents pending.
 void shutdown()
          Releases allocated resources
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SolrServerDocumentLoader

public SolrServerDocumentLoader(org.apache.solr.client.solrj.SolrServer server,
                                int batchSize)
Method Detail

beginTransaction

public void beginTransaction()
Description copied from interface: DocumentLoader
Begins a transaction

Specified by:
beginTransaction in interface DocumentLoader

load

public void load(org.apache.solr.common.SolrInputDocument doc)
          throws IOException,
                 org.apache.solr.client.solrj.SolrServerException
Description copied from interface: DocumentLoader
Loads the given document into the destination

Specified by:
load in interface DocumentLoader
Throws:
IOException
org.apache.solr.client.solrj.SolrServerException

commitTransaction

public void commitTransaction()
                       throws org.apache.solr.client.solrj.SolrServerException,
                              IOException
Description copied from interface: DocumentLoader
Sends any outstanding documents to the destination and waits for a positive or negative ack (i.e. exception). Depending on the outcome the caller should then commit or rollback the current flume transaction correspondingly.

Specified by:
commitTransaction in interface DocumentLoader
Throws:
IOException - If there is a low-level I/O error.
org.apache.solr.client.solrj.SolrServerException

rollbackTransaction

public org.apache.solr.client.solrj.response.UpdateResponse rollbackTransaction()
                                                                         throws org.apache.solr.client.solrj.SolrServerException,
                                                                                IOException
Description copied from interface: DocumentLoader
Performs a rollback of all non-committed documents pending.

Note that this is not a true rollback as in databases. Content you have previously added may have already been committed due to autoCommit, buffer full, other client performing a commit etc. So this is only a best-effort rollback.

Specified by:
rollbackTransaction in interface DocumentLoader
Throws:
IOException - If there is a low-level I/O error.
org.apache.solr.client.solrj.SolrServerException

shutdown

public void shutdown()
Description copied from interface: DocumentLoader
Releases allocated resources

Specified by:
shutdown in interface DocumentLoader

ping

public org.apache.solr.client.solrj.response.SolrPingResponse ping()
                                                            throws org.apache.solr.client.solrj.SolrServerException,
                                                                   IOException
Description copied from interface: DocumentLoader
Issues a ping request to check if the server is alive

Specified by:
ping in interface DocumentLoader
Throws:
IOException - If there is a low-level I/O error.
org.apache.solr.client.solrj.SolrServerException

getSolrServer

public org.apache.solr.client.solrj.SolrServer getSolrServer()


Copyright © 2013–2014. All rights reserved.