org.apache.solr.morphlines.solr

## Class GenerateSolrSequenceKeyBuilder

- java.lang.Object
- - 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

    Constructors
    Constructor and Description
    `GenerateSolrSequenceKeyBuilder()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `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-2016 Apache Software Foundation. All Rights Reserved.