Revise string literal usage

PR #16703.
This commit is contained in:
Chocobo1
2022-03-26 11:53:50 +08:00
committed by GitHub
parent e1abcc684a
commit 4ca6de2b54
55 changed files with 485 additions and 472 deletions

View File

@@ -33,6 +33,7 @@
#include <QJsonObject>
#include <QVariant>
#include "base/global.h"
#include "rss_feed.h"
using namespace RSS;
@@ -50,14 +51,14 @@ namespace
}
}
const QString Article::KeyId(QStringLiteral("id"));
const QString Article::KeyDate(QStringLiteral("date"));
const QString Article::KeyTitle(QStringLiteral("title"));
const QString Article::KeyAuthor(QStringLiteral("author"));
const QString Article::KeyDescription(QStringLiteral("description"));
const QString Article::KeyTorrentURL(QStringLiteral("torrentURL"));
const QString Article::KeyLink(QStringLiteral("link"));
const QString Article::KeyIsRead(QStringLiteral("isRead"));
const QString Article::KeyId = u"id"_qs;
const QString Article::KeyDate = u"date"_qs;
const QString Article::KeyTitle = u"title"_qs;
const QString Article::KeyAuthor = u"author"_qs;
const QString Article::KeyDescription = u"description"_qs;
const QString Article::KeyTorrentURL = u"torrentURL"_qs;
const QString Article::KeyLink = u"link"_qs;
const QString Article::KeyIsRead = u"isRead"_qs;
Article::Article(Feed *feed, const QVariantHash &varHash)
: QObject(feed)

View File

