Clementine-audio-player-Mac.../src/internet/seafileurlhandler.cpp

23 lines
668 B
C++

#include "seafileurlhandler.h"
#include "seafileservice.h"
SeafileUrlHandler::SeafileUrlHandler(SeafileService* service, QObject* parent)
: UrlHandler(parent), service_(service) {}
UrlHandler::LoadResult SeafileUrlHandler::StartLoading(const QUrl& url) {
QString file_library_and_path = url.path();
QRegExp reg("/([^/]+)(/.*)$");
if(reg.indexIn(file_library_and_path) == -1) {
qLog(Debug) << "Can't find repo and file path in " << url;
}
QString library = reg.cap(1);
QString filepath = reg.cap(2);
QUrl real_url = service_->GetStreamingUrlFromSongId(library, filepath);
return LoadResult(url, LoadResult::TrackAvailable, real_url);
}