summaryrefslogtreecommitdiffstats
path: root/src/library
diff options
context:
space:
mode:
authorUwe Klotz <uklotz@mixxx.org>2019-06-21 20:47:03 +0200
committerUwe Klotz <uklotz@mixxx.org>2019-06-21 20:59:30 +0200
commit7c5a222ea185689613f3442b153bd6ea9a23f597 (patch)
tree366db0f80f6288dce92d17f958dcb04ef771b8d0 /src/library
parentf25828b30ea923fb40f100b64f0c90f272b5ffcf (diff)
Reuse TrackFile::fromUrl()
Diffstat (limited to 'src/library')
-rw-r--r--src/library/banshee/bansheeplaylistmodel.cpp7
-rw-r--r--src/library/itunes/itunesfeature.cpp2
-rw-r--r--src/library/parser.cpp6
-rw-r--r--src/library/parser.h4
-rw-r--r--src/library/parserm3u.cpp10
-rw-r--r--src/library/parserpls.cpp10
6 files changed, 19 insertions, 20 deletions
diff --git a/src/library/banshee/bansheeplaylistmodel.cpp b/src/library/banshee/bansheeplaylistmodel.cpp
index d46661b965..6e339f97f0 100644
--- a/src/library/banshee/bansheeplaylistmodel.cpp
+++ b/src/library/banshee/bansheeplaylistmodel.cpp
@@ -287,7 +287,7 @@ void BansheePlaylistModel::trackLoaded(QString group, TrackPointer pTrack) {
if (pTrack) {
for (int row = 0; row < rowCount(); ++row) {
QUrl rowUrl(getFieldString(index(row, 0), CLM_URI));
- if (rowUrl.toLocalFile() == pTrack->getLocation()) {
+ if (TrackFile::fromUrl(rowUrl).location() == pTrack->getLocation()) {
m_previewDeckTrackId =
TrackId(getFieldVariant(index(row, 0), CLM_VIEW_ORDER));
break;
@@ -364,11 +364,8 @@ QString BansheePlaylistModel::getTrackLocation(const QModelIndex& index) const {
}
QUrl url(getFieldString(index, CLM_URI));
- QString location;
- location = url.toLocalFile();
-
+ QString location = TrackFile::fromUrl(url).location();
qDebug() << location << " = " << url;
-
if (!location.isEmpty()) {
return location;
}
diff --git a/src/library/itunes/itunesfeature.cpp b/src/library/itunes/itunesfeature.cpp
index 3c2ee57ece..107fc25576 100644
--- a/src/library/itunes/itunesfeature.cpp
+++ b/src/library/itunes/itunesfeature.cpp
@@ -576,7 +576,7 @@ void ITunesFeature::parseTrack(QXmlStreamReader& xml, QSqlQuery& query) {
continue;
}
if (key == kLocation) {
- location = QUrl(content).toLocalFile();
+ location = TrackFile::fromUrl(QUrl(content)).location();
// Replace first part of location with the mixxx iTunes Root
// on systems where iTunes installed it only strips //localhost
// on iTunes from foreign systems the mount point is replaced
diff --git a/src/library/parser.cpp b/src/library/parser.cpp
index 6b05e388cc..9dcbb2a881 100644
--- a/src/library/parser.cpp
+++ b/src/library/parser.cpp
@@ -148,11 +148,11 @@ bool Parser::isUtf8(const char* string) {
return true;
}
-QString Parser::playlistEntrytoLocalFile(const QString& playlistEntry) {
+TrackFile Parser::playlistEntryToTrackFile(const QString& playlistEntry) {
if (playlistEntry.startsWith("file:")) {
- return QUrl(playlistEntry).toLocalFile();
+ return TrackFile::fromUrl(QUrl(playlistEntry));
}
- return QString(playlistEntry).replace('\\', '/');
+ return TrackFile(QString(playlistEntry).replace('\\', '/'));
}
diff --git a/src/library/parser.h b/src/library/parser.h
index 87c226efd4..686cefa579 100644
--- a/src/library/parser.h
+++ b/src/library/parser.h
@@ -27,6 +27,8 @@ it afterwards for proper functioning
#include <gtest/gtest.h>
+#include "track/trackfile.h"
+
class Parser : public QObject {
public:
static bool isPlaylistFilenameSupported(const QString& fileName) {
@@ -57,7 +59,7 @@ protected:
// check for Utf8 encoding
static bool isUtf8(const char* string);
// reads URLs an plain Part and returns a local file path
- QString playlistEntrytoLocalFile(const QString& playlistEntry);
+ TrackFile playlistEntryToTrackFile(const QString& playlistEntry);
FRIEND_TEST(PlaylistTest, Normalize);
};
diff --git a/src/library/parserm3u.cpp b/src/library/parserm3u.cpp
index b770242ff2..c6eca7342d 100644
--- a/src/library/parserm3u.cpp
+++ b/src/library/parserm3u.cpp
@@ -106,17 +106,17 @@ QString ParserM3u::getFilepath(QTextStream* stream, QString basepath) {
}
if (!textline.contains("#")) {
- QString trackLocation = playlistEntrytoLocalFile(textline);
- if(QFile::exists(trackLocation)) {
- return trackLocation;
+ TrackFile trackFile = playlistEntryToTrackFile(textline);
+ if(trackFile.checkFileExists()) {
+ return trackFile.location();
} else {
// Try relative to m3u dir
- QString rel = QDir(basepath).filePath(trackLocation);
+ QString rel = QDir(basepath).filePath(trackFile.location());
if (QFile::exists(rel)) {
return rel;
}
// We couldn't match this to a real file so ignore it
- qWarning() << trackLocation << "not found";
+ qWarning() << trackFile.location() << "not found";
}
}
textline = stream->readLine();
diff --git a/src/library/parserpls.cpp b/src/library/parserpls.cpp
index ee58887961..95c2295429 100644
--- a/src/library/parserpls.cpp
+++ b/src/library/parserpls.cpp
@@ -114,18 +114,18 @@ QString ParserPls::getFilepath(QTextStream *stream, QString basepath) {
++iPos;
QString filename = textline.right(textline.length() - iPos);
- QString trackLocation = playlistEntrytoLocalFile(filename);
+ TrackFile trackFile = playlistEntryToTrackFile(filename);
- if(QFile::exists(trackLocation)) {
- return trackLocation;
+ if(trackFile.checkFileExists()) {
+ return trackFile.location();
} else {
// Try relative to pls dir
- QString rel = QDir(basepath).filePath(trackLocation);
+ QString rel = QDir(basepath).filePath(trackFile.location());
if (QFile::exists(rel)) {
return rel;
}
// We couldn't match this to a real file so ignore it
- qWarning() << trackLocation << "not found";
+ qWarning() << trackFile.location() << "not found";
}
}
textline = stream->readLine();