1#ifndef TEASE_TRANSFERMANAGER_H
2#define TEASE_TRANSFERMANAGER_H
4#include "transferease_global.h"
5#include "net/request.h"
6#include "tools/enumflag.h"
56 OPT_FTP_CREATE_DIRS = 1 << 1
73 bool transferIsInProgress()
const;
75 const std::string& getUserLogin()
const;
76 const std::string& getUserPasswd()
const;
77 int getNbMaxTrials()
const;
78 long getTimeoutConnection()
const;
79 long getTimeoutTransfer()
const;
83 void setUserInfos(
const std::string &username,
const std::string &passwd);
84 void setNbMaxTrials(
int nbTrials);
85 void setTimeoutConnection(
long timeout);
86 void setTimeoutTransfer(
long timeout);
96 static double transferProgressToPercent(
size_t transferTotal,
size_t transferNow);
98 static std::string flagOptionToStr(
FlagOption options,
char separator =
'|');
99 static const std::string &idErrorToStr(
IdError idErr);
103 std::unique_ptr<Impl> d_ptr;
121struct tease_enable_flags<tease::TransferManager::FlagOption>{
122 static constexpr bool enable =
true;
TypeTransfer
List of types of transfers.
Definition request.h:19
std::vector< PtrShared > List
Definition request.h:28
Use to perform download/upload of ressources easily.
Definition transfermanager.h:20
FlagOption
List of available options.
Definition transfermanager.h:52
std::function< void(Request::TypeTransfer typeTransfer, size_t transferTotal, size_t transferNow)> CbProgress
Callback called during transfer.
Definition transfermanager.h:61
std::function< void(Request::TypeTransfer typeTransfer, IdError idErr)> CbFailed
Callback called when transfer finished due to an error.
Definition transfermanager.h:63
IdError
List of errors identifiers.
Definition transfermanager.h:28
@ ERR_BUSY
Definition transfermanager.h:35
@ ERR_HOST_REFUSED
Definition transfermanager.h:41
@ ERR_INVALID_SSL
Definition transfermanager.h:34
@ ERR_MEMORY_FULL_REMOTE
Definition transfermanager.h:39
@ ERR_HOST_NOT_FOUND
Definition transfermanager.h:40
@ ERR_INTERNAL
Definition transfermanager.h:31
@ ERR_USER_ABORT
Definition transfermanager.h:36
@ ERR_MAX_TRIALS
Definition transfermanager.h:37
@ ERR_INVALID_LOGIN
Definition transfermanager.h:32
@ ERR_MEMORY_FULL_HOST
Definition transfermanager.h:38
@ ERR_INVALID_REQUEST
Definition transfermanager.h:33
std::function< void(Request::TypeTransfer typeTransfer)> CbCompleted
Callback called when transfer finished and succeed.
Definition transfermanager.h:62
std::function< void(Request::TypeTransfer typeTransfer)> CbStarted
Callback called when transfer has been started.
Definition transfermanager.h:60