class eHTTPFile: public eHTTPDataSource
{
+ DECLARE_REF(eHTTPFile);
+private:
int fd, size;
const char *mime;
int method;
void haveData(void *data, int len);
};
-class eHTTPFilePathResolver: public eHTTPPathResolver
+class eHTTPFilePathResolver: public iHTTPPathResolver
{
+ DECLARE_REF(eHTTPFilePathResolver);
+public:
struct eHTTPFilePath
{
- eString path;
- eString root;
+ std::string path;
+ std::string root;
int authorized; // must be authorized (1 means read, 2 write)
- eHTTPFilePath(eString path, eString root, int authorized): path(path), root(root), authorized(authorized)
+ eHTTPFilePath(std::string path, std::string root, int authorized): path(path), root(root), authorized(authorized)
{
}
};
ePtrList<eHTTPFilePath> translate;
public:
eHTTPFilePathResolver();
- eHTTPDataSource *getDataSource(eString request, eString path, eHTTPConnection *conn);
- void addTranslation(eString path, eString root, int auth);
+ RESULT getDataSource(eHTTPDataSourcePtr &ptr, std::string request, std::string path, eHTTPConnection *conn);
+ void addTranslation(std::string path, std::string root, int auth);
};
#endif