code: public void map(K key, V val,
                    OutputCollector<Text, Text> output, Reporter reporter) throws IOException {
      String valStr = val.toString();
      String[] inputValFields = valStr.split(this.fieldSeparator);
      String[] inputKeyFields = null;
      String[] fields = null;
      if (this.ignoreInputKey) {
        fields = inputValFields;
      } else {
        inputKeyFields = key.toString().split(this.fieldSeparator);
        fields = new String[inputKeyFields.length + inputValFields.length];
        int i = 0;
        for (i = 0; i < inputKeyFields.length; i++) {
          fields[i] = inputKeyFields[i];
        }
        for (i = 0; i < inputValFields.length; i++) {
          fields[inputKeyFields.length + i] = inputValFields[i];
        }
      }
      String newKey = selectFields(fields, mapOutputKeyFieldList, -1,
          fieldSeparator);
      String newVal = selectFields(fields, mapOutputValueFieldList,
          allMapValueFieldsFrom, fieldSeparator);
  
      if (newKey == null) {
        newKey = newVal;
        newVal = null;
      }
      Text newTextKey = emptyText;
      if (newKey != null) {
        newTextKey = new Text(newKey);
      }
      Text newTextVal = emptyText;
      if (newTextVal != null) {
        newTextVal = new Text(newVal);
      }
      output.collect(newTextKey, newTextVal);
    }
docs: The identify function. Input key/value pair is written directly to output.