Rename to querier and promote to QObject

Took 39 minutes
This commit is contained in:
Lukas Brübach 2025-09-26 20:01:24 +02:00
parent 7e4a6563ec
commit 78a09da5a5
9 changed files with 43 additions and 40 deletions

View file

@ -24,7 +24,7 @@ set(cockatrice_SOURCES
src/database/card_database.cpp
src/database/card_database_loader.cpp
src/database/card_database_manager.cpp
src/database/card_database_queries.cpp
src/database/card_database_querier.cpp
src/database/model/card_database_model.cpp
src/database/model/card_database_display_model.cpp
src/database/model/card/card_completer_proxy_model.cpp

View file

@ -28,7 +28,7 @@ CardDatabase::CardDatabase(QObject *parent) : QObject(parent), loadStatus(NotLoa
connect(loader, &CardDatabaseLoader::newSetsFound, this, &CardDatabase::cardDatabaseNewSetsFound);
connect(loader, &CardDatabaseLoader::allNewSetsEnabled, this, &CardDatabase::cardDatabaseAllNewSetsEnabled);
queries = new CardDatabaseQueries(this);
querier = new CardDatabaseQuerier(this, this);
}
CardDatabase::~CardDatabase()

View file

@ -4,7 +4,7 @@
#include "../card/exact_card.h"
#include "../common/card_ref.h"
#include "card_database_loader.h"
#include "card_database_queries.h"
#include "card_database_querier.h"
#include <QBasicMutex>
#include <QDate>
@ -41,7 +41,7 @@ protected:
LoadStatus loadStatus;
CardDatabaseQueries *queries;
CardDatabaseQuerier *querier;
private:
void checkUnknownSets();
@ -67,9 +67,9 @@ public:
{
return loadStatus;
}
CardDatabaseQueries *query() const
CardDatabaseQuerier *query() const
{
return queries;
return querier;
}
void enableAllUnknownSets();
void markAllSetsAsKnown();
@ -90,7 +90,7 @@ signals:
void cardRemoved(CardInfoPtr card);
friend class CardDatabaseLoader;
friend class CardDatabaseQueries;
friend class CardDatabaseQuerier;
};
#endif

View file

@ -6,7 +6,7 @@ CardDatabase *CardDatabaseManager::getInstance()
return &instance;
}
CardDatabaseQueries *CardDatabaseManager::query()
CardDatabaseQuerier *CardDatabaseManager::query()
{
return getInstance()->query();
}

View file

@ -1,4 +1,3 @@
#ifndef CARD_DATABASE_ACCESSOR_H
#define CARD_DATABASE_ACCESSOR_H
@ -14,7 +13,7 @@ public:
// Static method to access the singleton instance
static CardDatabase *getInstance();
static CardDatabaseQueries *query();
static CardDatabaseQuerier *query();
private:
CardDatabaseManager() = default; // Private constructor

View file

