fix timerediting
[enigma2.git] / lib / network / http_dyn.h
index d714403bc4826ff8d4dd16c517fad124b528c0ce..24e4dba18b7ce0ba6fff2b5794704ca50f05d14f 100644 (file)
@@ -5,6 +5,8 @@
 
 class eHTTPDyn: public eHTTPDataSource
 {
+       DECLARE_REF(eHTTPDyn);
+private:
        std::string result;
        int wptr, size;
 public:
@@ -13,10 +15,14 @@ public:
        int doWrite(int);
 };
 
-class eHTTPDynPathResolver: public eHTTPPathResolver
+class eHTTPDynPathResolver: public iHTTPPathResolver
 {
-       struct eHTTPDynEntry
+       DECLARE_REF(eHTTPDynPathResolver);
+private:
+       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 +30,11 @@ class eHTTPDynPathResolver: public eHTTPPathResolver
                {
                }
        };
-       ePtrList<eHTTPDynEntry> dyn;
+       eSmartPtrList<eHTTPDynEntry> 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