mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2025-04-26 16:46:31 +00:00
don't do things if the web server isn't enabled
This commit is contained in:
parent
5839a888bb
commit
394fcc050c
@ -93,19 +93,17 @@ int main(int argc, char** argv) {
|
||||
}
|
||||
|
||||
// setup the chat api web server
|
||||
bool web_server_enabled = Game::config->GetValue("web_server_enabled") == "1";
|
||||
const uint32_t web_server_port = GeneralUtils::TryParse<uint32_t>(Game::config->GetValue("web_server_port")).value_or(2005);
|
||||
if (web_server_enabled && !Game::web.Startup("localhost", web_server_port)) {
|
||||
// if we want the web api and it fails to start, exit
|
||||
if (Game::config->GetValue("web_server_enabled") == "1" && !Game::web.Startup("localhost", web_server_port)) {
|
||||
// if we want the web server and it fails to start, exit
|
||||
LOG("Failed to start web server, shutting down.");
|
||||
Database::Destroy("ChatServer");
|
||||
delete Game::logger;
|
||||
delete Game::config;
|
||||
return EXIT_FAILURE;
|
||||
}
|
||||
if (web_server_enabled) {
|
||||
ChatWeb::RegisterRoutes();
|
||||
}
|
||||
|
||||
if (Game::web.IsEnabled()) ChatWeb::RegisterRoutes();
|
||||
|
||||
//Find out the master's IP:
|
||||
std::string masterIP;
|
||||
@ -169,10 +167,8 @@ int main(int argc, char** argv) {
|
||||
packet = nullptr;
|
||||
}
|
||||
|
||||
//Check and handle web requests:
|
||||
if (web_server_enabled) {
|
||||
Game::web.ReceiveRequests();
|
||||
}
|
||||
// Check and handle web requests:
|
||||
if (Game::web.IsEnabled()) Game::web.ReceiveRequests();
|
||||
|
||||
//Push our log every 30s:
|
||||
if (framesSinceLastFlush >= logFlushTime) {
|
||||
|
@ -156,6 +156,7 @@ void HandleWSGetSubscriptions(mg_connection* connection, json data) {
|
||||
}
|
||||
|
||||
void HandleMessages(mg_connection* connection, int message, void* message_data) {
|
||||
if (!Game::web.IsEnabled()) return;
|
||||
switch (message) {
|
||||
case MG_EV_HTTP_MSG:
|
||||
HandleHTTPMessage(connection, static_cast<mg_http_message*>(message_data));
|
||||
@ -232,7 +233,7 @@ bool Web::Startup(const std::string& listen_ip, const uint32_t listen_port) {
|
||||
.name = "getSubscriptions",
|
||||
.handle = HandleWSGetSubscriptions
|
||||
});
|
||||
|
||||
enabled = true;
|
||||
return true;
|
||||
}
|
||||
|
||||
@ -241,6 +242,8 @@ void Web::ReceiveRequests() {
|
||||
}
|
||||
|
||||
void Web::SendWSMessage(const std::string subscription, json& data) {
|
||||
if (!Game::web.enabled) return;
|
||||
|
||||
// find subscription
|
||||
auto subItr = std::find(g_WSSubscriptions.begin(), g_WSSubscriptions.end(), subscription);
|
||||
if (subItr == g_WSSubscriptions.end()) {
|
||||
|
@ -49,8 +49,10 @@ public:
|
||||
void RegisterHTTPRoute(HTTPRoute route);
|
||||
void RegisterWSEvent(WSEvent event);
|
||||
void RegisterWSSubscription(const std::string& subscription);
|
||||
bool IsEnabled() const { return enabled; };
|
||||
private:
|
||||
mg_mgr mgr;
|
||||
bool enabled = false;
|
||||
};
|
||||
|
||||
#endif // !__WEB_H__
|
||||
|
Loading…
x
Reference in New Issue
Block a user