Created an interface for the Db class

This commit is contained in:
emeric
2025-07-09 00:29:16 +02:00
parent ecdfa8d68d
commit 764c92698c
106 changed files with 315 additions and 284 deletions
@@ -21,7 +21,7 @@
#include "av/ITranscoder.hpp"
#include "core/ILogger.hpp"
#include "database/Db.hpp"
#include "database/IDb.hpp"
#include "database/Session.hpp"
#include "database/Track.hpp"
@@ -43,12 +43,12 @@ namespace lms::transcoding
}
} // namespace
std::unique_ptr<ITranscodingService> createTranscodingService(db::Db& db, core::IChildProcessManager& childProcessManager)
std::unique_ptr<ITranscodingService> createTranscodingService(db::IDb& db, core::IChildProcessManager& childProcessManager)
{
return std::make_unique<TranscodingService>(db, childProcessManager);
}
TranscodingService::TranscodingService(db::Db& db, core::IChildProcessManager& childProcessManager)
TranscodingService::TranscodingService(db::IDb& db, core::IChildProcessManager& childProcessManager)
: _db{ db }
, _childProcessManager(childProcessManager)
{
@@ -26,7 +26,7 @@ namespace lms::transcoding
class TranscodingService : public ITranscodingService
{
public:
explicit TranscodingService(db::Db& db, core::IChildProcessManager& childProcessManager);
explicit TranscodingService(db::IDb& db, core::IChildProcessManager& childProcessManager);
~TranscodingService() override;
TranscodingService(const TranscodingService&) = delete;
@@ -35,7 +35,7 @@ namespace lms::transcoding
private:
std::unique_ptr<core::IResourceHandler> createResourceHandler(const InputParameters& inputParameters, const OutputParameters& outputParameters, bool estimateContentLength) override;
db::Db& _db;
db::IDb& _db;
core::IChildProcessManager& _childProcessManager;
};
} // namespace lms::transcoding
@@ -35,7 +35,7 @@ namespace lms
namespace db
{
class Db;
class IDb;
}
} // namespace lms
@@ -72,5 +72,5 @@ namespace lms::transcoding
virtual std::unique_ptr<core::IResourceHandler> createResourceHandler(const InputParameters& inputParameters, const OutputParameters& outputParameters, bool estimateContentLength) = 0;
};
std::unique_ptr<ITranscodingService> createTranscodingService(db::Db& db, core::IChildProcessManager& childProcessManager);
std::unique_ptr<ITranscodingService> createTranscodingService(db::IDb& db, core::IChildProcessManager& childProcessManager);
} // namespace lms::transcoding