org.apache.solr.morphlines.solr
Class GenerateSolrSequenceKeyBuilder

java.lang.Object
  extended by org.apache.solr.morphlines.solr.GenerateSolrSequenceKeyBuilder
All Implemented Interfaces:
org.kitesdk.morphline.api.CommandBuilder

public final class GenerateSolrSequenceKeyBuilder
extends Object
implements org.kitesdk.morphline.api.CommandBuilder

A command that assigns a record unique key that is the concatenation of the given baseIdField record field, followed by a running count of the record number within the current session. The count is reset to zero whenever a "startSession" notification is received.

For example, assume a CSV file containing multiple records but no unique ids, and the baseIdField field is the filesystem path of the file. Now this command can be used to assign the following record values to Solr's unique key field: $path#0, $path#1, ... $path#N.

The name of the unique key field is fetched from Solr's schema.xml file, as directed by the solrLocator configuration parameter.


Constructor Summary
GenerateSolrSequenceKeyBuilder()
           
 
Method Summary
 org.kitesdk.morphline.api.Command build(com.typesafe.config.Config config, org.kitesdk.morphline.api.Command parent, org.kitesdk.morphline.api.Command child, org.kitesdk.morphline.api.MorphlineContext context)
           
 Collection<String> getNames()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

GenerateSolrSequenceKeyBuilder

public GenerateSolrSequenceKeyBuilder()
Method Detail

getNames

public Collection<String> getNames()
Specified by:
getNames in interface org.kitesdk.morphline.api.CommandBuilder

build

public org.kitesdk.morphline.api.Command build(com.typesafe.config.Config config,
                                               org.kitesdk.morphline.api.Command parent,
                                               org.kitesdk.morphline.api.Command child,
                                               org.kitesdk.morphline.api.MorphlineContext context)
Specified by:
build in interface org.kitesdk.morphline.api.CommandBuilder


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