26 #include <yuni/core/string.h>
27 #include <yuni/job/queue/service.h>
29 #include <antares/benchmarking/DurationCollector.h>
30 #include "antares/concurrency/concurrency.h"
31 #include "antares/writer/i_writer.h"
33 namespace Antares::Solver
47 template<
class ContentT>
52 const std::string& entryPath,
66 std::mutex& pZipMutex;
70 const std::string pEntryPath;
80 ZipWriter(std::shared_ptr<Yuni::Job::QueueService> qs,
81 const std::filesystem::path& archivePath,
84 void addEntryFromBuffer(
const std::filesystem::path& entryPath,
85 std::string& entryContent)
override;
86 void addEntryFromFile(
const std::filesystem::path& entryPath,
87 const std::filesystem::path& filePath)
override;
88 void flush()
override;
89 bool needsTheJobQueue()
const override;
90 void finalize(
bool verbose)
override;
96 std::shared_ptr<Yuni::Job::QueueService> pQueueService;
104 const std::filesystem::path pArchivePath;
111 template<class ContentType>
112 void addEntryFromBufferHelper(const std::filesystem::path& entryPath,
113 ContentType& entryContent);
117 #include "zip_writer.hxx"
Utility class to gather futures to wait for.
Definition: concurrency.h:61
Definition: i_writer.h:32
Definition: zip_writer.h:49
Definition: zip_writer.h:78
void flush() override
Definition: zip_writer.cpp:220
Definition: DurationCollector.h:36