diff options
Diffstat (limited to 'src/zenhttp/servers/httpmulti.h')
| -rw-r--r-- | src/zenhttp/servers/httpmulti.h | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/src/zenhttp/servers/httpmulti.h b/src/zenhttp/servers/httpmulti.h new file mode 100644 index 000000000..d5b21d3c3 --- /dev/null +++ b/src/zenhttp/servers/httpmulti.h @@ -0,0 +1,32 @@ +// Copyright Epic Games, Inc. All Rights Reserved. + +#pragma once + +#include <zencore/thread.h> +#include <zenhttp/httpserver.h> + +#include <memory> + +namespace zen { + +class HttpMultiServer : public HttpServer +{ +public: + HttpMultiServer(); + ~HttpMultiServer(); + + virtual void RegisterService(HttpService& Service) override; + virtual int Initialize(int BasePort) override; + virtual void Run(bool IsInteractiveSession) override; + virtual void RequestExit() override; + virtual void Close() override; + + void AddServer(Ref<HttpServer> Server); + +private: + bool m_IsInitialized = false; + Event m_ShutdownEvent; + std::vector<Ref<HttpServer>> m_Servers; +}; + +} // namespace zen |