X-Git-Url: https://git.cweiske.de/enigma2.git/blobdiff_plain/ddc3964ed95d01e72229dc9af968a327cd84e56c..54f1c13b2a5979606411117108b60183b0835a85:/lib/network/http_dyn.h diff --git a/lib/network/http_dyn.h b/lib/network/http_dyn.h index d714403b..26fca877 100644 --- a/lib/network/http_dyn.h +++ b/lib/network/http_dyn.h @@ -5,6 +5,7 @@ class eHTTPDyn: public eHTTPDataSource { + DECLARE_REF(eHTTPDyn); std::string result; int wptr, size; public: @@ -13,10 +14,13 @@ public: int doWrite(int); }; -class eHTTPDynPathResolver: public eHTTPPathResolver +class eHTTPDynPathResolver: public iHTTPPathResolver { - struct eHTTPDynEntry + DECLARE_REF(eHTTPDynPathResolver); + struct eHTTPDynEntry: public iObject { + DECLARE_REF(eHTTPDynEntry); + public: std::string request, path; std::string (*function)(std::string request, std::string path, std::string opt, eHTTPConnection *content); @@ -24,11 +28,11 @@ class eHTTPDynPathResolver: public eHTTPPathResolver { } }; - ePtrList dyn; + eSmartPtrList dyn; public: void addDyn(std::string request, std::string path, std::string (*function)(std::string, std::string, std::string, eHTTPConnection *conn)); eHTTPDynPathResolver(); - eHTTPDataSource *getDataSource(std::string request, std::string path, eHTTPConnection *conn); + RESULT getDataSource(eHTTPDataSourcePtr &ptr, std::string request, std::string path, eHTTPConnection *conn); }; #endif