From e78c0aa3609e289010569079c1ee615f805d53db Mon Sep 17 00:00:00 2001 From: levlam Date: Mon, 4 Mar 2024 16:39:30 +0300 Subject: [PATCH] Add empty BusinessManager. --- CMakeLists.txt | 2 ++ SplitSource.php | 1 + td/telegram/BusinessManager.cpp | 18 ++++++++++++++++++ td/telegram/BusinessManager.h | 28 ++++++++++++++++++++++++++++ td/telegram/Global.h | 9 +++++++++ td/telegram/Td.cpp | 6 ++++++ td/telegram/Td.h | 3 +++ 7 files changed, 67 insertions(+) create mode 100644 td/telegram/BusinessManager.cpp create mode 100644 td/telegram/BusinessManager.h diff --git a/CMakeLists.txt b/CMakeLists.txt index 6497861e2..c0d98c92e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -306,6 +306,7 @@ set(TDLIB_SOURCE td/telegram/BusinessConnectedBot.cpp td/telegram/BusinessGreetingMessage.cpp td/telegram/BusinessInfo.cpp + td/telegram/BusinessManager.cpp td/telegram/BusinessRecipients.cpp td/telegram/BusinessWorkHours.cpp td/telegram/CallActor.cpp @@ -591,6 +592,7 @@ set(TDLIB_SOURCE td/telegram/BusinessConnectedBot.h td/telegram/BusinessGreetingMessage.h td/telegram/BusinessInfo.h + td/telegram/BusinessManager.h td/telegram/BusinessRecipients.h td/telegram/BusinessWorkHours.h td/telegram/CallActor.h diff --git a/SplitSource.php b/SplitSource.php index c27b039e1..b9132f035 100644 --- a/SplitSource.php +++ b/SplitSource.php @@ -313,6 +313,7 @@ function split_file($file, $chunks, $undo) { 'BusinessConnectedBot' => 'BusinessConnectedBot', 'BusinessGreetingMessage' => 'BusinessGreetingMessage', 'BusinessInfo|business_info' => 'BusinessInfo', + 'business_manager[_(-](?![.]get[(][)])|BusinessManager' => 'BusinessManager', 'BusinessRecipients' => 'BusinessRecipients', 'BusinessWorkHours' => 'BusinessWorkHours', 'callback_queries_manager[_(-](?![.]get[(][)])|CallbackQueriesManager' => 'CallbackQueriesManager', diff --git a/td/telegram/BusinessManager.cpp b/td/telegram/BusinessManager.cpp new file mode 100644 index 000000000..db197a97c --- /dev/null +++ b/td/telegram/BusinessManager.cpp @@ -0,0 +1,18 @@ +// +// Copyright Aliaksei Levin (levlam@telegram.org), Arseny Smirnov (arseny30@gmail.com) 2014-2023 +// +// Distributed under the Boost Software License, Version 1.0. (See accompanying +// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) +// +#include "td/telegram/BusinessManager.h" + +namespace td { + +BusinessManager::BusinessManager(Td *td, ActorShared<> parent) : td_(td), parent_(std::move(parent)) { +} + +void BusinessManager::tear_down() { + parent_.reset(); +} + +} // namespace td diff --git a/td/telegram/BusinessManager.h b/td/telegram/BusinessManager.h new file mode 100644 index 000000000..122af10f7 --- /dev/null +++ b/td/telegram/BusinessManager.h @@ -0,0 +1,28 @@ +// +// Copyright Aliaksei Levin (levlam@telegram.org), Arseny Smirnov (arseny30@gmail.com) 2014-2023 +// +// Distributed under the Boost Software License, Version 1.0. (See accompanying +// file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) +// +#pragma once + +#include "td/actor/actor.h" + +#include "td/utils/common.h" + +namespace td { + +class Td; + +class BusinessManager final : public Actor { + public: + BusinessManager(Td *td, ActorShared<> parent); + + private: + void tear_down() final; + + Td *td_; + ActorShared<> parent_; +}; + +} // namespace td diff --git a/td/telegram/Global.h b/td/telegram/Global.h index 88a3392d3..a2b296351 100644 --- a/td/telegram/Global.h +++ b/td/telegram/Global.h @@ -37,6 +37,7 @@ class AuthManager; class AutosaveManager; class BackgroundManager; class BoostManager; +class BusinessManager; class CallManager; class ConfigManager; class ConnectionCreator; @@ -231,6 +232,13 @@ class Global final : public ActorContext { boost_manager_ = boost_manager; } + ActorId business_manager() const { + return business_manager_; + } + void set_business_manager(ActorId business_manager) { + business_manager_ = business_manager; + } + ActorId call_manager() const { return call_manager_; } @@ -607,6 +615,7 @@ class Global final : public ActorContext { ActorId autosave_manager_; ActorId background_manager_; ActorId boost_manager_; + ActorId business_manager_; ActorId call_manager_; ActorId config_manager_; ActorId contacts_manager_; diff --git a/td/telegram/Td.cpp b/td/telegram/Td.cpp index fbf1732c9..99511aef8 100644 --- a/td/telegram/Td.cpp +++ b/td/telegram/Td.cpp @@ -24,6 +24,7 @@ #include "td/telegram/BotMenuButton.h" #include "td/telegram/BusinessAwayMessage.h" #include "td/telegram/BusinessGreetingMessage.h" +#include "td/telegram/BusinessManager.h" #include "td/telegram/BusinessWorkHours.h" #include "td/telegram/CallbackQueriesManager.h" #include "td/telegram/CallId.h" @@ -3205,6 +3206,7 @@ void Td::dec_actor_refcnt() { reset_manager(background_manager_, "BackgroundManager"); reset_manager(boost_manager_, "BoostManager"); reset_manager(bot_info_manager_, "BotInfoManager"); + reset_manager(business_manager_, "BusinessManager"); reset_manager(callback_queries_manager_, "CallbackQueriesManager"); reset_manager(common_dialog_manager_, "CommonDialogManager"); reset_manager(contacts_manager_, "ContactsManager"); @@ -3378,6 +3380,7 @@ void Td::clear() { reset_actor(ActorOwn(std::move(background_manager_actor_))); reset_actor(ActorOwn(std::move(boost_manager_actor_))); reset_actor(ActorOwn(std::move(bot_info_manager_actor_))); + reset_actor(ActorOwn(std::move(business_manager_actor_))); reset_actor(ActorOwn(std::move(common_dialog_manager_actor_))); reset_actor(ActorOwn(std::move(contacts_manager_actor_))); reset_actor(ActorOwn(std::move(country_info_manager_actor_))); @@ -3868,6 +3871,9 @@ void Td::init_managers() { G()->set_boost_manager(boost_manager_actor_.get()); bot_info_manager_ = make_unique(this, create_reference()); bot_info_manager_actor_ = register_actor("BotInfoManager", bot_info_manager_.get()); + business_manager_ = make_unique(this, create_reference()); + business_manager_actor_ = register_actor("BusinessManager", business_manager_.get()); + G()->set_business_manager(business_manager_actor_.get()); common_dialog_manager_ = make_unique(this, create_reference()); common_dialog_manager_actor_ = register_actor("CommonDialogManager", common_dialog_manager_.get()); contacts_manager_ = make_unique(this, create_reference()); diff --git a/td/telegram/Td.h b/td/telegram/Td.h index 20cff3d61..b039e6636 100644 --- a/td/telegram/Td.h +++ b/td/telegram/Td.h @@ -46,6 +46,7 @@ class AutosaveManager; class BackgroundManager; class BoostManager; class BotInfoManager; +class BusinessManager; class CallManager; class CallbackQueriesManager; class CommonDialogManager; @@ -177,6 +178,8 @@ class Td final : public Actor { ActorOwn boost_manager_actor_; unique_ptr bot_info_manager_; ActorOwn bot_info_manager_actor_; + unique_ptr business_manager_; + ActorOwn business_manager_actor_; unique_ptr common_dialog_manager_; ActorOwn common_dialog_manager_actor_; unique_ptr contacts_manager_;