1 #ifndef DATA_DEDUPLICATION_SERVICE_DBMANAGER_H
2 #define DATA_DEDUPLICATION_SERVICE_DBMANAGER_H
65 int createDatabase(std::string_view dbName);
71 int dropDatabase(std::string_view dbName);
87 std::vector<std::pair<indexType, std::string>> getAllFiles(std::string_view dirPath);
95 indexType createFile(std::string_view filePath, uintmax_t fileSize = 0,
size_t segmentSize = 0,
103 indexType createDirectory(std::string_view dirPath);
116 int deleteDirectory(std::string_view directoryPath);
124 int getFileStreamed(std::string_view fileName, std::ostream &output,
134 int insertFileFromStream(std::string_view fileName, std::istream &in,
size_t segmentSize, std::size_t fileSize,
142 int finishFileProcessing(std::string_view filePath,
indexType fileId);
159 template<
typename ResultType,
typename ... Args>
160 tl::expected<ResultType, int>
172 template<
typename ResultType,
typename ... Args>
173 tl::expected<ResultType, int>
Database manager that handles database management.
Definition: dbManager.h:39
tl::expected< ResultType, int > executeInTransaction(ResultType(*call)(trasnactionType &, Args ...), Args &&... args)
Definition: dbManager.h:161
~dbManager()
Definition: dbManager.h:148
const myConnString & getCString() const
Definition: dbManager.h:50
dbManager(myConnString &ss)
Definition: dbManager.h:43
void disconnect()
Definition: dbManager.h:56
void setCString(myConnString &ss)
Definition: dbManager.h:45
tl::expected< ResultType, int > executeInTransaction(const std::function< ResultType(trasnactionType &, Args ...)> &call, Args &&... args)
Definition: dbManager.h:174
dbManager()
Definition: dbManager.h:41
bool checkConnection()
Definition: dbManager.h:144
db_services namespace
Definition: dbCommon.h:17
pqxx::transaction< pqxx::isolation_level::read_committed > trasnactionType
Definition: dbCommon.h:35
int64_t indexType
Definition: dbCommon.h:34
tl::expected< ResultType, int > executeInTransaction(conPtr &conn, ResultType(*call)(trasnactionType &, Args ...), Args &&... args)
Definition: dbCommon.h:246
bool checkConnection(const conPtr &conn)
Definition: dbCommon.cpp:309
void diconnect(conPtr &conn)
Definition: dbManager.cpp:4
std::shared_ptr< connectionType > conPtr
Definition: dbCommon.h:37
hash utils namespace
Definition: HashUtils.h:19
hash_function
Definition: HashUtils.h:28
@ SHA_256
Definition: HashUtils.h:30
paramType
Definition: myConcepts.h:57
@ EmptyParameterValue
Definition: myConcepts.h:58
clockType gClk
Definition: myConcepts.cpp:9
Structure to store and format connection string.
Definition: myConnString.h:15