X-Git-Url: http://code.vuplus.com/gitweb/?p=vuplus_dvbapp;a=blobdiff_plain;f=lib%2Fnetwork%2Fhttp_dyn.h;h=6111640963e07acab53fe83ec0f650d6fb29a3ee;hp=d714403bc4826ff8d4dd16c517fad124b528c0ce;hb=ba02fb4aced5868d047a5bffbd2ed87583daee4d;hpb=2494509cd031727d92c6556089c99711d16d8af9 diff --git a/lib/network/http_dyn.h b/lib/network/http_dyn.h index d714403..6111640 100644 --- a/lib/network/http_dyn.h +++ b/lib/network/http_dyn.h @@ -5,6 +5,8 @@ class eHTTPDyn: public eHTTPDataSource { + DECLARE_REF; +private: std::string result; int wptr, size; public: @@ -13,10 +15,14 @@ public: int doWrite(int); }; -class eHTTPDynPathResolver: public eHTTPPathResolver +class eHTTPDynPathResolver: public iHTTPPathResolver { + DECLARE_REF; +private: struct eHTTPDynEntry { + DECLARE_REF; + public: std::string request, path; std::string (*function)(std::string request, std::string path, std::string opt, eHTTPConnection *content); @@ -24,11 +30,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