code: public void reduce(Shard key, Iterator<IntermediateForm> values,
        OutputCollector<Shard, IntermediateForm> output, Reporter reporter)
        throws IOException {
  
      LOG.info("Construct a form writer for " + key);
      IntermediateForm form = new IntermediateForm();
      form.configure(iconf);
      while (values.hasNext()) {
        IntermediateForm singleDocForm = values.next();
        form.process(singleDocForm);
      }
      form.closeWriter();
      LOG.info("Closed the form writer for " + key + ", form = " + form);
  
      output.collect(key, form);
    }
docs: /* (non-Javadoc)
  @see org.apache.hadoop.mapred.Reducer#reduce(java.lang.Object, java.util.Iterator, org.apache.hadoop.mapred.OutputCollector, org.apache.hadoop.mapred.Reporter)