@@ -58,8 +58,8 @@ struct ProcessingJob
QVariantHash articleData;
};
const QString CONF_FOLDER_NAME {QStringLiteral("rss")};
const QString RULES_FILE_NAME {QStringLiteral("download_rules.json")};
const QString CONF_FOLDER_NAME = u"rss"_qs;
const QString RULES_FILE_NAME = u"download_rules.json"_qs;
namespace
{
@@ -441,8 +441,8 @@ void AutoDownloader::loadRules(const QByteArray &data)
void AutoDownloader::loadRulesLegacy()
{
const SettingsPtr settings = Profile::instance()->applicationSettings(QStringLiteral("qBittorrent-rss"));
const QVariantHash rules = settings->value(QStringLiteral("download_rules")).toHash();
const SettingsPtr settings = Profile::instance()->applicationSettings(u"qBittorrent-rss"_qs);
const QVariantHash rules = settings->value(u"download_rules"_qs).toHash();
for (const QVariant &ruleVar : rules)
{
const auto rule = AutoDownloadRule::fromLegacyDict(ruleVar.toHash());

View File

@@ -101,22 +101,22 @@ namespace
}
}
const QString Str_Name(QStringLiteral("name"));
const QString Str_Enabled(QStringLiteral("enabled"));
const QString Str_UseRegex(QStringLiteral("useRegex"));
const QString Str_MustContain(QStringLiteral("mustContain"));
const QString Str_MustNotContain(QStringLiteral("mustNotContain"));
const QString Str_EpisodeFilter(QStringLiteral("episodeFilter"));
const QString Str_AffectedFeeds(QStringLiteral("affectedFeeds"));
const QString Str_SavePath(QStringLiteral("savePath"));
const QString Str_AssignedCategory(QStringLiteral("assignedCategory"));
const QString Str_LastMatch(QStringLiteral("lastMatch"));
const QString Str_IgnoreDays(QStringLiteral("ignoreDays"));
const QString Str_AddPaused(QStringLiteral("addPaused"));
const QString Str_CreateSubfolder(QStringLiteral("createSubfolder"));
const QString Str_ContentLayout(QStringLiteral("torrentContentLayout"));
const QString Str_SmartFilter(QStringLiteral("smartFilter"));
const QString Str_PreviouslyMatched(QStringLiteral("previouslyMatchedEpisodes"));
const QString Str_Name = u"name"_qs;
const QString Str_Enabled = u"enabled"_qs;
const QString Str_UseRegex = u"useRegex"_qs;
const QString Str_MustContain = u"mustContain"_qs;
const QString Str_MustNotContain = u"mustNotContain"_qs;
const QString Str_EpisodeFilter = u"episodeFilter"_qs;
const QString Str_AffectedFeeds = u"affectedFeeds"_qs;
const QString Str_SavePath = u"savePath"_qs;
const QString Str_AssignedCategory = u"assignedCategory"_qs;
const QString Str_LastMatch = u"lastMatch"_qs;
const QString Str_IgnoreDays = u"ignoreDays"_qs;
const QString Str_AddPaused = u"addPaused"_qs;
const QString Str_CreateSubfolder = u"createSubfolder"_qs;
const QString Str_ContentLayout = u"torrentContentLayout"_qs;
const QString Str_SmartFilter = u"smartFilter"_qs;
const QString Str_PreviouslyMatched = u"previouslyMatchedEpisodes"_qs;
namespace RSS
{
@@ -346,7 +346,7 @@ bool AutoDownloadRule::matchesEpisodeFilterExpression(const QString &articleTitl
}
else
{ // Single number
const QString expStr {QString::fromLatin1("\\b(?:s0?%1[ -_\\.]?e0?%2|%1x0?%2)(?:\\D|\\b)").arg(season, episode)};
const QString expStr {u"\\b(?:s0?%1[ -_\\.]?e0?%2|%1x0?%2)(?:\\D|\\b)"_qs.arg(season, episode)};
if (cachedRegex(expStr).match(articleTitle).hasMatch())
return true;
}
@@ -391,8 +391,8 @@ bool AutoDownloadRule::matchesSmartEpisodeFilter(const QString &articleTitle) co
// so we don't download those
if (isRepack && isProper)
{
m_dataPtr->lastComputedEpisodes.append(episodeStr + QLatin1String("-REPACK"));
m_dataPtr->lastComputedEpisodes.append(episodeStr + QLatin1String("-PROPER"));
m_dataPtr->lastComputedEpisodes.append(episodeStr + u"-REPACK");
m_dataPtr->lastComputedEpisodes.append(episodeStr + u"-PROPER");
}
}

View File

@@ -51,13 +51,13 @@
#include "rss_parser.h"
#include "rss_session.h"
const QString KEY_UID(QStringLiteral("uid"));
const QString KEY_URL(QStringLiteral("url"));
const QString KEY_TITLE(QStringLiteral("title"));
const QString KEY_LASTBUILDDATE(QStringLiteral("lastBuildDate"));
const QString KEY_ISLOADING(QStringLiteral("isLoading"));
const QString KEY_HASERROR(QStringLiteral("hasError"));
const QString KEY_ARTICLES(QStringLiteral("articles"));
const QString KEY_UID = u"uid"_qs;
const QString KEY_URL = u"url"_qs;
const QString KEY_TITLE = u"title"_qs;
const QString KEY_LASTBUILDDATE = u"lastBuildDate"_qs;
const QString KEY_ISLOADING = u"isLoading"_qs;
const QString KEY_HASERROR = u"hasError"_qs;
const QString KEY_ARTICLES = u"articles"_qs;
using namespace RSS;
@@ -68,16 +68,16 @@ Feed::Feed(const QUuid &uid, const QString &url, const QString &path, Session *s
, m_url(url)
{
const auto uidHex = QString::fromLatin1(m_uid.toRfc4122().toHex());
m_dataFileName = Path(uidHex + QLatin1String(".json"));
m_dataFileName = Path(uidHex + u".json");
// Move to new file naming scheme (since v4.1.2)
const QString legacyFilename = Utils::Fs::toValidFileName(m_url, QLatin1String("_")) + QLatin1String(".json");
const QString legacyFilename = Utils::Fs::toValidFileName(m_url, u"_"_qs) + u".json";
const Path storageDir = m_session->dataFileStorage()->storageDir();
const Path dataFilePath = storageDir / m_dataFileName;
if (!dataFilePath.exists())
Utils::Fs::renameFile((storageDir / Path(legacyFilename)), dataFilePath);
m_iconPath = storageDir / Path(uidHex + QLatin1String(".ico"));
m_iconPath = storageDir / Path(uidHex + u".ico");
m_parser = new Private::Parser(m_lastBuildDate);
m_parser->moveToThread(m_session->workingThread());
@@ -323,16 +323,16 @@ void Feed::loadArticles(const QByteArray &data)
void Feed::loadArticlesLegacy()
{
const SettingsPtr qBTRSSFeeds = Profile::instance()->applicationSettings(QStringLiteral("qBittorrent-rss-feeds"));
const SettingsPtr qBTRSSFeeds = Profile::instance()->applicationSettings(u"qBittorrent-rss-feeds"_qs);
const QVariantHash allOldItems = qBTRSSFeeds->value(u"old_items"_qs).toHash();
for (const QVariant &var : asConst(allOldItems.value(m_url).toList()))
{
auto hash = var.toHash();
// update legacy keys
hash[Article::KeyLink] = hash.take(QLatin1String("news_link"));
hash[Article::KeyTorrentURL] = hash.take(QLatin1String("torrent_url"));
hash[Article::KeyIsRead] = hash.take(QLatin1String("read"));
hash[Article::KeyLink] = hash.take(u"news_link"_qs);
hash[Article::KeyTorrentURL] = hash.take(u"torrent_url"_qs);
hash[Article::KeyIsRead] = hash.take(u"read"_qs);
try
{
auto article = new Article(this, hash);
@@ -425,7 +425,7 @@ void Feed::downloadIcon()
// Download the RSS Feed icon
// XXX: This works for most sites but it is not perfect
const QUrl url(m_url);
const auto iconUrl = QString::fromLatin1("%1://%2/favicon.ico").arg(url.scheme(), url.host());
const auto iconUrl = u"%1://%2/favicon.ico"_qs.arg(url.scheme(), url.host());
Net::DownloadManager::instance()->download(
Net::DownloadRequest(iconUrl).saveToFile(true).destFileName(m_iconPath)
, this, &Feed::handleIconDownloadFinished);

View File

@@ -399,8 +399,8 @@ namespace
{
// Check that if date has '-' separators, both separators are '-'.
parts = rxMatch.capturedTexts();
const bool h1 = (parts[3] == QLatin1String("-"));
const bool h2 = (parts[5] == QLatin1String("-"));
const bool h1 = (parts[3] == u"-");
const bool h2 = (parts[5] == u"-");
if (h1 != h2)
return QDateTime::currentDateTime();
}
@@ -476,7 +476,7 @@ namespace
if (!ok[0] || !ok[1] || offsetMin > 59)
return {};
offset += offsetMin * 60;
negOffset = (parts[1] == QLatin1String("-"));
negOffset = (parts[1] == u"-");
if (negOffset)
offset = -offset;
}
@@ -564,12 +564,12 @@ void Parser::parse_impl(const QByteArray &feedData)
while (xml.readNextStartElement())
{
if (xml.name() == QLatin1String("rss"))
if (xml.name() == u"rss")
{
// Find channels
while (xml.readNextStartElement())
{
if (xml.name() == QLatin1String("channel"))
if (xml.name() == u"channel")
{
parseRSSChannel(xml);
foundChannel = true;
@@ -581,7 +581,7 @@ void Parser::parse_impl(const QByteArray &feedData)
}
break;
}
if (xml.name() == QLatin1String("feed"))
if (xml.name() == u"feed")
{ // Atom feed
parseAtomChannel(xml);
foundChannel = true;
@@ -618,43 +618,43 @@ void Parser::parseRssArticle(QXmlStreamReader &xml)
xml.readNext();
const QString name(xml.name().toString());
if (xml.isEndElement() && (name == QLatin1String("item")))
if (xml.isEndElement() && (name == u"item"))
break;
if (xml.isStartElement())
{
if (name == QLatin1String("title"))
if (name == u"title")
{
article[Article::KeyTitle] = xml.readElementText().trimmed();
}
else if (name == QLatin1String("enclosure"))
else if (name == u"enclosure")
{
if (xml.attributes().value(u"type"_qs) == QLatin1String("application/x-bittorrent"))
article[Article::KeyTorrentURL] = xml.attributes().value(QLatin1String("url")).toString();
if (xml.attributes().value(u"type"_qs) == u"application/x-bittorrent")
article[Article::KeyTorrentURL] = xml.attributes().value(u"url"_qs).toString();
else if (xml.attributes().value(u"type"_qs).isEmpty())
altTorrentUrl = xml.attributes().value(QLatin1String("url")).toString();
altTorrentUrl = xml.attributes().value(u"url"_qs).toString();
}
else if (name == QLatin1String("link"))
else if (name == u"link")
{
const QString text {xml.readElementText().trimmed()};
if (text.startsWith(QLatin1String("magnet:"), Qt::CaseInsensitive))
if (text.startsWith(u"magnet:", Qt::CaseInsensitive))
article[Article::KeyTorrentURL] = text; // magnet link instead of a news URL
else
article[Article::KeyLink] = text;
}
else if (name == QLatin1String("description"))
else if (name == u"description")
{
article[Article::KeyDescription] = xml.readElementText(QXmlStreamReader::IncludeChildElements);
}
else if (name == QLatin1String("pubDate"))
else if (name == u"pubDate")
{
article[Article::KeyDate] = parseDate(xml.readElementText().trimmed());
}
else if (name == QLatin1String("author"))
else if (name == u"author")
{
article[Article::KeyAuthor] = xml.readElementText().trimmed();
}
else if (name == QLatin1String("guid"))
else if (name == u"guid")
{
article[Article::KeyId] = xml.readElementText().trimmed();
}
@@ -679,11 +679,11 @@ void Parser::parseRSSChannel(QXmlStreamReader &xml)
if (xml.isStartElement())
{
if (xml.name() == QLatin1String("title"))
if (xml.name() == u"title")
{
m_result.title = xml.readElementText();
}
else if (xml.name() == QLatin1String("lastBuildDate"))
else if (xml.name() == u"lastBuildDate")
{
const QString lastBuildDate = xml.readElementText();
if (!lastBuildDate.isEmpty())
@@ -696,7 +696,7 @@ void Parser::parseRSSChannel(QXmlStreamReader &xml)
m_result.lastBuildDate = lastBuildDate;
}
}
else if (xml.name() == QLatin1String("item"))
else if (xml.name() == u"item")
{
parseRssArticle(xml);
}
@@ -714,22 +714,22 @@ void Parser::parseAtomArticle(QXmlStreamReader &xml)
xml.readNext();
const QString name(xml.name().toString());
if (xml.isEndElement() && (name == QLatin1String("entry")))
if (xml.isEndElement() && (name == u"entry"))
break;
if (xml.isStartElement())
{
if (name == QLatin1String("title"))
if (name == u"title")
{
article[Article::KeyTitle] = xml.readElementText().trimmed();
}
else if (name == QLatin1String("link"))
else if (name == u"link")
{
const QString link = (xml.attributes().isEmpty()
? xml.readElementText().trimmed()
: xml.attributes().value(QLatin1String("href")).toString());
: xml.attributes().value(u"href"_qs).toString());
if (link.startsWith(QLatin1String("magnet:"), Qt::CaseInsensitive))
if (link.startsWith(u"magnet:", Qt::CaseInsensitive))
article[Article::KeyTorrentURL] = link; // magnet link instead of a news URL
else
// Atom feeds can have relative links, work around this and
@@ -738,7 +738,7 @@ void Parser::parseAtomArticle(QXmlStreamReader &xml)
article[Article::KeyLink] = (m_baseUrl.isEmpty() ? link : m_baseUrl + link);
}
else if ((name == QLatin1String("summary")) || (name == QLatin1String("content")))
else if ((name == u"summary") || (name == u"content"))
{
if (doubleContent)
{ // Duplicate content -> ignore
@@ -755,23 +755,23 @@ void Parser::parseAtomArticle(QXmlStreamReader &xml)
doubleContent = true;
}
}
else if (name == QLatin1String("updated"))
else if (name == u"updated")
{
// ATOM uses standard compliant date, don't do fancy stuff
const QDateTime articleDate = QDateTime::fromString(xml.readElementText().trimmed(), Qt::ISODate);
article[Article::KeyDate] = (articleDate.isValid() ? articleDate : QDateTime::currentDateTime());
}
else if (name == QLatin1String("author"))
else if (name == u"author")
{
while (xml.readNextStartElement())
{
if (xml.name() == QLatin1String("name"))
if (xml.name() == u"name")
article[Article::KeyAuthor] = xml.readElementText().trimmed();
else
xml.skipCurrentElement();
}
}
else if (name == QLatin1String("id"))
else if (name == u"id")
{
article[Article::KeyId] = xml.readElementText().trimmed();
}
@@ -795,11 +795,11 @@ void Parser::parseAtomChannel(QXmlStreamReader &xml)
if (xml.isStartElement())
{
if (xml.name() == QLatin1String("title"))
if (xml.name() == u"title")
{
m_result.title = xml.readElementText();
}
else if (xml.name() == QLatin1String("updated"))
else if (xml.name() == u"updated")
{
const QString lastBuildDate = xml.readElementText();
if (!lastBuildDate.isEmpty())
@@ -812,7 +812,7 @@ void Parser::parseAtomChannel(QXmlStreamReader &xml)
m_result.lastBuildDate = lastBuildDate;
}
}
else if (xml.name() == QLatin1String("entry"))
else if (xml.name() == u"entry")
{
parseAtomArticle(xml);
}

View File

@@ -49,9 +49,9 @@
#include "rss_item.h"
const int MsecsPerMin = 60000;
const QString CONF_FOLDER_NAME(QStringLiteral("rss"));
const QString DATA_FOLDER_NAME(QStringLiteral("rss/articles"));
const QString FEEDS_FILE_NAME(QStringLiteral("feeds.json"));
const QString CONF_FOLDER_NAME = u"rss"_qs;
const QString DATA_FOLDER_NAME = u"rss/articles"_qs;
const QString FEEDS_FILE_NAME = u"feeds.json"_qs;
using namespace RSS;
@@ -326,7 +326,7 @@ void Session::loadFolder(const QJsonObject &jsonObj, Folder *folder)
else
{
LogMsg(tr("Couldn't load RSS item. Item: \"%1\". Invalid data format.")
.arg(QString::fromLatin1("%1\\%2").arg(folder->path(), key)), Log::WARNING);
.arg(u"%1\\%2"_qs.arg(folder->path(), key)), Log::WARNING);
}
}
@@ -347,7 +347,7 @@ void Session::loadLegacy()
uint i = 0;
for (QString legacyPath : legacyFeedPaths)
{
if (Item::PathSeparator == QString(legacyPath[0]))
if (Item::PathSeparator == legacyPath[0])
legacyPath.remove(0, 1);
const QString parentFolderPath = Item::parentPath(legacyPath);
const QString feedUrl = Item::relativeName(legacyPath);