class CsvRow {

  public String getValue(String header) {
    String value = getField(header);
    if (value.isEmpty()) {
      throw new IllegalArgumentException("No value was found for field: '" + header + "'");
    }
    return value;
  }

  private  CsvRow(ImmutableList<String> headers, int lineNumber, ImmutableList<String> fields);
    CsvRow(
      ImmutableList<String> headers,
      ImmutableMap<String, Integer> searchHeaders,
      int lineNumber,
      ImmutableList<String> fields);

}