@ -1,11 +1,11 @@
#include "card_database_queries.h"
#include "card_database_querier.h"
#include "../utility/card_set_comparator.h"
#include "card_database.h"
#include <qrandom.h>
CardDatabaseQueries::CardDatabaseQueries(const CardDatabase *_db) : db(_db)
CardDatabaseQuerier::CardDatabaseQuerier(QObject *_parent, const CardDatabase *_db) : QObject(_parent), db(_db)
{
}
@ -15,7 +15,7 @@ CardDatabaseQueries::CardDatabaseQueries(const CardDatabase *_db) : db(_db)
* @param cardName The card name to look up
* @return A CardInfoPtr, or null if not corresponding CardInfo is found.
*/
CardInfoPtr CardDatabaseQueries::getCardInfo(const QString &cardName) const
CardInfoPtr CardDatabaseQuerier::getCardInfo(const QString &cardName) const
{
return db->cards.value(cardName);
}
@ -26,7 +26,7 @@ CardInfoPtr CardDatabaseQueries::getCardInfo(const QString &cardName) const
* @param cardNames The card names to look up
* @return A List of CardInfoPtr. Any failed lookups will be ignored and dropped from the resulting list
*/
QList<CardInfoPtr> CardDatabaseQueries::getCardInfos(const QStringList &cardNames) const
QList<CardInfoPtr> CardDatabaseQuerier::getCardInfos(const QStringList &cardNames) const
{
QList<CardInfoPtr> cardInfos;
for (const QString &cardName : cardNames) {
@ -38,12 +38,12 @@ QList<CardInfoPtr> CardDatabaseQueries::getCardInfos(const QStringList &cardName
return cardInfos;
}
CardInfoPtr CardDatabaseQueries::getCardBySimpleName(const QString &cardName) const
CardInfoPtr CardDatabaseQuerier::getCardBySimpleName(const QString &cardName) const
{
return db->simpleNameCards.value(CardInfo::simplifyName(cardName));
}
CardInfoPtr CardDatabaseQueries::lookupCardByName(const QString &name) const
CardInfoPtr CardDatabaseQuerier::lookupCardByName(const QString &name) const
{
if (auto info = getCardInfo(name))
return info;
@ -61,7 +61,7 @@ CardInfoPtr CardDatabaseQueries::lookupCardByName(const QString &name) const
* that entry. If providerId is given but not found, the PrintingInfo will be empty for that entry.
* @return A list of cards. Any failed lookups will be ignored and dropped from the resulting list.
*/
QList<ExactCard> CardDatabaseQueries::getCards(const QList<CardRef> &cardRefs) const
QList<ExactCard> CardDatabaseQuerier::getCards(const QList<CardRef> &cardRefs) const
{
QList<ExactCard> cards;
for (const auto &cardRef : cardRefs) {
@ -81,7 +81,7 @@ QList<ExactCard> CardDatabaseQueries::getCards(const QList<CardRef> &cardRefs) c
* @param cardRef The card to look up.
* @return A specific printing of a card, or empty if not found.
*/
ExactCard CardDatabaseQueries::getCard(const CardRef &cardRef) const
ExactCard CardDatabaseQuerier::getCard(const CardRef &cardRef) const
{
auto info = getCardInfo(cardRef.name);
if (info.isNull()) {
@ -103,7 +103,7 @@ ExactCard CardDatabaseQueries::getCard(const CardRef &cardRef) const
* @param cardRef The card to look up.
* @return A specific printing of a card, or empty if not found.
*/
ExactCard CardDatabaseQueries::guessCard(const CardRef &cardRef) const
ExactCard CardDatabaseQuerier::guessCard(const CardRef &cardRef) const
{
auto card = lookupCardByName(cardRef.name);
auto printing =
@ -112,7 +112,7 @@ ExactCard CardDatabaseQueries::guessCard(const CardRef &cardRef) const
return ExactCard(card, printing);
}
ExactCard CardDatabaseQueries::getRandomCard() const
ExactCard CardDatabaseQuerier::getRandomCard() const
{
if (db->cards.isEmpty())
return {};
@ -125,7 +125,7 @@ ExactCard CardDatabaseQueries::getRandomCard() const
return ExactCard{randomCard, getPreferredPrinting(randomCard)};
}
ExactCard CardDatabaseQueries::getCardFromSameSet(const QString &cardName, const PrintingInfo &otherPrinting) const
ExactCard CardDatabaseQuerier::getCardFromSameSet(const QString &cardName, const PrintingInfo &otherPrinting) const
{
// The source card does not have a printing defined, which means we can't get a card from the same set.
if (otherPrinting == PrintingInfo()) {
@ -147,7 +147,7 @@ ExactCard CardDatabaseQueries::getCardFromSameSet(const QString &cardName, const
* @param providerId The uuid to look for
* @return The PrintingInfo, or a default-constructed PrintingInfo if not found.
*/
PrintingInfo CardDatabaseQueries::findPrintingWithId(const CardInfoPtr &cardInfo, const QString &providerId) const
PrintingInfo CardDatabaseQuerier::findPrintingWithId(const CardInfoPtr &cardInfo, const QString &providerId) const
{
for (const auto &printings : cardInfo->getSets()) {
for (const auto &printing : printings) {
@ -160,7 +160,7 @@ PrintingInfo CardDatabaseQueries::findPrintingWithId(const CardInfoPtr &cardInfo
return PrintingInfo();
}
PrintingInfo CardDatabaseQueries::getSpecificPrinting(const CardRef &cardRef) const
PrintingInfo CardDatabaseQuerier::getSpecificPrinting(const CardRef &cardRef) const
{
CardInfoPtr cardInfo = getCardInfo(cardRef.name);
if (!cardInfo) {
@ -170,7 +170,7 @@ PrintingInfo CardDatabaseQueries::getSpecificPrinting(const CardRef &cardRef) co
return findPrintingWithId(cardInfo, cardRef.providerId);
}
PrintingInfo CardDatabaseQueries::getSpecificPrinting(const QString &cardName,
PrintingInfo CardDatabaseQuerier::getSpecificPrinting(const QString &cardName,
const QString &setShortName,
const QString &collectorNumber) const
{
@ -208,12 +208,12 @@ PrintingInfo CardDatabaseQueries::getSpecificPrinting(const QString &cardName,
* @param cardInfo The cardInfo to find the preferred printing for
* @return A specific printing of a card
*/
ExactCard CardDatabaseQueries::getPreferredCard(const CardInfoPtr &cardInfo) const
ExactCard CardDatabaseQuerier::getPreferredCard(const CardInfoPtr &cardInfo) const
{
return ExactCard(cardInfo, getPreferredPrinting(cardInfo));
}
bool CardDatabaseQueries::isPreferredPrinting(const CardRef &cardRef) const
bool CardDatabaseQuerier::isPreferredPrinting(const CardRef &cardRef) const
{
if (cardRef.providerId.startsWith("card_")) {
return cardRef.providerId ==
@ -222,13 +222,13 @@ bool CardDatabaseQueries::isPreferredPrinting(const CardRef &cardRef) const
return cardRef.providerId == getPreferredPrintingProviderId(cardRef.name);
}
PrintingInfo CardDatabaseQueries::getPreferredPrinting(const QString &cardName) const
PrintingInfo CardDatabaseQuerier::getPreferredPrinting(const QString &cardName) const
{
CardInfoPtr cardInfo = getCardInfo(cardName);
return getPreferredPrinting(cardInfo);
}
PrintingInfo CardDatabaseQueries::getPreferredPrinting(const CardInfoPtr &cardInfo) const
PrintingInfo CardDatabaseQuerier::getPreferredPrinting(const CardInfoPtr &cardInfo) const
{
if (!cardInfo) {
return PrintingInfo(nullptr);
@ -260,7 +260,7 @@ PrintingInfo CardDatabaseQueries::getPreferredPrinting(const CardInfoPtr &cardIn
return PrintingInfo(nullptr);
}
QString CardDatabaseQueries::getPreferredPrintingProviderId(const QString &cardName) const
QString CardDatabaseQuerier::getPreferredPrintingProviderId(const QString &cardName) const
{
PrintingInfo preferredPrinting = getPreferredPrinting(cardName);
QString uuid = preferredPrinting.getUuid();
@ -275,7 +275,7 @@ QString CardDatabaseQueries::getPreferredPrintingProviderId(const QString &cardN
return defaultCardInfo->getName();
}
QStringList CardDatabaseQueries::getAllMainCardTypes() const
QStringList CardDatabaseQuerier::getAllMainCardTypes() const
{
QSet<QString> types;
for (const auto &card : db->cards.values()) {
@ -284,7 +284,7 @@ QStringList CardDatabaseQueries::getAllMainCardTypes() const
return types.values();
}
QMap<QString, int> CardDatabaseQueries::getAllMainCardTypesWithCount() const
QMap<QString, int> CardDatabaseQuerier::getAllMainCardTypesWithCount() const
{
QMap<QString, int> typeCounts;
@ -296,7 +296,7 @@ QMap<QString, int> CardDatabaseQueries::getAllMainCardTypesWithCount() const
return typeCounts;
}
QMap<QString, int> CardDatabaseQueries::getAllSubCardTypesWithCount() const
QMap<QString, int> CardDatabaseQuerier::getAllSubCardTypesWithCount() const
{
QMap<QString, int> typeCounts;

View file

@ -1,14 +1,18 @@
#ifndef COCKATRICE_CARD_DATABASE_QUERIES_H
#define COCKATRICE_CARD_DATABASE_QUERIES_H
#ifndef COCKATRICE_CARD_DATABASE_QUERIER_H
#define COCKATRICE_CARD_DATABASE_QUERIER_H
#include "../card/exact_card.h"
#include "../common/card_ref.h"
#include <QObject>
class CardDatabase;
class CardDatabaseQueries
class CardDatabaseQuerier : public QObject
{
Q_OBJECT
public:
explicit CardDatabaseQueries(const CardDatabase *db);
explicit CardDatabaseQuerier(QObject *parent, const CardDatabase *db);
[[nodiscard]] CardInfoPtr getCardInfo(const QString &cardName) const;
[[nodiscard]] QList<CardInfoPtr> getCardInfos(const QStringList &cardNames) const;
@ -47,4 +51,4 @@ private:
CardInfoPtr lookupCardByName(const QString &name) const;
};
#endif // COCKATRICE_CARD_DATABASE_QUERIES_H
#endif // COCKATRICE_CARD_DATABASE_QUERIER_H

View file

@ -9,7 +9,7 @@ set(dbconverter_SOURCES
../cockatrice/src/card/exact_card.cpp
../cockatrice/src/database/card_database.cpp
../cockatrice/src/database/card_database_loader.cpp
../cockatrice/src/database/card_database_queries.cpp
../cockatrice/src/database/card_database_querier.cpp
../cockatrice/src/database/parser/card_database_parser.cpp
../cockatrice/src/database/parser/cockatrice_xml_3.cpp
../cockatrice/src/database/parser/cockatrice_xml_4.cpp

View file

@ -22,7 +22,7 @@ add_executable(
../../cockatrice/src/card/exact_card.cpp
../../cockatrice/src/database/card_database.cpp
../../cockatrice/src/database/card_database_loader.cpp
../../cockatrice/src/database/card_database_queries.cpp
../../cockatrice/src/database/card_database_querier.cpp
../../cockatrice/src/database/parser/card_database_parser.cpp
../../cockatrice/src/database/parser/cockatrice_xml_3.cpp
../../cockatrice/src/database/parser/cockatrice_xml_4.cpp
@ -38,7 +38,7 @@ add_executable(
../../cockatrice/src/card/exact_card.cpp
../../cockatrice/src/database/card_database.cpp
../../cockatrice/src/database/card_database_loader.cpp
../../cockatrice/src/database/card_database_queries.cpp
../../cockatrice/src/database/card_database_querier.cpp
../../cockatrice/src/database/card_database_manager.cpp
../../cockatrice/src/database/parser/card_database_parser.cpp
../../cockatrice/src/database/parser/cockatrice_xml_3.cpp