();
@@ -284,13 +288,14 @@ public class GenerateAreaCodeData {
}
/**
- * Splits the provided area code map into multiple maps according to the provided list of output
- * binary files. A map associating output binary files to area code maps is returned as a result.
+ * Splits the provided phone prefix map into multiple maps according to the provided list of
+ * output binary files. A map associating output binary files to phone prefix maps is returned as
+ * a result.
*
* Example:
- * input map: { 12011: Location1, 12021: Location2 }
+ * input map: { 12011: Description1, 12021: Description2 }
* outputBinaryFiles: { 1201_en, 1202_en }
- * output map: { 1201_en: { 12011: Location1 }, 1202_en: { 12021: Location2 } }
+ * output map: { 1201_en: { 12011: Description1 }, 1202_en: { 12021: Description2 } }
*
*/
// @VisibleForTesting
@@ -310,12 +315,12 @@ public class GenerateAreaCodeData {
break;
}
}
- SortedMap mappingsForAreaCodeLangPair = mappingsForFiles.get(targetFile);
- if (mappingsForAreaCodeLangPair == null) {
- mappingsForAreaCodeLangPair = new TreeMap();
- mappingsForFiles.put(targetFile, mappingsForAreaCodeLangPair);
+ SortedMap mappingsForPhonePrefixLangPair = mappingsForFiles.get(targetFile);
+ if (mappingsForPhonePrefixLangPair == null) {
+ mappingsForPhonePrefixLangPair = new TreeMap();
+ mappingsForFiles.put(targetFile, mappingsForPhonePrefixLangPair);
}
- mappingsForAreaCodeLangPair.put(mapping.getKey(), mapping.getValue());
+ mappingsForPhonePrefixLangPair.put(mapping.getKey(), mapping.getValue());
}
return mappingsForFiles;
}
@@ -416,7 +421,7 @@ public class GenerateAreaCodeData {
}
/**
- * Runs the area code data generator.
+ * Runs the phone prefix data generator.
*
* @throws IOException
*/
@@ -473,6 +478,6 @@ public class GenerateAreaCodeData {
ioHandler.closeFile(fileOutputStream);
ioHandler.close();
}
- LOGGER.log(Level.INFO, "Geocoding data successfully generated.");
+ LOGGER.log(Level.INFO, "Phone prefix data successfully generated.");
}
}
diff --git a/tools/java/java-build/src/com/google/i18n/phonenumbers/geocoding/GenerateAreaCodeDataEntryPoint.java b/tools/java/java-build/src/com/google/i18n/phonenumbers/buildtools/GeneratePhonePrefixDataEntryPoint.java
similarity index 71%
rename from tools/java/java-build/src/com/google/i18n/phonenumbers/geocoding/GenerateAreaCodeDataEntryPoint.java
rename to tools/java/java-build/src/com/google/i18n/phonenumbers/buildtools/GeneratePhonePrefixDataEntryPoint.java
index ed84aafaf..9e8b12045 100644
--- a/tools/java/java-build/src/com/google/i18n/phonenumbers/geocoding/GenerateAreaCodeDataEntryPoint.java
+++ b/tools/java/java-build/src/com/google/i18n/phonenumbers/buildtools/GeneratePhonePrefixDataEntryPoint.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.google.i18n.phonenumbers.geocoding;
+package com.google.i18n.phonenumbers.buildtools;
import com.google.i18n.phonenumbers.Command;
@@ -24,16 +24,16 @@ import java.util.logging.Level;
import java.util.logging.Logger;
/**
- * Entry point class used to invoke the generation of the binary geocoding data files.
+ * Entry point class used to invoke the generation of the binary phone prefix data files.
*
* @author Philippe Liard
*/
-public class GenerateAreaCodeDataEntryPoint extends Command {
- private static final Logger LOGGER = Logger.getLogger(GenerateAreaCodeData.class.getName());
+public class GeneratePhonePrefixDataEntryPoint extends Command {
+ private static final Logger LOGGER = Logger.getLogger(GeneratePhonePrefixData.class.getName());
@Override
public String getCommandName() {
- return "GenerateAreaCodeData";
+ return "GeneratePhonePrefixData";
}
@Override
@@ -42,13 +42,13 @@ public class GenerateAreaCodeDataEntryPoint extends Command {
if (args.length != 3) {
LOGGER.log(Level.SEVERE,
- "usage: GenerateAreaCodeData /path/to/input/directory /path/to/output/directory");
+ "usage: GeneratePhonePrefixData /path/to/input/directory /path/to/output/directory");
return false;
}
try {
- GenerateAreaCodeData generateAreaCodeData =
- new GenerateAreaCodeData(new File(args[1]), new AreaCodeDataIOHandler(new File(args[2])));
- generateAreaCodeData.run();
+ GeneratePhonePrefixData generatePhonePrefixData =
+ new GeneratePhonePrefixData(new File(args[1]), new PhonePrefixDataIOHandler(new File(args[2])));
+ generatePhonePrefixData.run();
} catch (IOException e) {
LOGGER.log(Level.SEVERE, e.getMessage());
return false;
diff --git a/tools/java/java-build/src/com/google/i18n/phonenumbers/geocoding/AreaCodeDataIOHandler.java b/tools/java/java-build/src/com/google/i18n/phonenumbers/buildtools/PhonePrefixDataIOHandler.java
similarity index 84%
rename from tools/java/java-build/src/com/google/i18n/phonenumbers/geocoding/AreaCodeDataIOHandler.java
rename to tools/java/java-build/src/com/google/i18n/phonenumbers/buildtools/PhonePrefixDataIOHandler.java
index d5f6cf708..72d3a626b 100644
--- a/tools/java/java-build/src/com/google/i18n/phonenumbers/geocoding/AreaCodeDataIOHandler.java
+++ b/tools/java/java-build/src/com/google/i18n/phonenumbers/buildtools/PhonePrefixDataIOHandler.java
@@ -14,20 +14,20 @@
* limitations under the License.
*/
-package com.google.i18n.phonenumbers.geocoding;
+package com.google.i18n.phonenumbers.buildtools;
import java.io.File;
import java.io.IOException;
/**
- * Implementation of the IOHandler required by the GenerateAreaCodeData class used here to create
+ * Implementation of the IOHandler required by the GeneratePhonePrefixData class used here to create
* the output files.
*/
-class AreaCodeDataIOHandler extends AbstractAreaCodeDataIOHandler {
+class PhonePrefixDataIOHandler extends AbstractPhonePrefixDataIOHandler {
// The path to the output directory.
private final File outputPath;
- public AreaCodeDataIOHandler(File outputPath) throws IOException {
+ public PhonePrefixDataIOHandler(File outputPath) throws IOException {
if (outputPath.exists()) {
if (!outputPath.isDirectory()) {
throw new IOException("Expected directory: " + outputPath.getAbsolutePath());
diff --git a/tools/java/java-build/target/java-build-1.0-SNAPSHOT-jar-with-dependencies.jar b/tools/java/java-build/target/java-build-1.0-SNAPSHOT-jar-with-dependencies.jar
index 55e875993..1e971e49f 100644
Binary files a/tools/java/java-build/target/java-build-1.0-SNAPSHOT-jar-with-dependencies.jar and b/tools/java/java-build/target/java-build-1.0-SNAPSHOT-jar-with-dependencies.jar differ
diff --git a/tools/java/java-build/test/com/google/i18n/phonenumbers/geocoding/GenerateAreaCodeDataTest.java b/tools/java/java-build/test/com/google/i18n/phonenumbers/buildtools/GeneratePhonePrefixDataTest.java
similarity index 78%
rename from tools/java/java-build/test/com/google/i18n/phonenumbers/geocoding/GenerateAreaCodeDataTest.java
rename to tools/java/java-build/test/com/google/i18n/phonenumbers/buildtools/GeneratePhonePrefixDataTest.java
index 451f6559b..828707a92 100644
--- a/tools/java/java-build/test/com/google/i18n/phonenumbers/geocoding/GenerateAreaCodeDataTest.java
+++ b/tools/java/java-build/test/com/google/i18n/phonenumbers/buildtools/GeneratePhonePrefixDataTest.java
@@ -14,9 +14,11 @@
* limitations under the License.
*/
-package com.google.i18n.phonenumbers.geocoding;
+package com.google.i18n.phonenumbers.buildtools;
-import com.google.i18n.phonenumbers.geocoding.GenerateAreaCodeData.AreaCodeMappingHandler;
+import com.google.i18n.phonenumbers.buildtools.GeneratePhonePrefixData.PhonePrefixMappingHandler;
+import com.google.i18n.phonenumbers.prefixmapper.MappingFileProvider;
+import com.google.i18n.phonenumbers.prefixmapper.PhonePrefixMap;
import junit.framework.TestCase;
@@ -35,26 +37,26 @@ import java.util.SortedMap;
import java.util.TreeMap;
/**
- * Unittests for GenerateAreaCodeData.java
+ * Unittests for GeneratePhonePrefixData.java
*
* @author Philippe Liard
*/
-public class GenerateAreaCodeDataTest extends TestCase {
+public class GeneratePhonePrefixDataTest extends TestCase {
private static final SortedMap> AVAILABLE_DATA_FILES;
static {
SortedMap> temporaryMap = new TreeMap>();
// Languages for US.
- GenerateAreaCodeData.addConfigurationMapping(temporaryMap, new File("1_en"));
- GenerateAreaCodeData.addConfigurationMapping(temporaryMap, new File("1_en_US"));
- GenerateAreaCodeData.addConfigurationMapping(temporaryMap, new File("1_es"));
+ GeneratePhonePrefixData.addConfigurationMapping(temporaryMap, new File("1_en"));
+ GeneratePhonePrefixData.addConfigurationMapping(temporaryMap, new File("1_en_US"));
+ GeneratePhonePrefixData.addConfigurationMapping(temporaryMap, new File("1_es"));
// Languages for France.
- GenerateAreaCodeData.addConfigurationMapping(temporaryMap, new File("33_fr"));
- GenerateAreaCodeData.addConfigurationMapping(temporaryMap, new File("33_en"));
+ GeneratePhonePrefixData.addConfigurationMapping(temporaryMap, new File("33_fr"));
+ GeneratePhonePrefixData.addConfigurationMapping(temporaryMap, new File("33_en"));
// Languages for China.
- GenerateAreaCodeData.addConfigurationMapping(temporaryMap, new File("86_zh_Hans"));
+ GeneratePhonePrefixData.addConfigurationMapping(temporaryMap, new File("86_zh_Hans"));
AVAILABLE_DATA_FILES = Collections.unmodifiableSortedMap(temporaryMap);
}
@@ -80,7 +82,7 @@ public class GenerateAreaCodeDataTest extends TestCase {
public void testOutputBinaryConfiguration() throws IOException {
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
- GenerateAreaCodeData.outputBinaryConfiguration(AVAILABLE_DATA_FILES, byteArrayOutputStream);
+ GeneratePhonePrefixData.outputBinaryConfiguration(AVAILABLE_DATA_FILES, byteArrayOutputStream);
MappingFileProvider mappingFileProvider = new MappingFileProvider();
mappingFileProvider.readExternal(
new ObjectInputStream(new ByteArrayInputStream(byteArrayOutputStream.toByteArray())));
@@ -89,11 +91,11 @@ public class GenerateAreaCodeDataTest extends TestCase {
private static Map parseTextFileHelper(String input) throws IOException {
final Map mappings = new HashMap();
- GenerateAreaCodeData.parseTextFile(new ByteArrayInputStream(input.getBytes()),
- new AreaCodeMappingHandler() {
+ GeneratePhonePrefixData.parseTextFile(new ByteArrayInputStream(input.getBytes()),
+ new PhonePrefixMappingHandler() {
@Override
- public void process(int areaCode, String location) {
- mappings.put(areaCode, location);
+ public void process(int phonePrefix, String location) {
+ mappings.put(phonePrefix, location);
}
});
return mappings;
@@ -149,7 +151,7 @@ public class GenerateAreaCodeDataTest extends TestCase {
mappings.put(12022, "Location4");
Map> splitMaps =
- GenerateAreaCodeData.splitMap(mappings, outputFiles);
+ GeneratePhonePrefixData.splitMap(mappings, outputFiles);
assertEquals(2, splitMaps.size());
assertEquals("Location1", splitMaps.get(new File("1201_en")).get(12011));
assertEquals("Location2", splitMaps.get(new File("1201_en")).get(12012));
@@ -161,16 +163,16 @@ public class GenerateAreaCodeDataTest extends TestCase {
ByteArrayInputStream byteArrayInputStream = new ByteArrayInputStream(input.getBytes());
ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();
- SortedMap areaCodeMappings =
- GenerateAreaCodeData.readMappingsFromTextFile(byteArrayInputStream);
- GenerateAreaCodeData.writeToBinaryFile(areaCodeMappings, byteArrayOutputStream);
- // The byte array output stream now contains the corresponding serialized area code map. Try
+ SortedMap phonePrefixMappings =
+ GeneratePhonePrefixData.readMappingsFromTextFile(byteArrayInputStream);
+ GeneratePhonePrefixData.writeToBinaryFile(phonePrefixMappings, byteArrayOutputStream);
+ // The byte array output stream now contains the corresponding serialized phone prefix map. Try
// to deserialize it and compare it with the initial input.
- AreaCodeMap areaCodeMap = new AreaCodeMap();
- areaCodeMap.readExternal(
+ PhonePrefixMap phonePrefixMap = new PhonePrefixMap();
+ phonePrefixMap.readExternal(
new ObjectInputStream(new ByteArrayInputStream(byteArrayOutputStream.toByteArray())));
- return areaCodeMap.toString();
+ return phonePrefixMap.toString();
}
public void testConvertData() throws IOException {
@@ -188,7 +190,7 @@ public class GenerateAreaCodeDataTest extends TestCase {
assertEquals(input, dataAfterDeserialization);
}
- public void testConvertDataThrowsExceptionWithDuplicatedAreaCodes() throws IOException {
+ public void testConvertDataThrowsExceptionWithDuplicatedPhonePrefixes() throws IOException {
String input = "331|Paris\n331|Marseilles\n";
try {
@@ -200,7 +202,7 @@ public class GenerateAreaCodeDataTest extends TestCase {
}
public void testGetEnglishDataPath() {
- assertEquals("/path/en/33.txt", GenerateAreaCodeData.getEnglishDataPath("/path/fr/33.txt"));
+ assertEquals("/path/en/33.txt", GeneratePhonePrefixData.getEnglishDataPath("/path/fr/33.txt"));
}
public void testHasOverlap() {
@@ -209,8 +211,8 @@ public class GenerateAreaCodeDataTest extends TestCase {
map.put(123, "");
map.put(2345, "");
- assertTrue(GenerateAreaCodeData.hasOverlappingPrefix(1234, map));
- assertFalse(GenerateAreaCodeData.hasOverlappingPrefix(2345, map));
+ assertTrue(GeneratePhonePrefixData.hasOverlappingPrefix(1234, map));
+ assertFalse(GeneratePhonePrefixData.hasOverlappingPrefix(2345, map));
}
public void testCompressAccordingToEnglishDataMakesDescriptionEmpty() {
@@ -224,7 +226,7 @@ public class GenerateAreaCodeDataTest extends TestCase {
// The English map should not be modified.
englishMappings = Collections.unmodifiableSortedMap(englishMappings);
- GenerateAreaCodeData.compressAccordingToEnglishData(englishMappings, frenchMappings);
+ GeneratePhonePrefixData.compressAccordingToEnglishData(englishMappings, frenchMappings);
assertEquals(2, frenchMappings.size());
assertEquals("Genève", frenchMappings.get(411));
@@ -242,7 +244,7 @@ public class GenerateAreaCodeDataTest extends TestCase {
// The English map should not be modified.
englishMappings = Collections.unmodifiableSortedMap(englishMappings);
- GenerateAreaCodeData.compressAccordingToEnglishData(englishMappings, frenchMappings);
+ GeneratePhonePrefixData.compressAccordingToEnglishData(englishMappings, frenchMappings);
assertEquals(1, frenchMappings.size());
assertEquals("Genève", frenchMappings.get(411));
@@ -259,7 +261,7 @@ public class GenerateAreaCodeDataTest extends TestCase {
// The English map should not be modified.
englishMappings = Collections.unmodifiableSortedMap(englishMappings);
- GenerateAreaCodeData.compressAccordingToEnglishData(englishMappings, frenchMappings);
+ GeneratePhonePrefixData.compressAccordingToEnglishData(englishMappings, frenchMappings);
assertEquals(0, frenchMappings.size());
}
@@ -271,7 +273,7 @@ public class GenerateAreaCodeDataTest extends TestCase {
// The French map should not be modified.
frenchMappings = Collections.unmodifiableSortedMap(frenchMappings);
- GenerateAreaCodeData.removeEmptyEnglishMappings(frenchMappings, "fr");
+ GeneratePhonePrefixData.removeEmptyEnglishMappings(frenchMappings, "fr");
assertEquals(2, frenchMappings.size());
}
@@ -281,7 +283,7 @@ public class GenerateAreaCodeDataTest extends TestCase {
englishMappings.put(331, "Paris");
englishMappings.put(334, "");
- GenerateAreaCodeData.removeEmptyEnglishMappings(englishMappings, "en");
+ GeneratePhonePrefixData.removeEmptyEnglishMappings(englishMappings, "en");
assertEquals(1, englishMappings.size());
assertEquals("Paris", englishMappings.get(331));