Remove NetworkAccessManager from song loader

This commit is contained in:
Jonas Kvinge 2023-04-22 14:05:48 +02:00
parent c96498758f
commit 60bbd71a22
8 changed files with 14 additions and 24 deletions

View File

@ -46,7 +46,6 @@
#include "signalchecker.h"
#include "player.h"
#include "networkaccessmanager.h"
#include "song.h"
#include "songloader.h"
#include "tagreaderclient.h"
@ -67,10 +66,9 @@
QSet<QString> SongLoader::sRawUriSchemes;
const int SongLoader::kDefaultTimeout = 5000;
SongLoader::SongLoader(CollectionBackendInterface *collection, const Player *player, NetworkAccessManager *network, QObject *parent)
SongLoader::SongLoader(CollectionBackendInterface *collection, const Player *player, QObject *parent)
: QObject(parent),
player_(player),
network_(network),
collection_(collection),
timeout_timer_(new QTimer(this)),
playlist_parser_(new PlaylistParser(collection, this)),
@ -193,7 +191,7 @@ SongLoader::Result SongLoader::LoadAudioCD() {
#if defined(HAVE_AUDIOCD) && defined(HAVE_GSTREAMER)
if (player_->engine()->type() == Engine::EngineType::GStreamer) {
CddaSongLoader *cdda_song_loader = new CddaSongLoader(QUrl(), network_, this);
CddaSongLoader *cdda_song_loader = new CddaSongLoader(QUrl(), this);
QObject::connect(cdda_song_loader, &CddaSongLoader::SongsDurationLoaded, this, &SongLoader::AudioCDTracksLoadFinishedSlot);
QObject::connect(cdda_song_loader, &CddaSongLoader::SongsMetadataLoaded, this, &SongLoader::AudioCDTracksTagsLoaded);
cdda_song_loader->LoadSongs();

View File

@ -45,7 +45,6 @@
class QTimer;
class Player;
class NetworkAccessManager;
class CollectionBackendInterface;
class PlaylistParser;
class ParserBase;
@ -59,7 +58,7 @@ class SongLoader : public QObject {
Q_OBJECT
public:
explicit SongLoader(CollectionBackendInterface *collection, const Player *player, NetworkAccessManager *network, QObject *parent = nullptr);
explicit SongLoader(CollectionBackendInterface *collection, const Player *player, QObject *parent = nullptr);
~SongLoader() override;
enum class Result {
@ -145,7 +144,6 @@ class SongLoader : public QObject {
SongList songs_;
const Player *player_;
NetworkAccessManager *network_;
CollectionBackendInterface *collection_;
QTimer *timeout_timer_;
PlaylistParser *playlist_parser_;

View File

@ -25,7 +25,6 @@
#include <QUrl>
#include "core/application.h"
#include "core/networkaccessmanager.h"
#include "collection/collectionmodel.h"
#include "cddasongloader.h"
#include "connecteddevice.h"
@ -37,7 +36,7 @@ class DeviceManager;
CddaDevice::CddaDevice(const QUrl &url, DeviceLister *lister, const QString &unique_id, DeviceManager *manager, Application *app, int database_id, bool first_time, QObject *parent)
: ConnectedDevice(url, lister, unique_id, manager, app, database_id, first_time, parent),
cdda_song_loader_(url, app->network()) {
cdda_song_loader_(url) {
QObject::connect(&cdda_song_loader_, &CddaSongLoader::SongsLoaded, this, &CddaDevice::SongsLoaded);
QObject::connect(&cdda_song_loader_, &CddaSongLoader::SongsDurationLoaded, this, &CddaDevice::SongsLoaded);

View File

@ -42,10 +42,10 @@
#include "core/networkaccessmanager.h"
#include "utilities/timeconstants.h"
CddaSongLoader::CddaSongLoader(const QUrl &url, NetworkAccessManager *network, QObject *parent)
CddaSongLoader::CddaSongLoader(const QUrl &url, QObject *parent)
: QObject(parent),
url_(url),
network_(network),
network_(new NetworkAccessManager(this)),
cdda_(nullptr),
cdio_(nullptr) {}

View File

@ -47,7 +47,7 @@ class CddaSongLoader : public QObject {
Q_OBJECT
public:
explicit CddaSongLoader(const QUrl &url, NetworkAccessManager *network, QObject *parent = nullptr);
explicit CddaSongLoader(const QUrl &url, QObject *parent = nullptr);
~CddaSongLoader() override;
// Load songs. Signals declared below will be emitted anytime new information will be available.

View File

@ -845,7 +845,7 @@ bool Playlist::dropMimeData(const QMimeData *data, Qt::DropAction action, int ro
}
}
else if (data->hasFormat(kCddaMimeType)) {
SongLoaderInserter *inserter = new SongLoaderInserter(task_manager_, collection_, backend_->app()->player(), backend_->app()->network());
SongLoaderInserter *inserter = new SongLoaderInserter(task_manager_, collection_, backend_->app()->player());
QObject::connect(inserter, &SongLoaderInserter::Error, this, &Playlist::Error);
inserter->LoadAudioCD(this, row, play_now, enqueue_now, enqueue_next_now);
}
@ -860,7 +860,7 @@ bool Playlist::dropMimeData(const QMimeData *data, Qt::DropAction action, int ro
void Playlist::InsertUrls(const QList<QUrl> &urls, const int pos, const bool play_now, const bool enqueue, const bool enqueue_next) {
SongLoaderInserter *inserter = new SongLoaderInserter(task_manager_, collection_, backend_->app()->player(), backend_->app()->network());
SongLoaderInserter *inserter = new SongLoaderInserter(task_manager_, collection_, backend_->app()->player());
QObject::connect(inserter, &SongLoaderInserter::Error, this, &Playlist::Error);
inserter->Load(this, pos, play_now, enqueue, enqueue_next, urls);

View File

@ -29,11 +29,10 @@
#include "core/logging.h"
#include "core/songloader.h"
#include "core/taskmanager.h"
#include "core/networkaccessmanager.h"
#include "playlist.h"
#include "songloaderinserter.h"
SongLoaderInserter::SongLoaderInserter(TaskManager *task_manager, CollectionBackendInterface *collection, const Player *player, NetworkAccessManager *network, QObject *parent)
SongLoaderInserter::SongLoaderInserter(TaskManager *task_manager, CollectionBackendInterface *collection, const Player *player, QObject *parent)
: QObject(parent),
task_manager_(task_manager),
destination_(nullptr),
@ -42,8 +41,7 @@ SongLoaderInserter::SongLoaderInserter(TaskManager *task_manager, CollectionBack
enqueue_(false),
enqueue_next_(false),
collection_(collection),
player_(player),
network_(network) {}
player_(player) {}
SongLoaderInserter::~SongLoaderInserter() { qDeleteAll(pending_); }
@ -60,7 +58,7 @@ void SongLoaderInserter::Load(Playlist *destination, int row, bool play_now, boo
QObject::connect(this, &SongLoaderInserter::EffectiveLoadFinished, destination, &Playlist::UpdateItems);
for (const QUrl &url : urls) {
SongLoader *loader = new SongLoader(collection_, player_, network_, this);
SongLoader *loader = new SongLoader(collection_, player_, this);
SongLoader::Result ret = loader->Load(url);
@ -105,7 +103,7 @@ void SongLoaderInserter::LoadAudioCD(Playlist *destination, int row, bool play_n
enqueue_ = enqueue;
enqueue_next_ = enqueue_next;
SongLoader *loader = new SongLoader(collection_, player_, network_, this);
SongLoader *loader = new SongLoader(collection_, player_, this);
QObject::connect(loader, &SongLoader::AudioCDTracksLoadFinished, this, [this, loader]() { AudioCDTracksLoadFinished(loader); });
QObject::connect(loader, &SongLoader::LoadAudioCDFinished, this, &SongLoaderInserter::AudioCDTagsLoaded);
qLog(Info) << "Loading audio CD...";

View File

@ -32,7 +32,6 @@
#include "core/song.h"
class Player;
class NetworkAccessManager;
class SongLoader;
class TaskManager;
class CollectionBackendInterface;
@ -42,7 +41,7 @@ class SongLoaderInserter : public QObject {
Q_OBJECT
public:
explicit SongLoaderInserter(TaskManager *task_manager, CollectionBackendInterface *collection, const Player *player, NetworkAccessManager *network, QObject *parent = nullptr);
explicit SongLoaderInserter(TaskManager *task_manager, CollectionBackendInterface *collection, const Player *player, QObject *parent = nullptr);
~SongLoaderInserter() override;
void Load(Playlist *destination, int row, bool play_now, bool enqueue, bool enqueue_next, const QList<QUrl> &urls);
@ -76,8 +75,6 @@ class SongLoaderInserter : public QObject {
QList<SongLoader*> pending_;
CollectionBackendInterface *collection_;
const Player *player_;
NetworkAccessManager *network_;
};
#endif // SONGLOADERINSERTER_H