Replace QLatin1String with operator _L1

This commit is contained in:
Jonas Kvinge
2024-09-07 04:24:14 +02:00
parent e3e6a22172
commit 4270b12cd1
185 changed files with 2429 additions and 2139 deletions

View File

@@ -49,6 +49,8 @@
#include "qobuzbaserequest.h"
#include "qobuzrequest.h"
using namespace Qt::StringLiterals;
namespace {
constexpr int kMaxConcurrentArtistsRequests = 3;
constexpr int kMaxConcurrentAlbumsRequests = 3;
@@ -423,12 +425,12 @@ void QobuzRequest::ArtistsReplyReceived(QNetworkReply *reply, const int limit_re
return;
}
if (!json_obj.contains(QLatin1String("artists"))) {
if (!json_obj.contains("artists"_L1)) {
ArtistsFinishCheck();
Error(QStringLiteral("Json object is missing artists."), json_obj);
return;
}
QJsonValue value_artists = json_obj[QLatin1String("artists")];
QJsonValue value_artists = json_obj["artists"_L1];
if (!value_artists.isObject()) {
Error(QStringLiteral("Json artists is not an object."), json_obj);
ArtistsFinishCheck();
@@ -436,17 +438,17 @@ void QobuzRequest::ArtistsReplyReceived(QNetworkReply *reply, const int limit_re
}
QJsonObject obj_artists = value_artists.toObject();
if (!obj_artists.contains(QLatin1String("limit")) ||
!obj_artists.contains(QLatin1String("offset")) ||
!obj_artists.contains(QLatin1String("total")) ||
!obj_artists.contains(QLatin1String("items"))) {
if (!obj_artists.contains("limit"_L1) ||
!obj_artists.contains("offset"_L1) ||
!obj_artists.contains("total"_L1) ||
!obj_artists.contains("items"_L1)) {
ArtistsFinishCheck();
Error(QStringLiteral("Json artists object is missing values."), json_obj);
return;
}
//int limit = obj_artists["limit"].toInt();
int offset = obj_artists[QLatin1String("offset")].toInt();
int artists_total = obj_artists[QLatin1String("total")].toInt();
int offset = obj_artists["offset"_L1].toInt();
int artists_total = obj_artists["total"_L1].toInt();
if (offset_requested == 0) {
artists_total_ = artists_total;
@@ -491,8 +493,8 @@ void QobuzRequest::ArtistsReplyReceived(QNetworkReply *reply, const int limit_re
}
QJsonObject obj_item = value_item.toObject();
if (obj_item.contains(QLatin1String("item"))) {
QJsonValue json_item = obj_item[QLatin1String("item")];
if (obj_item.contains("item"_L1)) {
QJsonValue json_item = obj_item["item"_L1];
if (!json_item.isObject()) {
Error(QStringLiteral("Invalid Json reply, item not a object."), json_item);
continue;
@@ -500,19 +502,19 @@ void QobuzRequest::ArtistsReplyReceived(QNetworkReply *reply, const int limit_re
obj_item = json_item.toObject();
}
if (!obj_item.contains(QLatin1String("id")) || !obj_item.contains(QLatin1String("name"))) {
if (!obj_item.contains("id"_L1) || !obj_item.contains("name"_L1)) {
Error(QStringLiteral("Invalid Json reply, item missing id or album."), obj_item);
continue;
}
Artist artist;
if (obj_item[QLatin1String("id")].isString()) {
artist.artist_id = obj_item[QLatin1String("id")].toString();
if (obj_item["id"_L1].isString()) {
artist.artist_id = obj_item["id"_L1].toString();
}
else {
artist.artist_id = QString::number(obj_item[QLatin1String("id")].toInt());
artist.artist_id = QString::number(obj_item["id"_L1].toInt());
}
artist.artist = obj_item[QLatin1String("name")].toString();
artist.artist = obj_item["name"_L1].toString();
if (artist_albums_requests_pending_.contains(artist.artist_id)) continue;
@@ -636,14 +638,14 @@ void QobuzRequest::AlbumsReceived(QNetworkReply *reply, const Artist &artist_req
Artist artist = artist_requested;
if (json_obj.contains(QLatin1String("id")) && json_obj.contains(QLatin1String("name"))) {
if (json_obj[QLatin1String("id")].isString()) {
artist.artist_id = json_obj[QLatin1String("id")].toString();
if (json_obj.contains("id"_L1) && json_obj.contains("name"_L1)) {
if (json_obj["id"_L1].isString()) {
artist.artist_id = json_obj["id"_L1].toString();
}
else {
artist.artist_id = QString::number(json_obj[QLatin1String("id")].toInt());
artist.artist_id = QString::number(json_obj["id"_L1].toInt());
}
artist.artist = json_obj[QLatin1String("name")].toString();
artist.artist = json_obj["name"_L1].toString();
}
if (artist.artist_id != artist_requested.artist_id) {
@@ -652,12 +654,12 @@ void QobuzRequest::AlbumsReceived(QNetworkReply *reply, const Artist &artist_req
return;
}
if (!json_obj.contains(QLatin1String("albums"))) {
if (!json_obj.contains("albums"_L1)) {
AlbumsFinishCheck(artist_requested);
Error(QStringLiteral("Json object is missing albums."), json_obj);
return;
}
QJsonValue value_albums = json_obj[QLatin1String("albums")];
QJsonValue value_albums = json_obj["albums"_L1];
if (!value_albums.isObject()) {
Error(QStringLiteral("Json albums is not an object."), json_obj);
AlbumsFinishCheck(artist_requested);
@@ -665,18 +667,18 @@ void QobuzRequest::AlbumsReceived(QNetworkReply *reply, const Artist &artist_req
}
QJsonObject obj_albums = value_albums.toObject();
if (!obj_albums.contains(QLatin1String("limit")) ||
!obj_albums.contains(QLatin1String("offset")) ||
!obj_albums.contains(QLatin1String("total")) ||
!obj_albums.contains(QLatin1String("items"))) {
if (!obj_albums.contains("limit"_L1) ||
!obj_albums.contains("offset"_L1) ||
!obj_albums.contains("total"_L1) ||
!obj_albums.contains("items"_L1)) {
AlbumsFinishCheck(artist_requested);
Error(QStringLiteral("Json albums object is missing values."), json_obj);
return;
}
//int limit = obj_albums["limit"].toInt();
int offset = obj_albums[QLatin1String("offset")].toInt();
int albums_total = obj_albums[QLatin1String("total")].toInt();
int offset = obj_albums["offset"_L1].toInt();
int albums_total = obj_albums["total"_L1].toInt();
if (offset != offset_requested) {
Error(QStringLiteral("Offset returned does not match offset requested! %1 != %2").arg(offset).arg(offset_requested));
@@ -709,41 +711,41 @@ void QobuzRequest::AlbumsReceived(QNetworkReply *reply, const Artist &artist_req
}
QJsonObject obj_item = value_item.toObject();
if (!obj_item.contains(QLatin1String("artist")) || !obj_item.contains(QLatin1String("title")) || !obj_item.contains(QLatin1String("id"))) {
if (!obj_item.contains("artist"_L1) || !obj_item.contains("title"_L1) || !obj_item.contains("id"_L1)) {
Error(QStringLiteral("Invalid Json reply, item missing artist, title or id."), obj_item);
continue;
}
Album album;
if (obj_item[QLatin1String("id")].isString()) {
album.album_id = obj_item[QLatin1String("id")].toString();
if (obj_item["id"_L1].isString()) {
album.album_id = obj_item["id"_L1].toString();
}
else {
album.album_id = QString::number(obj_item[QLatin1String("id")].toInt());
album.album_id = QString::number(obj_item["id"_L1].toInt());
}
album.album = obj_item[QLatin1String("title")].toString();
album.album = obj_item["title"_L1].toString();
if (album_songs_requests_pending_.contains(album.album_id)) continue;
QJsonValue value_artist = obj_item[QLatin1String("artist")];
QJsonValue value_artist = obj_item["artist"_L1];
if (!value_artist.isObject()) {
Error(QStringLiteral("Invalid Json reply, item artist is not a object."), value_artist);
continue;
}
QJsonObject obj_artist = value_artist.toObject();
if (!obj_artist.contains(QLatin1String("id")) || !obj_artist.contains(QLatin1String("name"))) {
if (!obj_artist.contains("id"_L1) || !obj_artist.contains("name"_L1)) {
Error(QStringLiteral("Invalid Json reply, item artist missing id or name."), obj_artist);
continue;
}
Artist album_artist;
if (obj_artist[QLatin1String("id")].isString()) {
album_artist.artist_id = obj_artist[QLatin1String("id")].toString();
if (obj_artist["id"_L1].isString()) {
album_artist.artist_id = obj_artist["id"_L1].toString();
}
else {
album_artist.artist_id = QString::number(obj_artist[QLatin1String("id")].toInt());
album_artist.artist_id = QString::number(obj_artist["id"_L1].toInt());
}
album_artist.artist = obj_artist[QLatin1String("name")].toString();
album_artist.artist = obj_artist["name"_L1].toString();
if (!artist_requested.artist_id.isEmpty() && album_artist.artist_id != artist_requested.artist_id) {
qLog(Debug) << "Skipping artist" << album_artist.artist << album_artist.artist_id << "does not match album artist" << artist_requested.artist_id << artist_requested.artist;
@@ -891,7 +893,7 @@ void QobuzRequest::SongsReceived(QNetworkReply *reply, const Artist &artist_requ
return;
}
if (!json_obj.contains(QLatin1String("tracks"))) {
if (!json_obj.contains("tracks"_L1)) {
Error(QStringLiteral("Json object is missing tracks."), json_obj);
SongsFinishCheck(artist_requested, album_requested, limit_requested, offset_requested);
return;
@@ -900,58 +902,58 @@ void QobuzRequest::SongsReceived(QNetworkReply *reply, const Artist &artist_requ
Artist album_artist = artist_requested;
Album album = album_requested;
if (json_obj.contains(QLatin1String("id")) && json_obj.contains(QLatin1String("title"))) {
if (json_obj[QLatin1String("id")].isString()) {
album.album_id = json_obj[QLatin1String("id")].toString();
if (json_obj.contains("id"_L1) && json_obj.contains("title"_L1)) {
if (json_obj["id"_L1].isString()) {
album.album_id = json_obj["id"_L1].toString();
}
else {
album.album_id = QString::number(json_obj[QLatin1String("id")].toInt());
album.album_id = QString::number(json_obj["id"_L1].toInt());
}
album.album = json_obj[QLatin1String("title")].toString();
album.album = json_obj["title"_L1].toString();
}
if (json_obj.contains(QLatin1String("artist"))) {
QJsonValue value_artist = json_obj[QLatin1String("artist")];
if (json_obj.contains("artist"_L1)) {
QJsonValue value_artist = json_obj["artist"_L1];
if (!value_artist.isObject()) {
Error(QStringLiteral("Invalid Json reply, album artist is not a object."), value_artist);
SongsFinishCheck(artist_requested, album_requested, limit_requested, offset_requested);
return;
}
QJsonObject obj_artist = value_artist.toObject();
if (!obj_artist.contains(QLatin1String("id")) || !obj_artist.contains(QLatin1String("name"))) {
if (!obj_artist.contains("id"_L1) || !obj_artist.contains("name"_L1)) {
Error(QStringLiteral("Invalid Json reply, album artist is missing id or name."), obj_artist);
SongsFinishCheck(artist_requested, album_requested, limit_requested, offset_requested);
return;
}
if (obj_artist[QLatin1String("id")].isString()) {
album_artist.artist_id = obj_artist[QLatin1String("id")].toString();
if (obj_artist["id"_L1].isString()) {
album_artist.artist_id = obj_artist["id"_L1].toString();
}
else {
album_artist.artist_id = QString::number(obj_artist[QLatin1String("id")].toInt());
album_artist.artist_id = QString::number(obj_artist["id"_L1].toInt());
}
album_artist.artist = obj_artist[QLatin1String("name")].toString();
album_artist.artist = obj_artist["name"_L1].toString();
}
if (json_obj.contains(QLatin1String("image"))) {
QJsonValue value_image = json_obj[QLatin1String("image")];
if (json_obj.contains("image"_L1)) {
QJsonValue value_image = json_obj["image"_L1];
if (!value_image.isObject()) {
Error(QStringLiteral("Invalid Json reply, album image is not a object."), value_image);
SongsFinishCheck(artist_requested, album_requested, limit_requested, offset_requested);
return;
}
QJsonObject obj_image = value_image.toObject();
if (!obj_image.contains(QLatin1String("large"))) {
if (!obj_image.contains("large"_L1)) {
Error(QStringLiteral("Invalid Json reply, album image is missing large."), obj_image);
SongsFinishCheck(artist_requested, album_requested, limit_requested, offset_requested);
return;
}
QString album_image = obj_image[QLatin1String("large")].toString();
QString album_image = obj_image["large"_L1].toString();
if (!album_image.isEmpty()) {
album.cover_url = QUrl(album_image);
}
}
QJsonValue value_tracks = json_obj[QLatin1String("tracks")];
QJsonValue value_tracks = json_obj["tracks"_L1];
if (!value_tracks.isObject()) {
Error(QStringLiteral("Json tracks is not an object."), json_obj);
SongsFinishCheck(artist_requested, album_requested, limit_requested, offset_requested);
@@ -959,18 +961,18 @@ void QobuzRequest::SongsReceived(QNetworkReply *reply, const Artist &artist_requ
}
QJsonObject obj_tracks = value_tracks.toObject();
if (!obj_tracks.contains(QLatin1String("limit")) ||
!obj_tracks.contains(QLatin1String("offset")) ||
!obj_tracks.contains(QLatin1String("total")) ||
!obj_tracks.contains(QLatin1String("items"))) {
if (!obj_tracks.contains("limit"_L1) ||
!obj_tracks.contains("offset"_L1) ||
!obj_tracks.contains("total"_L1) ||
!obj_tracks.contains("items"_L1)) {
SongsFinishCheck(artist_requested, album_requested, limit_requested, offset_requested);
Error(QStringLiteral("Json songs object is missing values."), json_obj);
return;
}
//int limit = obj_tracks["limit"].toInt();
int offset = obj_tracks[QLatin1String("offset")].toInt();
int songs_total = obj_tracks[QLatin1String("total")].toInt();
int offset = obj_tracks["offset"_L1].toInt();
int songs_total = obj_tracks["total"_L1].toInt();
if (offset != offset_requested) {
Error(QStringLiteral("Offset returned does not match offset requested! %1 != %2").arg(offset).arg(offset_requested));
@@ -1063,126 +1065,126 @@ void QobuzRequest::SongsFinishCheck(const Artist &artist, const Album &album, co
void QobuzRequest::ParseSong(Song &song, const QJsonObject &json_obj, const Artist &album_artist, const Album &album) {
if (
!json_obj.contains(QLatin1String("id")) ||
!json_obj.contains(QLatin1String("title")) ||
!json_obj.contains(QLatin1String("track_number")) ||
!json_obj.contains(QLatin1String("duration")) ||
!json_obj.contains(QLatin1String("copyright")) ||
!json_obj.contains(QLatin1String("streamable"))
!json_obj.contains("id"_L1) ||
!json_obj.contains("title"_L1) ||
!json_obj.contains("track_number"_L1) ||
!json_obj.contains("duration"_L1) ||
!json_obj.contains("copyright"_L1) ||
!json_obj.contains("streamable"_L1)
) {
Error(QStringLiteral("Invalid Json reply, track is missing one or more values."), json_obj);
return;
}
QString song_id;
if (json_obj[QLatin1String("id")].isString()) {
song_id = json_obj[QLatin1String("id")].toString();
if (json_obj["id"_L1].isString()) {
song_id = json_obj["id"_L1].toString();
}
else {
song_id = QString::number(json_obj[QLatin1String("id")].toInt());
song_id = QString::number(json_obj["id"_L1].toInt());
}
QString title = json_obj[QLatin1String("title")].toString();
int track = json_obj[QLatin1String("track_number")].toInt();
QString title = json_obj["title"_L1].toString();
int track = json_obj["track_number"_L1].toInt();
int disc = 0;
QString copyright = json_obj[QLatin1String("copyright")].toString();
qint64 duration = json_obj[QLatin1String("duration")].toInt() * kNsecPerSec;
QString copyright = json_obj["copyright"_L1].toString();
qint64 duration = json_obj["duration"_L1].toInt() * kNsecPerSec;
//bool streamable = json_obj["streamable"].toBool();
QString composer;
QString performer;
if (json_obj.contains(QLatin1String("media_number"))) {
disc = json_obj[QLatin1String("media_number")].toInt();
if (json_obj.contains("media_number"_L1)) {
disc = json_obj["media_number"_L1].toInt();
}
Artist song_artist = album_artist;
Album song_album = album;
if (json_obj.contains(QLatin1String("album"))) {
if (json_obj.contains("album"_L1)) {
QJsonValue value_album = json_obj[QLatin1String("album")];
QJsonValue value_album = json_obj["album"_L1];
if (!value_album.isObject()) {
Error(QStringLiteral("Invalid Json reply, album is not an object."), value_album);
return;
}
QJsonObject obj_album = value_album.toObject();
if (obj_album.contains(QLatin1String("id"))) {
if (obj_album[QLatin1String("id")].isString()) {
song_album.album_id = obj_album[QLatin1String("id")].toString();
if (obj_album.contains("id"_L1)) {
if (obj_album["id"_L1].isString()) {
song_album.album_id = obj_album["id"_L1].toString();
}
else {
song_album.album_id = QString::number(obj_album[QLatin1String("id")].toInt());
song_album.album_id = QString::number(obj_album["id"_L1].toInt());
}
}
if (obj_album.contains(QLatin1String("title"))) {
song_album.album = obj_album[QLatin1String("title")].toString();
if (obj_album.contains("title"_L1)) {
song_album.album = obj_album["title"_L1].toString();
}
if (obj_album.contains(QLatin1String("artist"))) {
QJsonValue value_artist = obj_album[QLatin1String("artist")];
if (obj_album.contains("artist"_L1)) {
QJsonValue value_artist = obj_album["artist"_L1];
if (!value_artist.isObject()) {
Error(QStringLiteral("Invalid Json reply, album artist is not a object."), value_artist);
return;
}
QJsonObject obj_artist = value_artist.toObject();
if (!obj_artist.contains(QLatin1String("id")) || !obj_artist.contains(QLatin1String("name"))) {
if (!obj_artist.contains("id"_L1) || !obj_artist.contains("name"_L1)) {
Error(QStringLiteral("Invalid Json reply, album artist is missing id or name."), obj_artist);
return;
}
if (obj_artist[QLatin1String("id")].isString()) {
song_artist.artist_id = obj_artist[QLatin1String("id")].toString();
if (obj_artist["id"_L1].isString()) {
song_artist.artist_id = obj_artist["id"_L1].toString();
}
else {
song_artist.artist_id = QString::number(obj_artist[QLatin1String("id")].toInt());
song_artist.artist_id = QString::number(obj_artist["id"_L1].toInt());
}
song_artist.artist = obj_artist[QLatin1String("name")].toString();
song_artist.artist = obj_artist["name"_L1].toString();
}
if (obj_album.contains(QLatin1String("image"))) {
QJsonValue value_image = obj_album[QLatin1String("image")];
if (obj_album.contains("image"_L1)) {
QJsonValue value_image = obj_album["image"_L1];
if (!value_image.isObject()) {
Error(QStringLiteral("Invalid Json reply, album image is not a object."), value_image);
return;
}
QJsonObject obj_image = value_image.toObject();
if (!obj_image.contains(QLatin1String("large"))) {
if (!obj_image.contains("large"_L1)) {
Error(QStringLiteral("Invalid Json reply, album image is missing large."), obj_image);
return;
}
QString album_image = obj_image[QLatin1String("large")].toString();
QString album_image = obj_image["large"_L1].toString();
if (!album_image.isEmpty()) {
song_album.cover_url.setUrl(album_image);
}
}
}
if (json_obj.contains(QLatin1String("composer"))) {
QJsonValue value_composer = json_obj[QLatin1String("composer")];
if (json_obj.contains("composer"_L1)) {
QJsonValue value_composer = json_obj["composer"_L1];
if (!value_composer.isObject()) {
Error(QStringLiteral("Invalid Json reply, track composer is not a object."), value_composer);
return;
}
QJsonObject obj_composer = value_composer.toObject();
if (!obj_composer.contains(QLatin1String("id")) || !obj_composer.contains(QLatin1String("name"))) {
if (!obj_composer.contains("id"_L1) || !obj_composer.contains("name"_L1)) {
Error(QStringLiteral("Invalid Json reply, track composer is missing id or name."), obj_composer);
return;
}
composer = obj_composer[QLatin1String("name")].toString();
composer = obj_composer["name"_L1].toString();
}
if (json_obj.contains(QLatin1String("performer"))) {
QJsonValue value_performer = json_obj[QLatin1String("performer")];
if (json_obj.contains("performer"_L1)) {
QJsonValue value_performer = json_obj["performer"_L1];
if (!value_performer.isObject()) {
Error(QStringLiteral("Invalid Json reply, track performer is not a object."), value_performer);
return;
}
QJsonObject obj_performer = value_performer.toObject();
if (!obj_performer.contains(QLatin1String("id")) || !obj_performer.contains(QLatin1String("name"))) {
if (!obj_performer.contains("id"_L1) || !obj_performer.contains("name"_L1)) {
Error(QStringLiteral("Invalid Json reply, track performer is missing id or name."), obj_performer);
return;
}
performer = obj_performer[QLatin1String("name")].toString();
performer = obj_performer["name"_L1].toString();
}
//if (!streamable) {
@@ -1345,8 +1347,8 @@ void QobuzRequest::AlbumCoverReceived(QNetworkReply *reply, const QUrl &cover_ur
}
QString mimetype = reply->header(QNetworkRequest::ContentTypeHeader).toString();
if (mimetype.contains(QLatin1Char(';'))) {
mimetype = mimetype.left(mimetype.indexOf(QLatin1Char(';')));
if (mimetype.contains(u';')) {
mimetype = mimetype.left(mimetype.indexOf(u';'));
}
if (!ImageUtils::SupportedImageMimeTypes().contains(mimetype, Qt::CaseInsensitive) && !ImageUtils::SupportedImageFormats().contains(mimetype, Qt::CaseInsensitive)) {
Error(QStringLiteral("Unsupported mimetype for image reader %1 for %2").arg(mimetype, cover_url.toString()));