@Override
  protected void setup(Context context) {
    doSetup(context);

    conf = context.getConfiguration();
    parser = new ImportTsv.TsvParser(conf.get(ImportTsv.COLUMNS_CONF_KEY), separator);
    if (parser.getRowKeyColumnIndex() == -1) {
      throw new RuntimeException("No row key column specified");
    }
    this.kvCreator = new CellCreator(conf);
    tags = new ArrayList<>();
  }
Handles initializing this class with objects specific to it (i.e., the parser). Common
initialization that might be leveraged by a subsclass is done in <code>doSetup</code>. Hence a
subclass may choose to override this method and call <code>doSetup</code> as well before
handling it's own custom params.
hbase-mapreduce/src/main/java/org/apache/hadoop/hbase/mapreduce/TsvImporterMapper.java