public final class IdMappingUtil
extends java.lang.Object
ReplaceIdGenerators
.Modifier and Type | Field and Description |
---|---|
private static com.google.common.base.Splitter |
LINE_SPLITTER |
(package private) static char |
NEW_LINE |
Modifier | Constructor and Description |
---|---|
private |
IdMappingUtil() |
Modifier and Type | Method and Description |
---|---|
(package private) static java.lang.String |
generateSerializedIdMappings(java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.String>> idGeneratorMaps) |
static java.util.Map<java.lang.String,com.google.common.collect.BiMap<java.lang.String,java.lang.String>> |
parseSerializedIdMappings(java.lang.String idMappings)
The expected format looks like this:
|
static final char NEW_LINE
private static final com.google.common.base.Splitter LINE_SPLITTER
static java.lang.String generateSerializedIdMappings(java.util.Map<java.lang.String,java.util.Map<java.lang.String,java.lang.String>> idGeneratorMaps)
public static java.util.Map<java.lang.String,com.google.common.collect.BiMap<java.lang.String,java.lang.String>> parseSerializedIdMappings(java.lang.String idMappings)
[generatorName1] someId1:someFile:theLine:theColumn ...
[[generatorName2] someId2:someFile:theLine:theColumn] ...
The returned data is grouped by generator name (the map key). The inner map provides
mappings from id to content (file, line and column info). In a glimpse, the structure is
Map<generator name, BiMap<id, value>>
.
@throws IllegalArgumentException malformed input where there it 1) has duplicate generator name, or 2) the line has no ':' for id and its content.