summaryrefslogtreecommitdiffstats
path: root/src/library/dao/settingsdao.h
blob: aa0c673342e3c0e566ca1414615d2a93574992cb (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#pragma once

#include <QSqlDatabase>
#include <QString>
#include <QVariant>

// All library-specific preferences go in the library settings table
class SettingsDAO final {
  public:
    explicit SettingsDAO(QSqlDatabase database)
            : m_database(std::move(database)) {
    }

    QString getValue(
            const QString& name,
            QString defaultValue = QString()) const;
    bool setValue(
            const QString& name,
            const QVariant& value) const;

  private:
    const QSqlDatabase m_database;
};