root: macro: web: namespace/class name refactor

This commit is contained in:
2024-07-20 21:33:25 -07:00
parent f8494c18b4
commit aeacc69788
4 changed files with 40 additions and 15 deletions

View File

@@ -112,7 +112,7 @@ void help()
<< " 2. Load webserver and run registered commands:\n" << " 2. Load webserver and run registered commands:\n"
<< "\n" << "\n"
<< " root [0] docker_finance::macro::load(\"web/server.C\")\n" << " root [0] docker_finance::macro::load(\"web/server.C\")\n"
<< " root [1] docker_finance::macro::Web::run()\n" << " root [1] docker_finance::macro::web::Server::run()\n"
<< "\n" << "\n"
<< " Now, open your web browser to http://127.0.0.1:8080\n" << " Now, open your web browser to http://127.0.0.1:8080\n"
<< "\n" << "\n"

View File

@@ -45,8 +45,13 @@ namespace docker_finance
//! \since docker-finance 1.0.0 //! \since docker-finance 1.0.0
namespace macro namespace macro
{ {
//! \namespace docker_finance::macro::internal //! \namespace docker_finance::macro::web
//! \brief ROOT macros for internal use only //! \brief ROOT web-based macros
//! \since docker-finance 1.0.0
namespace web
{
//! \namespace docker_finance::macro::web::internal
//! \brief ROOT web-based macros for internal use only
//! \since docker-finance 1.0.0 //! \since docker-finance 1.0.0
namespace internal namespace internal
{ {
@@ -338,6 +343,7 @@ class Crypto final
Crypto::fun_facts(c2, data); Crypto::fun_facts(c2, data);
}); });
namespace utility = ::docker_finance::macro::internal::utility;
const std::string timestamp{utility::make_timestamp()}; const std::string timestamp{utility::make_timestamp()};
data.title = "Botan_RNG_" + timestamp; data.title = "Botan_RNG_" + timestamp;
@@ -358,6 +364,7 @@ class Crypto final
} }
}; };
} // namespace internal } // namespace internal
} // namespace web
} // namespace macro } // namespace macro
} // namespace docker_finance } // namespace docker_finance

View File

@@ -43,8 +43,13 @@ namespace docker_finance
//! \since docker-finance 1.0.0 //! \since docker-finance 1.0.0
namespace macro namespace macro
{ {
//! \namespace docker_finance::macro::internal //! \namespace docker_finance::macro::web
//! \brief ROOT macros for internal use only //! \brief ROOT web-based macros
//! \since docker-finance 1.0.0
namespace web
{
//! \namespace docker_finance::macro::web::internal
//! \brief ROOT web-based macros for internal use only
//! \since docker-finance 1.0.0 //! \since docker-finance 1.0.0
namespace internal namespace internal
{ {
@@ -179,6 +184,8 @@ class Meta final
//! \param column Existing CSV metadata column //! \param column Existing CSV metadata column
static void meta_sample(const std::string& column) static void meta_sample(const std::string& column)
{ {
namespace utility = ::docker_finance::macro::internal::utility;
// Import meta file // Import meta file
const std::string path{utility::get_env("global_conf_meta")}; const std::string path{utility::get_env("global_conf_meta")};
auto csv = auto csv =
@@ -222,6 +229,7 @@ class Meta final
} }
}; };
} // namespace internal } // namespace internal
} // namespace web
} // namespace macro } // namespace macro
} // namespace docker_finance } // namespace docker_finance

View File

@@ -35,41 +35,51 @@ namespace docker_finance
//! \since docker-finance 1.0.0 //! \since docker-finance 1.0.0
namespace macro namespace macro
{ {
//! \namespace docker_finance::macro::web
//! \brief ROOT web-based macros
//! \since docker-finance 1.0.0
namespace web
{
//! \brief Web server managing class //! \brief Web server managing class
//! \ingroup cpp_macro //! \ingroup cpp_macro
//! \since docker-finance 1.0.0 //! \since docker-finance 1.0.0
class Web final class Server final
{ {
public: public:
Web() = default; Server() = default;
~Web() = default; ~Server() = default;
Web(const Web&) = delete; Server(const Server&) = delete;
Web& operator=(const Web&) = delete; Server& operator=(const Server&) = delete;
Web(Web&&) = default; Server(Server&&) = default;
Web& operator=(Web&&) = default; Server& operator=(Server&&) = default;
private: private:
//! \brief ROOT HTTP server command registrar //! \brief ROOT HTTP server command registrar
//! \details Registers internal macros //! \details Registers internal macros
static void register_commands() static void register_commands()
{ {
namespace internal = ::docker_finance::macro::internal;
internal::Command::load({"web/internal/crypto.C"}); internal::Command::load({"web/internal/crypto.C"});
internal::g_HTTPServer->RegisterCommand( internal::g_HTTPServer->RegisterCommand(
"/rng_sample", "/rng_sample",
"::docker_finance::macro::internal::Crypto::rng_sample(\"%arg1%\")"); "::docker_finance::macro::web::internal::Crypto::rng_sample(\"%arg1%"
"\")");
internal::Command::load({"web/internal/meta.C"}); internal::Command::load({"web/internal/meta.C"});
internal::g_HTTPServer->RegisterCommand( internal::g_HTTPServer->RegisterCommand(
"/meta_sample", "/meta_sample",
"::docker_finance::macro::internal::Meta::meta_sample(\"%arg1%\")"); "::docker_finance::macro::web::internal::Meta::meta_sample(\"%arg1%"
"\")");
} }
public: public:
//! \brief Start webserver //! \brief Start webserver
static void run() { Web::register_commands(); } static void run() { Server::register_commands(); }
}; };
} // namespace web
} // namespace macro } // namespace macro
} // namespace docker_finance } // namespace docker_finance