core/src/main/java/com/twitter/elephantbird/util/W3CLogParser.java
public Map<String, String> parse(String line) throws IOException {
    Map<String, String> map = new HashMap<String, String>();

    // Get the version CRC and find the field definition
    List<String> fields = Arrays.asList(line.split(DELIMITER));
    List<String> fieldNames = fieldDef_.get(fields.get(0));
    if (fieldNames == null) {
      throw new IOException("cannot find matching field definition for CRC "
          + fields.get(0));
    }
    if (fieldNames.size() != fields.size()) {
      throw new IOException("W3C field definition and input line for CRC "
          + fields.get(0) + " does not match:\n" + line);
    }

    // Map values to field names
    for (int fieldNum = 1; fieldNum < fieldNames.size(); fieldNum++) {
      map.put(fieldNames.get(fieldNum), fields.get(fieldNum));
    }

    return map;
  }
public Map<String, String> parse(String line) throws IOException {
    Map<String, String> map = new HashMap<String, String>();

    // Get the version CRC and find the field definition
    List<String> fields = Arrays.asList(line.split(DELIMITER));
    List<String> fieldNames = fieldDef_.get(fields.get(0));
    if (fieldNames == null) {
      throw new IOException("cannot find matching field definition for CRC "
          + fields.get(0));
    }
    if (fieldNames.size() != fields.size()) {
      throw new IOException("W3C field definition and input line for CRC "
          + fields.get(0) + " does not match:\n" + line);
    }

    // Map values to field names
    for (int fieldNum = 1; fieldNum < fieldNames.size(); fieldNum++) {
      map.put(fieldNames.get(fieldNum), fields.get(fieldNum));
    }

    return map;
  }
public Map < String , String > parse ( String line ) throws IOException { Map < String , String > map = new HashMap < String , String > ( ) ; // Get the version CRC and find the field definition List < String > fields = Arrays . asList ( line . split ( DELIMITER ) ) ; List < String > fieldNames = fieldDef_ . get ( fields . get ( 0 ) ) ; if ( fieldNames == null ) { throw new IOException ( "cannot find matching field definition for CRC " + fields . get ( 0 ) ) ; } if ( fieldNames . size ( ) != fields . size ( ) ) { throw new IOException ( "W3C field definition and input line for CRC " + fields . get ( 0 ) + " does not match:\n" + line ) ; } // Map values to field names for ( int fieldNum = 1 ; fieldNum < fieldNames . size ( ) ; fieldNum ++ ) { map . put ( fieldNames . get ( fieldNum ) , fields . get ( fieldNum ) ) ; } return map ; }
<FieldName, Value>
<FieldName Value >