diff --git a/java/build.xml b/java/build.xml
index b5fc72734..53b18ef00 100644
--- a/java/build.xml
+++ b/java/build.xml
@@ -35,12 +35,9 @@
-
-
-
-
+
@@ -48,19 +45,12 @@
-
+
-
-
-
-
-
-
-
-
+
-
+
@@ -82,7 +72,7 @@
-
+
diff --git a/java/pom.xml b/java/pom.xml
index 69fcb177c..a3706d5ea 100644
--- a/java/pom.xml
+++ b/java/pom.xml
@@ -88,8 +88,22 @@
test/com/google/i18n/phonenumbers/data
com/google/i18n/phonenumbers/data
+
+ test/com/google/i18n/phonenumbers/geocoding/testing_data
+ com/google/i18n/phonenumbers/geocoding/testing_data
+
+
+ org.apache.maven.plugins
+ maven-jar-plugin
+ 2.3.1
+
+
+ **/geocoding/
+
+
+
org.apache.maven.plugins
maven-source-plugin
diff --git a/java/resources/com/google/i18n/phonenumbers/GenerateAreaCodeData.java b/java/resources/com/google/i18n/phonenumbers/geocoding/GenerateAreaCodeData.java
similarity index 99%
rename from java/resources/com/google/i18n/phonenumbers/GenerateAreaCodeData.java
rename to java/resources/com/google/i18n/phonenumbers/geocoding/GenerateAreaCodeData.java
index 8123df17e..6652634df 100644
--- a/java/resources/com/google/i18n/phonenumbers/GenerateAreaCodeData.java
+++ b/java/resources/com/google/i18n/phonenumbers/geocoding/GenerateAreaCodeData.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.google.i18n.phonenumbers;
+package com.google.i18n.phonenumbers.geocoding;
import java.io.BufferedInputStream;
import java.io.BufferedReader;
diff --git a/java/src/com/google/i18n/phonenumbers/AreaCodeMap.java b/java/src/com/google/i18n/phonenumbers/geocoding/AreaCodeMap.java
similarity index 95%
rename from java/src/com/google/i18n/phonenumbers/AreaCodeMap.java
rename to java/src/com/google/i18n/phonenumbers/geocoding/AreaCodeMap.java
index 1358b924c..644c14bc0 100644
--- a/java/src/com/google/i18n/phonenumbers/AreaCodeMap.java
+++ b/java/src/com/google/i18n/phonenumbers/geocoding/AreaCodeMap.java
@@ -14,8 +14,9 @@
* limitations under the License.
*/
-package com.google.i18n.phonenumbers;
+package com.google.i18n.phonenumbers.geocoding;
+import com.google.i18n.phonenumbers.PhoneNumberUtil;
import com.google.i18n.phonenumbers.Phonenumber.PhoneNumber;
import java.io.Externalizable;
@@ -37,21 +38,14 @@ public class AreaCodeMap implements Externalizable {
private TreeSet possibleLengths = new TreeSet();
private int[] phoneNumberPrefixes;
private String[] descriptions;
- private PhoneNumberUtil phoneUtil;
+ private final PhoneNumberUtil phoneUtil = PhoneNumberUtil.getInstance();
/**
* Creates an empty {@link AreaCodeMap}. The default constructor is necessary for implementing
* {@link Externalizable}. The empty map could later populated by
* {@link #readAreaCodeMap(java.util.SortedMap)} or {@link #readExternal(java.io.ObjectInput)}.
*/
- public AreaCodeMap() {
- phoneUtil = PhoneNumberUtil.getInstance();
- }
-
- // @VisibleForTesting
- AreaCodeMap(PhoneNumberUtil phoneUtil) {
- this.phoneUtil = phoneUtil;
- }
+ public AreaCodeMap() {}
/**
* Creates an {@link AreaCodeMap} initialized with {@code sortedAreaCodeMap}.
diff --git a/java/src/com/google/i18n/phonenumbers/MappingFileProvider.java b/java/src/com/google/i18n/phonenumbers/geocoding/MappingFileProvider.java
similarity index 99%
rename from java/src/com/google/i18n/phonenumbers/MappingFileProvider.java
rename to java/src/com/google/i18n/phonenumbers/geocoding/MappingFileProvider.java
index a6b0554a5..4f04a5d2d 100644
--- a/java/src/com/google/i18n/phonenumbers/MappingFileProvider.java
+++ b/java/src/com/google/i18n/phonenumbers/geocoding/MappingFileProvider.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.google.i18n.phonenumbers;
+package com.google.i18n.phonenumbers.geocoding;
import java.io.Externalizable;
import java.io.IOException;
diff --git a/java/src/com/google/i18n/phonenumbers/PhoneNumberOfflineGeocoder.java b/java/src/com/google/i18n/phonenumbers/geocoding/PhoneNumberOfflineGeocoder.java
similarity index 94%
rename from java/src/com/google/i18n/phonenumbers/PhoneNumberOfflineGeocoder.java
rename to java/src/com/google/i18n/phonenumbers/geocoding/PhoneNumberOfflineGeocoder.java
index b4a9628cd..1489b6bbe 100644
--- a/java/src/com/google/i18n/phonenumbers/PhoneNumberOfflineGeocoder.java
+++ b/java/src/com/google/i18n/phonenumbers/geocoding/PhoneNumberOfflineGeocoder.java
@@ -14,8 +14,9 @@
* limitations under the License.
*/
-package com.google.i18n.phonenumbers;
+package com.google.i18n.phonenumbers.geocoding;
+import com.google.i18n.phonenumbers.PhoneNumberUtil;
import com.google.i18n.phonenumbers.Phonenumber.PhoneNumber;
import java.io.IOException;
@@ -35,10 +36,10 @@ import java.util.logging.Logger;
public class PhoneNumberOfflineGeocoder {
private static PhoneNumberOfflineGeocoder instance = null;
private static final String MAPPING_DATA_DIRECTORY =
- "/com/google/i18n/phonenumbers/geocoding_data/";
+ "/com/google/i18n/phonenumbers/geocoding/data/";
private static final Logger LOGGER = Logger.getLogger(PhoneNumberOfflineGeocoder.class.getName());
- private final PhoneNumberUtil phoneUtil;
+ private final PhoneNumberUtil phoneUtil = PhoneNumberUtil.getInstance();
private final String phonePrefixDataDirectory;
// The mappingFileProvider knows for which combination of countryCallingCode and language a phone
@@ -54,8 +55,7 @@ public class PhoneNumberOfflineGeocoder {
*
* @VisibleForTesting
*/
- PhoneNumberOfflineGeocoder(String phonePrefixDataDirectory, PhoneNumberUtil phoneUtil) {
- this.phoneUtil = phoneUtil;
+ PhoneNumberOfflineGeocoder(String phonePrefixDataDirectory) {
this.phonePrefixDataDirectory = phonePrefixDataDirectory;
loadMappingFileProvider();
}
@@ -90,7 +90,7 @@ public class PhoneNumberOfflineGeocoder {
ObjectInputStream in;
try {
in = new ObjectInputStream(source);
- AreaCodeMap map = new AreaCodeMap(phoneUtil);
+ AreaCodeMap map = new AreaCodeMap();
map.readExternal(in);
availablePhonePrefixMaps.put(fileName, map);
} catch (IOException e) {
@@ -109,8 +109,7 @@ public class PhoneNumberOfflineGeocoder {
*/
public static synchronized PhoneNumberOfflineGeocoder getInstance() {
if (instance == null) {
- instance =
- new PhoneNumberOfflineGeocoder(MAPPING_DATA_DIRECTORY, PhoneNumberUtil.getInstance());
+ instance = new PhoneNumberOfflineGeocoder(MAPPING_DATA_DIRECTORY);
}
return instance;
}
diff --git a/java/src/com/google/i18n/phonenumbers/geocoding_data/1_en b/java/src/com/google/i18n/phonenumbers/geocoding/data/1_en
similarity index 100%
rename from java/src/com/google/i18n/phonenumbers/geocoding_data/1_en
rename to java/src/com/google/i18n/phonenumbers/geocoding/data/1_en
diff --git a/java/src/com/google/i18n/phonenumbers/geocoding_data/31_nl b/java/src/com/google/i18n/phonenumbers/geocoding/data/31_nl
similarity index 100%
rename from java/src/com/google/i18n/phonenumbers/geocoding_data/31_nl
rename to java/src/com/google/i18n/phonenumbers/geocoding/data/31_nl
diff --git a/java/src/com/google/i18n/phonenumbers/geocoding_data/34_es b/java/src/com/google/i18n/phonenumbers/geocoding/data/34_es
similarity index 100%
rename from java/src/com/google/i18n/phonenumbers/geocoding_data/34_es
rename to java/src/com/google/i18n/phonenumbers/geocoding/data/34_es
diff --git a/java/src/com/google/i18n/phonenumbers/geocoding_data/43_de b/java/src/com/google/i18n/phonenumbers/geocoding/data/43_de
similarity index 100%
rename from java/src/com/google/i18n/phonenumbers/geocoding_data/43_de
rename to java/src/com/google/i18n/phonenumbers/geocoding/data/43_de
diff --git a/java/src/com/google/i18n/phonenumbers/geocoding_data/44_en b/java/src/com/google/i18n/phonenumbers/geocoding/data/44_en
similarity index 100%
rename from java/src/com/google/i18n/phonenumbers/geocoding_data/44_en
rename to java/src/com/google/i18n/phonenumbers/geocoding/data/44_en
diff --git a/java/src/com/google/i18n/phonenumbers/geocoding_data/46_sv b/java/src/com/google/i18n/phonenumbers/geocoding/data/46_sv
similarity index 100%
rename from java/src/com/google/i18n/phonenumbers/geocoding_data/46_sv
rename to java/src/com/google/i18n/phonenumbers/geocoding/data/46_sv
diff --git a/java/src/com/google/i18n/phonenumbers/geocoding_data/49_de b/java/src/com/google/i18n/phonenumbers/geocoding/data/49_de
similarity index 100%
rename from java/src/com/google/i18n/phonenumbers/geocoding_data/49_de
rename to java/src/com/google/i18n/phonenumbers/geocoding/data/49_de
diff --git a/java/src/com/google/i18n/phonenumbers/geocoding_data/54_es b/java/src/com/google/i18n/phonenumbers/geocoding/data/54_es
similarity index 100%
rename from java/src/com/google/i18n/phonenumbers/geocoding_data/54_es
rename to java/src/com/google/i18n/phonenumbers/geocoding/data/54_es
diff --git a/java/src/com/google/i18n/phonenumbers/geocoding_data/55_pt b/java/src/com/google/i18n/phonenumbers/geocoding/data/55_pt
similarity index 100%
rename from java/src/com/google/i18n/phonenumbers/geocoding_data/55_pt
rename to java/src/com/google/i18n/phonenumbers/geocoding/data/55_pt
diff --git a/java/src/com/google/i18n/phonenumbers/geocoding_data/56_es b/java/src/com/google/i18n/phonenumbers/geocoding/data/56_es
similarity index 100%
rename from java/src/com/google/i18n/phonenumbers/geocoding_data/56_es
rename to java/src/com/google/i18n/phonenumbers/geocoding/data/56_es
diff --git a/java/src/com/google/i18n/phonenumbers/geocoding_data/82_en b/java/src/com/google/i18n/phonenumbers/geocoding/data/82_en
similarity index 100%
rename from java/src/com/google/i18n/phonenumbers/geocoding_data/82_en
rename to java/src/com/google/i18n/phonenumbers/geocoding/data/82_en
diff --git a/java/src/com/google/i18n/phonenumbers/geocoding_data/82_ko b/java/src/com/google/i18n/phonenumbers/geocoding/data/82_ko
similarity index 100%
rename from java/src/com/google/i18n/phonenumbers/geocoding_data/82_ko
rename to java/src/com/google/i18n/phonenumbers/geocoding/data/82_ko
diff --git a/java/src/com/google/i18n/phonenumbers/geocoding_data/82_zh b/java/src/com/google/i18n/phonenumbers/geocoding/data/82_zh
similarity index 100%
rename from java/src/com/google/i18n/phonenumbers/geocoding_data/82_zh
rename to java/src/com/google/i18n/phonenumbers/geocoding/data/82_zh
diff --git a/java/src/com/google/i18n/phonenumbers/geocoding_data/82_zh_Hant b/java/src/com/google/i18n/phonenumbers/geocoding/data/82_zh_Hant
similarity index 100%
rename from java/src/com/google/i18n/phonenumbers/geocoding_data/82_zh_Hant
rename to java/src/com/google/i18n/phonenumbers/geocoding/data/82_zh_Hant
diff --git a/java/src/com/google/i18n/phonenumbers/geocoding_data/86_zh b/java/src/com/google/i18n/phonenumbers/geocoding/data/86_zh
similarity index 100%
rename from java/src/com/google/i18n/phonenumbers/geocoding_data/86_zh
rename to java/src/com/google/i18n/phonenumbers/geocoding/data/86_zh
diff --git a/java/src/com/google/i18n/phonenumbers/geocoding_data/config b/java/src/com/google/i18n/phonenumbers/geocoding/data/config
similarity index 100%
rename from java/src/com/google/i18n/phonenumbers/geocoding_data/config
rename to java/src/com/google/i18n/phonenumbers/geocoding/data/config
diff --git a/java/test/com/google/i18n/phonenumbers/AreaCodeMapTest.java b/java/test/com/google/i18n/phonenumbers/geocoding/AreaCodeMapTest.java
similarity index 92%
rename from java/test/com/google/i18n/phonenumbers/AreaCodeMapTest.java
rename to java/test/com/google/i18n/phonenumbers/geocoding/AreaCodeMapTest.java
index c393c8919..07b94518a 100644
--- a/java/test/com/google/i18n/phonenumbers/AreaCodeMapTest.java
+++ b/java/test/com/google/i18n/phonenumbers/geocoding/AreaCodeMapTest.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.google.i18n.phonenumbers;
+package com.google.i18n.phonenumbers.geocoding;
import com.google.i18n.phonenumbers.Phonenumber.PhoneNumber;
import junit.framework.TestCase;
@@ -35,19 +35,13 @@ import java.util.logging.Logger;
* @author Shaopeng Jia
*/
public class AreaCodeMapTest extends TestCase {
- private final AreaCodeMap areaCodeMap;
+ private final AreaCodeMap areaCodeMap = new AreaCodeMap();
private PhoneNumber number = new PhoneNumber();
private static final Logger LOGGER = Logger.getLogger(AreaCodeMapTest.class.getName());
static final String TEST_META_DATA_FILE_PREFIX =
"/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting";
public AreaCodeMapTest() {
- PhoneNumberUtil.resetInstance();
- PhoneNumberUtil phoneUtil = PhoneNumberUtil.getInstance(
- TEST_META_DATA_FILE_PREFIX,
- CountryCodeToRegionCodeMapForTesting.getCountryCodeToRegionCodeMap());
- areaCodeMap = new AreaCodeMap(phoneUtil);
-
SortedMap sortedMap = new TreeMap();
sortedMap.put(1212, "New York");
sortedMap.put(1480, "Arizona");
diff --git a/java/test/com/google/i18n/phonenumbers/MappingFileProviderTest.java b/java/test/com/google/i18n/phonenumbers/geocoding/MappingFileProviderTest.java
similarity index 98%
rename from java/test/com/google/i18n/phonenumbers/MappingFileProviderTest.java
rename to java/test/com/google/i18n/phonenumbers/geocoding/MappingFileProviderTest.java
index a35bc227e..83f4f5450 100644
--- a/java/test/com/google/i18n/phonenumbers/MappingFileProviderTest.java
+++ b/java/test/com/google/i18n/phonenumbers/geocoding/MappingFileProviderTest.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.google.i18n.phonenumbers;
+package com.google.i18n.phonenumbers.geocoding;
import junit.framework.TestCase;
diff --git a/java/test/com/google/i18n/phonenumbers/PhoneNumberOfflineGeocoderTest.java b/java/test/com/google/i18n/phonenumbers/geocoding/PhoneNumberOfflineGeocoderTest.java
similarity index 89%
rename from java/test/com/google/i18n/phonenumbers/PhoneNumberOfflineGeocoderTest.java
rename to java/test/com/google/i18n/phonenumbers/geocoding/PhoneNumberOfflineGeocoderTest.java
index b577e849a..39fd7876a 100644
--- a/java/test/com/google/i18n/phonenumbers/PhoneNumberOfflineGeocoderTest.java
+++ b/java/test/com/google/i18n/phonenumbers/geocoding/PhoneNumberOfflineGeocoderTest.java
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-package com.google.i18n.phonenumbers;
+package com.google.i18n.phonenumbers.geocoding;
import com.google.i18n.phonenumbers.Phonenumber.PhoneNumber;
import junit.framework.TestCase;
@@ -27,11 +27,12 @@ import java.util.Locale;
* @author Shaopeng Jia
*/
public class PhoneNumberOfflineGeocoderTest extends TestCase {
- private PhoneNumberOfflineGeocoder geocoder;
+ private final PhoneNumberOfflineGeocoder geocoder =
+ new PhoneNumberOfflineGeocoder(TEST_MAPPING_DATA_DIRECTORY);
static final String TEST_META_DATA_FILE_PREFIX =
"/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting";
private static final String TEST_MAPPING_DATA_DIRECTORY =
- "/com/google/i18n/phonenumbers/geocoding_testing_data/";
+ "/com/google/i18n/phonenumbers/geocoding/testing_data/";
// Set up some test numbers to re-use.
private static final PhoneNumber KO_NUMBER1 =
@@ -53,14 +54,6 @@ public class PhoneNumberOfflineGeocoderTest extends TestCase {
private static final PhoneNumber NUMBER_WITH_INVALID_COUNTRY_CODE =
new PhoneNumber().setCountryCode(999).setNationalNumber(2423651234L);
- public PhoneNumberOfflineGeocoderTest() {
- PhoneNumberUtil.resetInstance();
- PhoneNumberUtil phoneUtil = PhoneNumberUtil.getInstance(
- TEST_META_DATA_FILE_PREFIX,
- CountryCodeToRegionCodeMapForTesting.getCountryCodeToRegionCodeMap());
- geocoder = new PhoneNumberOfflineGeocoder(TEST_MAPPING_DATA_DIRECTORY, phoneUtil);
- }
-
public void testGetDescriptionForNumberWithNoDataFile() {
// No data file containing mappings for US numbers is available in Chinese for the unittests. As
// a result, the country name of United States in simplified Chinese is returned.
diff --git a/java/test/com/google/i18n/phonenumbers/geocoding_testing_data/1_en b/java/test/com/google/i18n/phonenumbers/geocoding/testing_data/1_en
similarity index 100%
rename from java/test/com/google/i18n/phonenumbers/geocoding_testing_data/1_en
rename to java/test/com/google/i18n/phonenumbers/geocoding/testing_data/1_en
diff --git a/java/test/com/google/i18n/phonenumbers/geocoding_testing_data/82_en b/java/test/com/google/i18n/phonenumbers/geocoding/testing_data/82_en
similarity index 100%
rename from java/test/com/google/i18n/phonenumbers/geocoding_testing_data/82_en
rename to java/test/com/google/i18n/phonenumbers/geocoding/testing_data/82_en
diff --git a/java/test/com/google/i18n/phonenumbers/geocoding_testing_data/82_ko b/java/test/com/google/i18n/phonenumbers/geocoding/testing_data/82_ko
similarity index 100%
rename from java/test/com/google/i18n/phonenumbers/geocoding_testing_data/82_ko
rename to java/test/com/google/i18n/phonenumbers/geocoding/testing_data/82_ko
diff --git a/java/test/com/google/i18n/phonenumbers/geocoding_testing_data/86_en b/java/test/com/google/i18n/phonenumbers/geocoding/testing_data/86_en
similarity index 100%
rename from java/test/com/google/i18n/phonenumbers/geocoding_testing_data/86_en
rename to java/test/com/google/i18n/phonenumbers/geocoding/testing_data/86_en
diff --git a/java/test/com/google/i18n/phonenumbers/geocoding_testing_data/config b/java/test/com/google/i18n/phonenumbers/geocoding/testing_data/config
similarity index 100%
rename from java/test/com/google/i18n/phonenumbers/geocoding_testing_data/config
rename to java/test/com/google/i18n/phonenumbers/geocoding/testing_data/config
diff --git a/java/test/com/google/i18n/phonenumbers/geocoding_testing_data/86_zh_Hans b/java/test/com/google/i18n/phonenumbers/geocoding_testing_data/86_zh_Hans
deleted file mode 100644
index 1f05f35c9..000000000
Binary files a/java/test/com/google/i18n/phonenumbers/geocoding_testing_data/86_zh_Hans and /dev/null differ
diff --git a/java/test/com/google/i18n/phonenumbers/geocoding_testing_data/86_zh_Hant b/java/test/com/google/i18n/phonenumbers/geocoding_testing_data/86_zh_Hant
deleted file mode 100644
index f28679bde..000000000
Binary files a/java/test/com/google/i18n/phonenumbers/geocoding_testing_data/86_zh_Hant and /dev/null differ