11#include <promeki/config.h>
12#if PROMEKI_ENABLE_HTTP
22PROMEKI_NAMESPACE_BEGIN
75class DebugServer :
public ObjectBase {
76 PROMEKI_OBJECT(DebugServer, ObjectBase)
79 static const String DefaultApiPrefix;
82 static const String DefaultBindHost;
85 explicit DebugServer(ObjectBase *parent =
nullptr);
88 ~DebugServer()
override;
94 Error listen(
const SocketAddress &address);
103 Error listen(uint16_t port);
109 bool isListening()
const;
112 SocketAddress serverAddress()
const;
115 HttpServer &httpServer() {
return _server; }
118 const HttpServer &httpServer()
const {
return _server; }
128 HttpApi &httpApi() {
return _api; }
131 const HttpApi &httpApi()
const {
return _api; }
150 void installDefaultModules();
164 static Result<SocketAddress> parseSpec(
const String &spec);