@Override Map<String,Object> extractFields(String line){
  if (!initialized) {
    init();
    initialized=true;
  }
  String[] values=fixedWidthParser.parseLine(line);
  if (hasHeader && Arrays.deepEquals(values,header)) {
    return null;
  }
  Map<String,Object> map=Maps.newHashMap();
  int i=0;
  for (  FixedWidthField field : fields) {
    map.put(field.getName(),getValue(field,values[i++]));
  }
  return map;
}

@ Override Map < String , Object > extractFields ( String line ) { if ( ! initialized ) { init ( ) ; initialized = true ; } String [ ] values = fixedWidthParser . parseLine ( line ) ; if ( hasHeader && Arrays . deepEquals ( values , header ) ) { return null ; } Map < String , Object > map = Maps . newHashMap ( ) ; int i = 0 ; for ( FixedWidthField field : fields ) { map . put ( field . getName ( ) , getValue ( field , values [ i ++ ] ) ) ; } return map ; }
extracts the fields from a fixed width record and returns a map containing field names and values
