aboutsummaryrefslogtreecommitdiffstats
path: root/library/cpp/tvmauth/client/misc/threaded_updater.cpp
diff options
context:
space:
mode:
authorcerevra <cerevra@yandex-team.ru>2022-02-10 16:45:58 +0300
committerDaniil Cherednik <dcherednik@yandex-team.ru>2022-02-10 16:45:58 +0300
commitbf41dd01f6c920583e9faae7cd55ed25e547e052 (patch)
treeec7c8c285ffa648a5c5efeff453787a15ab811ac /library/cpp/tvmauth/client/misc/threaded_updater.cpp
parente2c3e3004f7cd68441cefcfa4aaccd3d8051c846 (diff)
downloadydb-bf41dd01f6c920583e9faae7cd55ed25e547e052.tar.gz
Restoring authorship annotation for <cerevra@yandex-team.ru>. Commit 1 of 2.
Diffstat (limited to 'library/cpp/tvmauth/client/misc/threaded_updater.cpp')
-rw-r--r--library/cpp/tvmauth/client/misc/threaded_updater.cpp206
1 files changed, 103 insertions, 103 deletions
diff --git a/library/cpp/tvmauth/client/misc/threaded_updater.cpp b/library/cpp/tvmauth/client/misc/threaded_updater.cpp
index 5d21ce67a7..0e6f9dbd66 100644
--- a/library/cpp/tvmauth/client/misc/threaded_updater.cpp
+++ b/library/cpp/tvmauth/client/misc/threaded_updater.cpp
@@ -1,111 +1,111 @@
-#include "threaded_updater.h"
-
-#include <library/cpp/tvmauth/client/exception.h>
-
-#include <util/string/builder.h>
-#include <util/system/spin_wait.h>
+#include "threaded_updater.h"
+
+#include <library/cpp/tvmauth/client/exception.h>
+
+#include <util/string/builder.h>
+#include <util/system/spin_wait.h>
#include <util/system/thread.h>
-
-namespace NTvmAuth {
- TThreadedUpdaterBase::TThreadedUpdaterBase(TDuration workerAwakingPeriod,
- TLoggerPtr logger,
- const TString& url,
+
+namespace NTvmAuth {
+ TThreadedUpdaterBase::TThreadedUpdaterBase(TDuration workerAwakingPeriod,
+ TLoggerPtr logger,
+ const TString& url,
ui16 port,
TDuration socketTimeout,
TDuration connectTimeout)
- : WorkerAwakingPeriod_(workerAwakingPeriod)
- , Logger_(std::move(logger))
- , TvmUrl_(url)
- , TvmPort_(port)
+ : WorkerAwakingPeriod_(workerAwakingPeriod)
+ , Logger_(std::move(logger))
+ , TvmUrl_(url)
+ , TvmPort_(port)
, TvmSocketTimeout_(socketTimeout)
, TvmConnectTimeout_(connectTimeout)
- , IsStopped_(true)
- {
- Y_ENSURE_EX(Logger_, TNonRetriableException() << "Logger is required");
-
- ServiceTicketsDurations_.RefreshPeriod = TDuration::Hours(1);
- ServiceTicketsDurations_.Expiring = TDuration::Hours(2);
- ServiceTicketsDurations_.Invalid = TDuration::Hours(11);
-
- PublicKeysDurations_.RefreshPeriod = TDuration::Days(1);
- PublicKeysDurations_.Expiring = TDuration::Days(2);
- PublicKeysDurations_.Invalid = TDuration::Days(6);
- }
-
- TThreadedUpdaterBase::~TThreadedUpdaterBase() {
- StopWorker();
- }
-
- void TThreadedUpdaterBase::StartWorker() {
- if (HttpClient_) {
- HttpClient_->ResetConnection();
- }
- Thread_ = MakeHolder<TThread>(WorkerWrap, this);
- Thread_->Start();
- Started_.Wait();
- IsStopped_ = false;
- }
-
- void TThreadedUpdaterBase::StopWorker() {
- Event_.Signal();
- if (Thread_) {
- Thread_.Reset();
- }
- }
-
- TKeepAliveHttpClient& TThreadedUpdaterBase::GetClient() const {
- if (!HttpClient_) {
+ , IsStopped_(true)
+ {
+ Y_ENSURE_EX(Logger_, TNonRetriableException() << "Logger is required");
+
+ ServiceTicketsDurations_.RefreshPeriod = TDuration::Hours(1);
+ ServiceTicketsDurations_.Expiring = TDuration::Hours(2);
+ ServiceTicketsDurations_.Invalid = TDuration::Hours(11);
+
+ PublicKeysDurations_.RefreshPeriod = TDuration::Days(1);
+ PublicKeysDurations_.Expiring = TDuration::Days(2);
+ PublicKeysDurations_.Invalid = TDuration::Days(6);
+ }
+
+ TThreadedUpdaterBase::~TThreadedUpdaterBase() {
+ StopWorker();
+ }
+
+ void TThreadedUpdaterBase::StartWorker() {
+ if (HttpClient_) {
+ HttpClient_->ResetConnection();
+ }
+ Thread_ = MakeHolder<TThread>(WorkerWrap, this);
+ Thread_->Start();
+ Started_.Wait();
+ IsStopped_ = false;
+ }
+
+ void TThreadedUpdaterBase::StopWorker() {
+ Event_.Signal();
+ if (Thread_) {
+ Thread_.Reset();
+ }
+ }
+
+ TKeepAliveHttpClient& TThreadedUpdaterBase::GetClient() const {
+ if (!HttpClient_) {
HttpClient_ = MakeHolder<TKeepAliveHttpClient>(TvmUrl_, TvmPort_, TvmSocketTimeout_, TvmConnectTimeout_);
- }
-
- return *HttpClient_;
- }
-
- void TThreadedUpdaterBase::LogDebug(const TString& msg) const {
- if (Logger_) {
- Logger_->Debug(msg);
- }
- }
-
- void TThreadedUpdaterBase::LogInfo(const TString& msg) const {
- if (Logger_) {
- Logger_->Info(msg);
- }
- }
-
- void TThreadedUpdaterBase::LogWarning(const TString& msg) const {
- if (Logger_) {
- Logger_->Warning(msg);
- }
- }
-
- void TThreadedUpdaterBase::LogError(const TString& msg) const {
- if (Logger_) {
- Logger_->Error(msg);
- }
- }
-
- void* TThreadedUpdaterBase::WorkerWrap(void* arg) {
+ }
+
+ return *HttpClient_;
+ }
+
+ void TThreadedUpdaterBase::LogDebug(const TString& msg) const {
+ if (Logger_) {
+ Logger_->Debug(msg);
+ }
+ }
+
+ void TThreadedUpdaterBase::LogInfo(const TString& msg) const {
+ if (Logger_) {
+ Logger_->Info(msg);
+ }
+ }
+
+ void TThreadedUpdaterBase::LogWarning(const TString& msg) const {
+ if (Logger_) {
+ Logger_->Warning(msg);
+ }
+ }
+
+ void TThreadedUpdaterBase::LogError(const TString& msg) const {
+ if (Logger_) {
+ Logger_->Error(msg);
+ }
+ }
+
+ void* TThreadedUpdaterBase::WorkerWrap(void* arg) {
TThread::SetCurrentThreadName("TicketParserUpd");
- TThreadedUpdaterBase& this_ = *reinterpret_cast<TThreadedUpdaterBase*>(arg);
- this_.Started_.Signal();
- this_.LogDebug("Thread-worker started");
-
- while (true) {
- if (this_.Event_.WaitT(this_.WorkerAwakingPeriod_)) {
- break;
- }
-
- try {
- this_.Worker();
- this_.GetClient().ResetConnection();
- } catch (const std::exception& e) { // impossible now
- this_.LogError(TStringBuilder() << "Failed to generate new cache: " << e.what());
- }
- }
-
- this_.LogDebug("Thread-worker stopped");
- this_.IsStopped_ = true;
- return nullptr;
- }
-}
+ TThreadedUpdaterBase& this_ = *reinterpret_cast<TThreadedUpdaterBase*>(arg);
+ this_.Started_.Signal();
+ this_.LogDebug("Thread-worker started");
+
+ while (true) {
+ if (this_.Event_.WaitT(this_.WorkerAwakingPeriod_)) {
+ break;
+ }
+
+ try {
+ this_.Worker();
+ this_.GetClient().ResetConnection();
+ } catch (const std::exception& e) { // impossible now
+ this_.LogError(TStringBuilder() << "Failed to generate new cache: " << e.what());
+ }
+ }
+
+ this_.LogDebug("Thread-worker stopped");
+ this_.IsStopped_ = true;
+ return nullptr;
+ }
+}