Disable HTTP request for region

This commit is contained in:
Dan Paulat 2022-09-06 23:22:58 -05:00
parent e69f9a8008
commit 17ebfd609d
4 changed files with 52 additions and 2 deletions

View file

@ -0,0 +1,13 @@
#pragma once
#include <string>
namespace scwx
{
namespace util
{
void SetEnvironment(const std::string& name, const std::string& value);
} // namespace util
} // namespace scwx

View file

@ -1,4 +1,5 @@
#include <scwx/provider/aws_nexrad_data_provider.hpp> #include <scwx/provider/aws_nexrad_data_provider.hpp>
#include <scwx/util/environment.hpp>
#include <scwx/util/logger.hpp> #include <scwx/util/logger.hpp>
#include <scwx/util/map.hpp> #include <scwx/util/map.hpp>
#include <scwx/util/time.hpp> #include <scwx/util/time.hpp>
@ -51,6 +52,9 @@ public:
lastModified_ {}, lastModified_ {},
updatePeriod_ {} updatePeriod_ {}
{ {
// Disable HTTP request for region
util::SetEnvironment("AWS_EC2_METADATA_DISABLED", "true");
Aws::Client::ClientConfiguration config; Aws::Client::ClientConfiguration config;
config.region = region_; config.region = region_;

View file

@ -0,0 +1,31 @@
#include <scwx/util/environment.hpp>
#include <scwx/util/logger.hpp>
#ifndef _WIN32
# include <cstdlib>
#endif
namespace scwx
{
namespace util
{
static const std::string logPrefix_ {"scwx::util::environment"};
static const auto logger_ = util::Logger::Create(logPrefix_);
void SetEnvironment(const std::string& name, const std::string& value)
{
#ifdef _WIN32
errno_t error = _putenv_s(name.c_str(), value.c_str());
#else
int error = setenv(name.c_str(), value.c_str(), 1);
#endif
if (error != 0)
{
logger_->warn("Could not set environment variable: {}={}", name, value);
}
}
} // namespace util
} // namespace scwx

View file

@ -44,7 +44,8 @@ set(SRC_PROVIDER source/scwx/provider/aws_level2_data_provider.cpp
source/scwx/provider/aws_nexrad_data_provider.cpp source/scwx/provider/aws_nexrad_data_provider.cpp
source/scwx/provider/nexrad_data_provider.cpp source/scwx/provider/nexrad_data_provider.cpp
source/scwx/provider/nexrad_data_provider_factory.cpp) source/scwx/provider/nexrad_data_provider_factory.cpp)
set(HDR_UTIL include/scwx/util/float.hpp set(HDR_UTIL include/scwx/util/environment.hpp
include/scwx/util/float.hpp
include/scwx/util/iterator.hpp include/scwx/util/iterator.hpp
include/scwx/util/logger.hpp include/scwx/util/logger.hpp
include/scwx/util/map.hpp include/scwx/util/map.hpp
@ -53,7 +54,8 @@ set(HDR_UTIL include/scwx/util/float.hpp
include/scwx/util/threads.hpp include/scwx/util/threads.hpp
include/scwx/util/time.hpp include/scwx/util/time.hpp
include/scwx/util/vectorbuf.hpp) include/scwx/util/vectorbuf.hpp)
set(SRC_UTIL source/scwx/util/float.cpp set(SRC_UTIL source/scwx/util/environment.cpp
source/scwx/util/float.cpp
source/scwx/util/logger.cpp source/scwx/util/logger.cpp
source/scwx/util/rangebuf.cpp source/scwx/util/rangebuf.cpp
source/scwx/util/streams.cpp source/scwx/util/streams.cpp