Commit be95821184f9cfc5e5591c905d6e1aaec85aa0e5
1 parent
e943ca09
Allow forcing of host country code query (#3319)
Showing
4 changed files
with
8 additions
and
6 deletions
include/GTools.hpp
| @@ -164,7 +164,7 @@ namespace gammalib { | @@ -164,7 +164,7 @@ namespace gammalib { | ||
| 164 | const double& tol); | 164 | const double& tol); |
| 165 | std::string http_query(const std::string& host, | 165 | std::string http_query(const std::string& host, |
| 166 | const std::string& query); | 166 | const std::string& query); |
| 167 | - std::string host_country(void); | 167 | + std::string host_country(const bool& force_query = false); |
| 168 | GFilename gamma_filename(const std::string& name); | 168 | GFilename gamma_filename(const std::string& name); |
| 169 | } | 169 | } |
| 170 | 170 |
pyext/GTools.i
| @@ -117,6 +117,6 @@ namespace gammalib { | @@ -117,6 +117,6 @@ namespace gammalib { | ||
| 117 | const double& tol); | 117 | const double& tol); |
| 118 | std::string http_query(const std::string& host, | 118 | std::string http_query(const std::string& host, |
| 119 | const std::string& query); | 119 | const std::string& query); |
| 120 | - std::string host_country(void); | 120 | + std::string host_country(const bool& force_query = false); |
| 121 | GFilename gamma_filename(const std::string& name); | 121 | GFilename gamma_filename(const std::string& name); |
| 122 | } | 122 | } |
src/support/GDaemon.cpp
| @@ -679,8 +679,8 @@ void GDaemon::update_statistics(void) | @@ -679,8 +679,8 @@ void GDaemon::update_statistics(void) | ||
| 679 | ***************************************************************************/ | 679 | ***************************************************************************/ |
| 680 | void GDaemon::update_host_country(void) | 680 | void GDaemon::update_host_country(void) |
| 681 | { | 681 | { |
| 682 | - // Get host country code | ||
| 683 | - std::string country = gammalib::host_country(); | 682 | + // Get host country code by forcing a query |
| 683 | + std::string country = gammalib::host_country(true); | ||
| 684 | 684 | ||
| 685 | // Continue only if host country is a two-digit code | 685 | // Continue only if host country is a two-digit code |
| 686 | if (country.length() == 2) { | 686 | if (country.length() == 2) { |
src/support/GTools.cpp
| @@ -2259,6 +2259,7 @@ std::string gammalib::http_query(const std::string& host, const std::string& que | @@ -2259,6 +2259,7 @@ std::string gammalib::http_query(const std::string& host, const std::string& que | ||
| 2259 | /***********************************************************************//** | 2259 | /***********************************************************************//** |
| 2260 | * @brief Return two-digit host country code | 2260 | * @brief Return two-digit host country code |
| 2261 | * | 2261 | * |
| 2262 | + * @param[in] force_query Force query of host country code? | ||
| 2262 | * @return Host two-digit host country code. | 2263 | * @return Host two-digit host country code. |
| 2263 | * | 2264 | * |
| 2264 | * Returns two-digit host country code, either by reading the code from the | 2265 | * Returns two-digit host country code, either by reading the code from the |
| @@ -2278,6 +2279,7 @@ std::string gammalib::http_query(const std::string& host, const std::string& que | @@ -2278,6 +2279,7 @@ std::string gammalib::http_query(const std::string& host, const std::string& que | ||
| 2278 | /***********************************************************************//** | 2279 | /***********************************************************************//** |
| 2279 | * @brief Return two-digit host country code | 2280 | * @brief Return two-digit host country code |
| 2280 | * | 2281 | * |
| 2282 | + * @param[in] force_query Force query of host country code? | ||
| 2281 | * @return Host two-digit host country code. | 2283 | * @return Host two-digit host country code. |
| 2282 | * | 2284 | * |
| 2283 | * Returns two-digit host country code, either by reading the code from the | 2285 | * Returns two-digit host country code, either by reading the code from the |
| @@ -2294,7 +2296,7 @@ std::string gammalib::http_query(const std::string& host, const std::string& que | @@ -2294,7 +2296,7 @@ std::string gammalib::http_query(const std::string& host, const std::string& que | ||
| 2294 | * country code it will write the results into a host-country file. | 2296 | * country code it will write the results into a host-country file. |
| 2295 | ***************************************************************************/ | 2297 | ***************************************************************************/ |
| 2296 | #endif | 2298 | #endif |
| 2297 | -std::string gammalib::host_country(void) | 2299 | +std::string gammalib::host_country(const bool& force_query) |
| 2298 | { | 2300 | { |
| 2299 | // Initialise country as static variable | 2301 | // Initialise country as static variable |
| 2300 | static std::string country; | 2302 | static std::string country; |
| @@ -2306,7 +2308,7 @@ std::string gammalib::host_country(void) | @@ -2306,7 +2308,7 @@ std::string gammalib::host_country(void) | ||
| 2306 | GFilename filename = gammalib::gamma_filename("host-country"); | 2308 | GFilename filename = gammalib::gamma_filename("host-country"); |
| 2307 | 2309 | ||
| 2308 | // Continue only if file exists | 2310 | // Continue only if file exists |
| 2309 | - if (access(filename.url().c_str(), R_OK) == 0) { | 2311 | + if ((!force_query) && (access(filename.url().c_str(), R_OK) == 0)) { |
| 2310 | 2312 | ||
| 2311 | // OpenMP critical zone to read host-country file | 2313 | // OpenMP critical zone to read host-country file |
| 2312 | #pragma omp critical(GammaLib_host_country) | 2314 | #pragma omp critical(GammaLib_host_country) |