diff --git a/cpp/CMakeLists.txt b/cpp/CMakeLists.txt index 493f39675..4b552d9f5 100644 --- a/cpp/CMakeLists.txt +++ b/cpp/CMakeLists.txt @@ -104,6 +104,7 @@ option (ISTREAM_DATA_PROVIDER "Use protoduf binary file as input for metadata" O if(ISTREAM_DATA_PROVIDER) add_definitions ("-DISTREAM_DATA_PROVIDER") + add_definitions(-DMETADATA_PATH="${METADATA_PATH}") endif() if (USE_ALTERNATE_FORMATS) diff --git a/cpp/metadata_short.dat b/cpp/metadata_short.dat index f73f1fb83..c8de96c3c 100644 --- a/cpp/metadata_short.dat +++ b/cpp/metadata_short.dat @@ -196,11 +196,10 @@ p   [158]\d{2,5}HHHH"L?1(?:00|1[25]|23|4(?:1|7\d)|5[15]|9[02-49])|555|(?:116\d|80)\d\d2100HHH* 8[1-69]\d\d28100HJGI 1(?:12|9[09])2112Hz1(?:00|1(?:[25]|6(?:00[06]|1(?:1[17]|23))|8\d\d)|23|4(?:1|7[014])|5[015]|9[02-49])|555|8[0-79]\d\d|8(?:00|4[0-2]|8[0-589])2100 150|87\d\d2150HHH=1(?:00|1(?:5|8\d\d)|23|51|9[2-4])|555|8(?:00|4[0-2]|8[0-589])2100HH H -l +q 1\d\dH" 1122112* HJGL -1122112 -1122112 H H H +11221121[1-8]\d2110 H H H  1\d\d?HH"1(?:1[6-8]|[6-8])216* HJGM1(?:1[6-8]|[6-8])2161(?:1[6-8]|[6-8])216 H H H  @@ -260,8 +259,11 @@ x 1762176  [19]\d\d(?:\d{2})?HH"&1(?:0[235]|1[2-6]|9[127])|9112102H*9[0-4689]\d{3}290000HJJO1(?:12|9[127])|9112112H921(?:0[2359]|1[0-68]|9[0-24-79])|9[0-4689]\d{3}|9112102 H9[0-4689]\d{3}290000H9[0-4689]\d{3}290000H - - 1\d\dH"11[089]2110* HJJP 11[09]21101(?:0[24]|1[089]|44|89)2102 H H H + +[01]\d\d(?:\d{7})?HH +"11[089]2110H* HJJP11[09]2110H,%000[259]\d{6}|1(?:0[24]|1[089]|44|89)2102 H H 000[259]\d{6}2 +0002000000H +   [1-9]\d{2,4}HHH"5.1(?:1(?:[246]|9\d)|5(?:01|2[127]|6[26]\d))|9992112*909\d\d290900HJKE 11[24]|9992112H1(?:0(?:[07-9]|1[0-25]|400)|1(?:[024-6]|9[0-579])|2[1-3]|3[01]|4[14]|5(?:[01][01]|2[0-24-79]|33|4[05]|5[59]|6(?:00|29|6[67]))|(?:6[035]\d|[78])\d|9(?:[02-9]\d\d|19))|(?:(?:2[0-79]|[37][0-29]|4[0-4]|6[2357]|8\d)\d|5(?:[0-7]\d|99))\d\d|9(?:09\d\d|99)|89882100 H~1(?:(?:04|6[35])\d\d|3[01]|4[14]|5(?:1\d|2[25]))|(?:(?:2[0-79]|[37][0-29]|4[0-4]|6[2357]|8\d)\d|5(?:[0-7]\d|99)|909)\d\d|898\d2130IB1(?:(?:04|6[035])\d\d|4[14]|5(?:01|55|6[26]\d))|40404|8988|909\d\d2141 diff --git a/cpp/src/phonenumbers/phonenumberutil.cc b/cpp/src/phonenumbers/phonenumberutil.cc index 85649c568..00e29223a 100644 --- a/cpp/src/phonenumbers/phonenumberutil.cc +++ b/cpp/src/phonenumbers/phonenumberutil.cc @@ -878,7 +878,7 @@ void PhoneNumberUtil::ClearMetadata() { bool UpdateMetadataFile(const string& filepath) { - boost::filesystem::path path_to = boost::filesystem::current_path(); + boost::filesystem::path path_to(METADATA_PATH); path_to += "/"; path_to += METADATA_FILE_NAME; boost::filesystem::path path_bk = path_to; @@ -983,7 +983,10 @@ PhoneNumberUtil::PhoneNumberUtil() // method inside the constructor as well to keep both in sync. PhoneMetadataCollection metadata_collection; #ifdef ISTREAM_DATA_PROVIDER - if (!LoadMetadataFromFile(METADATA_FILE_NAME, &metadata_collection)) { + boost::filesystem::path path_to(METADATA_PATH); + path_to += "/"; + path_to += METADATA_FILE_NAME; + if (!LoadMetadataFromFile(path_to.string(), &metadata_collection)) { LOG(DFATAL) << "Could not parse metadata from file."; return; } diff --git a/cpp/src/phonenumbers/shortnumberinfo.cc b/cpp/src/phonenumbers/shortnumberinfo.cc index cd81061c5..6665e7626 100644 --- a/cpp/src/phonenumbers/shortnumberinfo.cc +++ b/cpp/src/phonenumbers/shortnumberinfo.cc @@ -60,7 +60,7 @@ void ShortNumberInfo::ClearMetadata(){ bool UpdateShortMetadataFile(const string& filepath) { - boost::filesystem::path path_to = boost::filesystem::current_path(); + boost::filesystem::path path_to(METADATA_PATH); path_to += "/"; path_to += METADATA_SHORT_FILE_NAME; boost::filesystem::path path_bk = path_to; @@ -126,7 +126,10 @@ ShortNumberInfo::ShortNumberInfo() PhoneMetadataCollection metadata_collection; #ifdef ISTREAM_DATA_PROVIDER - if (!LoadMetadataFromFile(METADATA_SHORT_FILE_NAME, &metadata_collection)) { + boost::filesystem::path path_to(METADATA_PATH); + path_to += "/"; + path_to += METADATA_SHORT_FILE_NAME; + if (!LoadMetadataFromFile(path_to.string(), &metadata_collection)) { LOG(DFATAL) << "Could not parse metadata from file."; return; } diff --git a/cpp/test/phonenumbers/phonenumberutil_test.cc b/cpp/test/phonenumbers/phonenumberutil_test.cc index 59f5527cf..d0b1a5000 100644 --- a/cpp/test/phonenumbers/phonenumberutil_test.cc +++ b/cpp/test/phonenumbers/phonenumberutil_test.cc @@ -168,8 +168,9 @@ TEST_F(PhoneNumberUtilTest, InterchangeInvalidCodepoints) { #ifdef ISTREAM_DATA_PROVIDER TEST_F(PhoneNumberUtilTest, ReloadMetadata) { - const string filename = "metadata.dat"; - EXPECT_TRUE(phone_util_.ReloadMetadata(filename)); + string path(METADATA_PATH); + path.append("/metadata.dat"); + EXPECT_TRUE(phone_util_.ReloadMetadata(path)); } #endif diff --git a/cpp/test/phonenumbers/shortnumberinfo_test.cc b/cpp/test/phonenumbers/shortnumberinfo_test.cc index de084fd42..ab379acc9 100644 --- a/cpp/test/phonenumbers/shortnumberinfo_test.cc +++ b/cpp/test/phonenumbers/shortnumberinfo_test.cc @@ -98,8 +98,9 @@ TEST_F(ShortNumberInfoTest, IsValidShortNumber) { #ifdef ISTREAM_DATA_PROVIDER TEST_F(ShortNumberInfoTest, ReloadMetadata) { - const string filename = "metadata_short.dat"; - EXPECT_TRUE(short_info_.ReloadMetadata(filename)); + string path(METADATA_PATH); + path.append("/metadata_short.dat"); + EXPECT_TRUE(short_info_.ReloadMetadata(path)); } #endif