Browse Source

Project import generated by Copybara. (#2495)

PiperOrigin-RevId: 319993252

Co-authored-by: The libphonenumber Team <noreply@google.com>
pull/2496/head
David Beaumont 6 years ago
committed by GitHub
parent
commit
6d2dbdb864
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 12 additions and 8 deletions
  1. +12
    -8
      metadata/src/main/java/com/google/i18n/phonenumbers/metadata/table/CsvParser.java

+ 12
- 8
metadata/src/main/java/com/google/i18n/phonenumbers/metadata/table/CsvParser.java View File

@ -24,7 +24,6 @@ import static com.google.common.collect.ImmutableList.toImmutableList;
import com.google.common.base.CharMatcher; import com.google.common.base.CharMatcher;
import com.google.common.collect.ImmutableList; import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableMap; import com.google.common.collect.ImmutableMap;
import com.google.common.collect.Streams;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Iterator; import java.util.Iterator;
import java.util.List; import java.util.List;
@ -73,14 +72,19 @@ public final class CsvParser {
} }
} else { } else {
ImmutableMap.Builder<String, String> map = ImmutableMap.builder(); ImmutableMap.Builder<String, String> map = ImmutableMap.builder();
int i = 0;
for (String v : Streams.iterating(row)) {
checkArgument(i < header.size(),
"too many columns (expected %s): %s", header.size(), map);
if (!v.isEmpty()) {
map.put(header.get(i++), v);
// Not a pure lambda due to the need to index columns.
row.forEach(new Consumer<String>() {
private int i = 0;
@Override
public void accept(String v) {
checkArgument(i < header.size(),
"too many columns (expected %s): %s", header.size(), map);
if (!v.isEmpty()) {
map.put(header.get(i++), v);
}
} }
}
});
handler.accept(map.build()); handler.accept(map.build());
} }
} }


Loading…
Cancel
Save