summaryrefslogtreecommitdiff
path: root/server/modules/downloaders/curl/include/curl_download.h
diff options
context:
space:
mode:
authorGluzskiy Alexandr <sss@sss.chaoslab.ru>2015-08-25 13:17:30 +0300
committerGluzskiy Alexandr <sss@sss.chaoslab.ru>2015-08-25 13:17:30 +0300
commit1fdf82ec8346c12d19c9a013080ca4c26a3cb6d6 (patch)
treed50030c765ed83ebf49557c1a0c8ca1f38b0d4c9 /server/modules/downloaders/curl/include/curl_download.h
parent493733c837eb74b902e3db1521689fb8f088f6d1 (diff)
protocol:
use int32 instead of strings for id's in structures server: curl module: work in progress
Diffstat (limited to 'server/modules/downloaders/curl/include/curl_download.h')
-rw-r--r--server/modules/downloaders/curl/include/curl_download.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/server/modules/downloaders/curl/include/curl_download.h b/server/modules/downloaders/curl/include/curl_download.h
new file mode 100644
index 0000000..1a43b29
--- /dev/null
+++ b/server/modules/downloaders/curl/include/curl_download.h
@@ -0,0 +1,30 @@
+#ifndef CURL_DOWNLOAD_H
+#define CURL_DOWNLOAD_H
+
+#include <api_module_downloader.h>
+#include <curl/curl.h>
+
+enum download_state {running, stopped};
+
+class curl_download
+{
+ public:
+ curl_download(std::map<std::string, std::string> params, core_api *a);
+ virtual ~curl_download();
+
+ void start();
+ void stop();
+ const bool get_cancel_state()
+ {
+ return cancel_transfer;
+ }
+ private:
+ void perform_internal();
+ download_s api_download;
+ CURL *easy_handle;
+ bool cancel_transfer;
+ download_state state;
+ std::string download_path;
+};
+
+#endif // CURL_DOWNLOAD_H