diff options
author | qrort <qrort@yandex-team.com> | 2022-12-02 11:31:25 +0300 |
---|---|---|
committer | qrort <qrort@yandex-team.com> | 2022-12-02 11:31:25 +0300 |
commit | b1f4ffc9c8abff3ba58dc1ec9a9f92d2f0de6806 (patch) | |
tree | 2a23209faf0fea5586a6d4b9cee60d1b318d29fe /library/cpp/http/client/scheduler.h | |
parent | 559174a9144de40d6bb3997ea4073c82289b4974 (diff) | |
download | ydb-b1f4ffc9c8abff3ba58dc1ec9a9f92d2f0de6806.tar.gz |
remove kikimr/driver DEPENDS
Diffstat (limited to 'library/cpp/http/client/scheduler.h')
-rw-r--r-- | library/cpp/http/client/scheduler.h | 47 |
1 files changed, 0 insertions, 47 deletions
diff --git a/library/cpp/http/client/scheduler.h b/library/cpp/http/client/scheduler.h deleted file mode 100644 index 6700d7cee90..00000000000 --- a/library/cpp/http/client/scheduler.h +++ /dev/null @@ -1,47 +0,0 @@ -#pragma once - -#include "request.h" - -#include <util/generic/ptr.h> -#include <util/generic/queue.h> -#include <util/generic/strbuf.h> -#include <util/system/mutex.h> - -namespace NHttp { - using namespace NHttpFetcher; - - // Асинхронный механизм скачивания. - // Несколько документов одновременно. - // - несколько потоков - // - контроль нагрузки на хост => один объект на приложение. - // Редиректы - // Отмена запроса по таймеру. - - class IHostsPolicy { - public: - virtual ~IHostsPolicy() = default; - - //! Максимальное количество одновременных соединений к хосту. - virtual size_t GetMaxHostConnections(const TStringBuf& host) const = 0; - }; - - //! Управляет процессом скачивания документа по заданному урлу. - class TScheduler { - // host loading - // redirects - public: - TScheduler(); - - //! Получить запрос на скачивание. - TFetchRequestRef Extract(); - - //! Поместить запрос в очередь на скачивание. - void Schedule(TFetchRequestRef req); - - private: - THolder<IHostsPolicy> HostsPolicy_; - TMutex Lock_; - TQueue<TFetchRequestRef> RequestQueue_; - }; - -} |