mirror of
https://github.com/HenkKalkwater/harbour-sailfin.git
synced 2024-11-25 10:25:17 +00:00
WIP: Reimplementation of ListModels.
This commit is contained in:
parent
76a49868b9
commit
e421adf733
|
@ -9,6 +9,7 @@ set(JellyfinQt_SOURCES
|
||||||
src/support/jsonconv.cpp
|
src/support/jsonconv.cpp
|
||||||
src/support/loader.cpp
|
src/support/loader.cpp
|
||||||
src/viewmodel/item.cpp
|
src/viewmodel/item.cpp
|
||||||
|
src/viewmodel/itemmodel.cpp
|
||||||
src/viewmodel/loader.cpp
|
src/viewmodel/loader.cpp
|
||||||
src/viewmodel/playbackmanager.cpp
|
src/viewmodel/playbackmanager.cpp
|
||||||
src/apiclient.cpp
|
src/apiclient.cpp
|
||||||
|
@ -28,7 +29,9 @@ set(JellyfinQt_HEADERS
|
||||||
include/JellyfinQt/support/jsonconv.h
|
include/JellyfinQt/support/jsonconv.h
|
||||||
include/JellyfinQt/support/loader.h
|
include/JellyfinQt/support/loader.h
|
||||||
include/JellyfinQt/viewmodel/item.h
|
include/JellyfinQt/viewmodel/item.h
|
||||||
|
include/JellyfinQt/viewmodel/itemmodel.h
|
||||||
include/JellyfinQt/viewmodel/loader.h
|
include/JellyfinQt/viewmodel/loader.h
|
||||||
|
include/JellyfinQt/viewmodel/propertyhelper.h
|
||||||
include/JellyfinQt/viewmodel/playbackmanager.h
|
include/JellyfinQt/viewmodel/playbackmanager.h
|
||||||
include/JellyfinQt/apiclient.h
|
include/JellyfinQt/apiclient.h
|
||||||
include/JellyfinQt/apimodel.h
|
include/JellyfinQt/apimodel.h
|
||||||
|
|
|
@ -702,7 +702,8 @@ set(openapi_HEADERS
|
||||||
./include/JellyfinQt/loader/http/headvideostream.h
|
./include/JellyfinQt/loader/http/headvideostream.h
|
||||||
./include/JellyfinQt/loader/http/mergeversions.h
|
./include/JellyfinQt/loader/http/mergeversions.h
|
||||||
./include/JellyfinQt/loader/http/getyears.h
|
./include/JellyfinQt/loader/http/getyears.h
|
||||||
./include/JellyfinQt/loader/http/getyear.h)
|
./include/JellyfinQt/loader/http/getyear.h
|
||||||
|
./include/JellyfinQt/loader/requesttypes.h)
|
||||||
|
|
||||||
set(openapi_SOURCES
|
set(openapi_SOURCES
|
||||||
./src/dto/loglevel.cpp
|
./src/dto/loglevel.cpp
|
||||||
|
@ -1377,4 +1378,4 @@ set(openapi_SOURCES
|
||||||
./src/loader/http/mergeversions.cpp
|
./src/loader/http/mergeversions.cpp
|
||||||
./src/loader/http/getyears.cpp
|
./src/loader/http/getyears.cpp
|
||||||
./src/loader/http/getyear.cpp
|
./src/loader/http/getyear.cpp
|
||||||
./include/JellyfinQt/loader/requesttypes.h)
|
./src/loader/requesttypes.cpp)
|
||||||
|
|
|
@ -6,9 +6,9 @@
|
||||||
*/
|
*/
|
||||||
{{/if}}
|
{{/if}}
|
||||||
|
|
||||||
class {{className}} : public {{supportNamespace}}::HttpLoader<{{dtoNamespace}}::{{endpoint.resultType}}, {{endpoint.parameterType}}> {
|
class {{className}}Loader : public {{supportNamespace}}::HttpLoader<{{dtoNamespace}}::{{endpoint.resultType}}, {{endpoint.parameterType}}> {
|
||||||
public:
|
public:
|
||||||
explicit {{className}}(ApiClient *apiClient = nullptr);
|
explicit {{className}}Loader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const {{endpoint.parameterType}}& parameters) const override;
|
QString path(const {{endpoint.parameterType}}& parameters) const override;
|
||||||
|
|
|
@ -1,15 +1,15 @@
|
||||||
{{#if endpoint.hasSuccessResponse}}
|
{{#if endpoint.hasSuccessResponse}}
|
||||||
|
|
||||||
{{className}}::{{className}}(ApiClient *apiClient)
|
{{className}}Loader::{{className}}Loader(ApiClient *apiClient)
|
||||||
: {{supportNamespace}}::HttpLoader<{{dtoNamespace}}::{{endpoint.resultType}}, {{endpoint.parameterType}}>(apiClient) {}
|
: {{supportNamespace}}::HttpLoader<{{dtoNamespace}}::{{endpoint.resultType}}, {{endpoint.parameterType}}>(apiClient) {}
|
||||||
|
|
||||||
QString {{className}}::path(const {{endpoint.parameterType}} ¶ms) const {
|
QString {{className}}Loader::path(const {{endpoint.parameterType}} ¶ms) const {
|
||||||
Q_UNUSED(params) // Might be overzealous, but I don't like theses kind of warnings
|
Q_UNUSED(params) // Might be overzealous, but I don't like theses kind of warnings
|
||||||
|
|
||||||
return {{pathStringInterpolation "params"}};
|
return {{pathStringInterpolation "params"}};
|
||||||
}
|
}
|
||||||
|
|
||||||
QUrlQuery {{className}}::query(const {{endpoint.parameterType}} ¶ms) const {
|
QUrlQuery {{className}}Loader::query(const {{endpoint.parameterType}} ¶ms) const {
|
||||||
Q_UNUSED(params) // Might be overzealous, but I don't like theses kind of warnings
|
Q_UNUSED(params) // Might be overzealous, but I don't like theses kind of warnings
|
||||||
|
|
||||||
QUrlQuery result;
|
QUrlQuery result;
|
||||||
|
|
|
@ -94,7 +94,7 @@ public:
|
||||||
Q_PROPERTY(QString version READ version)
|
Q_PROPERTY(QString version READ version)
|
||||||
Q_PROPERTY(EventBus *eventbus READ eventbus FINAL)
|
Q_PROPERTY(EventBus *eventbus READ eventbus FINAL)
|
||||||
Q_PROPERTY(WebSocket *websocket READ websocket FINAL)
|
Q_PROPERTY(WebSocket *websocket READ websocket FINAL)
|
||||||
Q_PROPERTY(QList<DTO::GeneralCommandType> supportedCommands READ supportedCommands WRITE setSupportedCommands NOTIFY supportedCommandsChanged)
|
Q_PROPERTY(QVariantList supportedCommands READ supportedCommands WRITE setSupportedCommands NOTIFY supportedCommandsChanged)
|
||||||
/**
|
/**
|
||||||
* Wether this ApiClient operates in "online mode".
|
* Wether this ApiClient operates in "online mode".
|
||||||
*
|
*
|
||||||
|
@ -138,8 +138,8 @@ public:
|
||||||
* The list support commands will be sent to the Jellyfin server. QML applications should listen to
|
* The list support commands will be sent to the Jellyfin server. QML applications should listen to
|
||||||
* the events emitted by the eventBus and act accordingly.
|
* the events emitted by the eventBus and act accordingly.
|
||||||
*/
|
*/
|
||||||
QList<GeneralCommandType> supportedCommands() const { return m_supportedCommands; }
|
QVariantList supportedCommands() const { return m_supportedCommands; }
|
||||||
void setSupportedCommands(QList<GeneralCommandType> newSupportedCommands) { m_supportedCommands = newSupportedCommands; }
|
void setSupportedCommands(QVariantList newSupportedCommands) { m_supportedCommands = newSupportedCommands; emit supportedCommandsChanged(); }
|
||||||
QJsonObject &deviceProfile() { return m_deviceProfile; }
|
QJsonObject &deviceProfile() { return m_deviceProfile; }
|
||||||
QJsonObject &playbackDeviceProfile() { return m_playbackDeviceProfile; }
|
QJsonObject &playbackDeviceProfile() { return m_playbackDeviceProfile; }
|
||||||
/**
|
/**
|
||||||
|
@ -278,7 +278,7 @@ private:
|
||||||
QJsonObject m_deviceProfile;
|
QJsonObject m_deviceProfile;
|
||||||
QJsonObject m_playbackDeviceProfile;
|
QJsonObject m_playbackDeviceProfile;
|
||||||
bool m_online = true;
|
bool m_online = true;
|
||||||
QList<GeneralCommandType> m_supportedCommands;
|
QVariantList m_supportedCommands;
|
||||||
|
|
||||||
bool m_authenticated = false;
|
bool m_authenticated = false;
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -20,12 +20,17 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
#ifndef JELLYFIN_API_MODEL
|
#ifndef JELLYFIN_API_MODEL
|
||||||
#define JELLYFIN_API_MODEL
|
#define JELLYFIN_API_MODEL
|
||||||
|
|
||||||
|
#include <optional>
|
||||||
|
|
||||||
#include <QAbstractListModel>
|
#include <QAbstractListModel>
|
||||||
#include <QFlags>
|
#include <QFlags>
|
||||||
|
#include <QFuture>
|
||||||
|
#include <QFutureWatcher>
|
||||||
#include <QMetaEnum>
|
#include <QMetaEnum>
|
||||||
#include <QJsonArray>
|
#include <QJsonArray>
|
||||||
#include <QJsonDocument>
|
#include <QJsonDocument>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
|
#include <QtConcurrent/QtConcurrent>
|
||||||
#include <QtQml>
|
#include <QtQml>
|
||||||
#include <QQmlParserStatus>
|
#include <QQmlParserStatus>
|
||||||
#include <QVariant>
|
#include <QVariant>
|
||||||
|
@ -36,41 +41,22 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
#include "dto/baseitemdto.h"
|
#include "dto/baseitemdto.h"
|
||||||
#include "dto/userdto.h"
|
#include "dto/userdto.h"
|
||||||
#include "dto/useritemdatadto.h"
|
#include "dto/useritemdatadto.h"
|
||||||
|
#include "dto/baseitemdtoqueryresult.h"
|
||||||
|
#include "loader/requesttypes.h"
|
||||||
|
#include "support/loader.h"
|
||||||
|
|
||||||
namespace Jellyfin {
|
namespace Jellyfin {
|
||||||
|
|
||||||
class SortOptions : public QObject {
|
|
||||||
Q_OBJECT
|
|
||||||
public:
|
|
||||||
explicit SortOptions (QObject *parent = nullptr) : QObject(parent) {}
|
|
||||||
enum SortBy {
|
|
||||||
Album,
|
|
||||||
AlbumArtist,
|
|
||||||
Artist,
|
|
||||||
Budget,
|
|
||||||
CommunityRating,
|
|
||||||
CriticRating,
|
|
||||||
DateCreated,
|
|
||||||
DatePlayed,
|
|
||||||
PlayCount,
|
|
||||||
PremiereDate,
|
|
||||||
ProductionYear,
|
|
||||||
SortName,
|
|
||||||
Random,
|
|
||||||
Revenue,
|
|
||||||
Runtime
|
|
||||||
};
|
|
||||||
Q_ENUM(SortBy)
|
|
||||||
};
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Q_OBJECT does not support template classes. This base class declares the
|
* Pageable response, which support offset and record parameters. The result
|
||||||
* Q_OBJECT related properties and signals.
|
* should contain a field with the total item count, returned item count and an array
|
||||||
|
* containing the results.
|
||||||
*/
|
*/
|
||||||
class BaseApiModel : public QAbstractListModel, public QQmlParserStatus {
|
struct PageableResponse;
|
||||||
Q_OBJECT
|
|
||||||
|
class ModelStatusClass {
|
||||||
|
Q_GADGET
|
||||||
public:
|
public:
|
||||||
explicit BaseApiModel(QString path, bool hasRecordResponse, bool addUserId, QObject *parent = nullptr);
|
|
||||||
enum ModelStatus {
|
enum ModelStatus {
|
||||||
Uninitialised,
|
Uninitialised,
|
||||||
Loading,
|
Loading,
|
||||||
|
@ -79,61 +65,51 @@ public:
|
||||||
LoadingMore
|
LoadingMore
|
||||||
};
|
};
|
||||||
Q_ENUM(ModelStatus)
|
Q_ENUM(ModelStatus)
|
||||||
|
private:
|
||||||
|
ModelStatusClass() {}
|
||||||
|
};
|
||||||
|
|
||||||
enum SortOrder {
|
using ModelStatus = ModelStatusClass::ModelStatus;
|
||||||
Unspecified,
|
|
||||||
Ascending,
|
class BaseModelLoader : public QObject, public QQmlParserStatus {
|
||||||
Descending
|
Q_INTERFACES(QQmlParserStatus)
|
||||||
};
|
Q_OBJECT
|
||||||
Q_ENUM(SortOrder)
|
public:
|
||||||
Q_PROPERTY(ApiClient *apiClient MEMBER m_apiClient NOTIFY apiClientChanged)
|
explicit BaseModelLoader(QObject *parent = nullptr);
|
||||||
|
Q_PROPERTY(ApiClient *apiClient READ apiClient WRITE setApiClient NOTIFY apiClientChanged)
|
||||||
Q_PROPERTY(ModelStatus status READ status NOTIFY statusChanged)
|
Q_PROPERTY(ModelStatus status READ status NOTIFY statusChanged)
|
||||||
|
Q_PROPERTY(int limit READ limit WRITE setLimit NOTIFY limitChanged)
|
||||||
|
Q_PROPERTY(bool autoReload READ autoReload WRITE setAutoReload NOTIFY autoReloadChanged)
|
||||||
|
|
||||||
// Query properties
|
ApiClient *apiClient() const { return m_apiClient; }
|
||||||
Q_PROPERTY(int limit MEMBER m_limit NOTIFY limitChanged)
|
void setApiClient(ApiClient *newApiClient);
|
||||||
Q_PROPERTY(QList<QString> sortBy MEMBER m_sortBy NOTIFY sortByChanged)
|
|
||||||
Q_PROPERTY(QList<QString> fields MEMBER m_fields NOTIFY fieldsChanged)
|
int limit() const { return m_limit; }
|
||||||
Q_PROPERTY(SortOrder sortOrder MEMBER m_sortOrder NOTIFY sortOrderChanged)
|
void setLimit(int newLimit);
|
||||||
|
bool autoReload() const { return m_autoReload; }
|
||||||
|
void setAutoReload(bool newAutoReload);
|
||||||
|
|
||||||
ModelStatus status() const { return m_status; }
|
ModelStatus status() const { return m_status; }
|
||||||
void setApiClient(ApiClient *newApiClient);
|
|
||||||
void setLimit(int newLimit);
|
|
||||||
|
|
||||||
// From AbstractListModel, gets implemented in ApiModel<T>
|
|
||||||
virtual int rowCount(const QModelIndex &index) const override = 0;
|
|
||||||
virtual QHash<int, QByteArray> roleNames() const override = 0;
|
|
||||||
virtual QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override = 0;
|
|
||||||
virtual bool canFetchMore(const QModelIndex &parent) const override = 0;
|
|
||||||
virtual void fetchMore(const QModelIndex &parent) override = 0;
|
|
||||||
|
|
||||||
|
// QQmlParserStatus interface
|
||||||
|
virtual void classBegin() override;
|
||||||
|
virtual void componentComplete() override;
|
||||||
|
|
||||||
|
void autoReloadIfNeeded();
|
||||||
signals:
|
signals:
|
||||||
void ready();
|
void ready();
|
||||||
void apiClientChanged(ApiClient *newApiClient);
|
void apiClientChanged(ApiClient *newApiClient);
|
||||||
void statusChanged(ModelStatus newStatus);
|
void statusChanged();
|
||||||
void limitChanged(int newLimit);
|
void limitChanged(int newLimit);
|
||||||
void sortByChanged(QList<QString> newSortOrder);
|
void autoReloadChanged(bool newAutoReload);
|
||||||
void sortOrderChanged(SortOrder newSortOrder);
|
|
||||||
void fieldsChanged(QList<QString> newFields);
|
|
||||||
|
|
||||||
public slots:
|
void reloadWanted();
|
||||||
/**
|
|
||||||
* @brief (Re)loads the data into this model. This might make a network request.
|
|
||||||
*/
|
|
||||||
void reload();
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
enum LoadType {
|
// Is this object being parsed by the QML engine
|
||||||
RELOAD,
|
|
||||||
LOAD_MORE
|
|
||||||
};
|
|
||||||
|
|
||||||
ApiClient *m_apiClient = nullptr;
|
|
||||||
bool m_isBeingParsed = false;
|
bool m_isBeingParsed = false;
|
||||||
// Per-model specific settings.
|
ApiClient *m_apiClient = nullptr;
|
||||||
QString m_path;
|
bool m_autoReload = true;
|
||||||
bool m_hasRecordResponse;
|
|
||||||
bool m_addUserId;
|
|
||||||
|
|
||||||
// Query/record controlling properties
|
// Query/record controlling properties
|
||||||
int m_limit = -1;
|
int m_limit = -1;
|
||||||
|
@ -141,55 +117,168 @@ protected:
|
||||||
int m_totalRecordCount = 0;
|
int m_totalRecordCount = 0;
|
||||||
const int DEFAULT_LIMIT = 100;
|
const int DEFAULT_LIMIT = 100;
|
||||||
|
|
||||||
// Query properties
|
ModelStatus m_status = ModelStatus::Uninitialised;
|
||||||
QList<QString> m_fields = {};
|
|
||||||
QList<QString> m_sortBy = {};
|
|
||||||
SortOrder m_sortOrder = Unspecified;
|
|
||||||
|
|
||||||
// State properties.
|
|
||||||
ModelStatus m_status = Uninitialised;
|
|
||||||
|
|
||||||
void setStatus(ModelStatus newStatus) {
|
void setStatus(ModelStatus newStatus) {
|
||||||
if (this->m_status != newStatus) {
|
if (this->m_status != newStatus) {
|
||||||
this->m_status = newStatus;
|
this->m_status = newStatus;
|
||||||
emit this->statusChanged(newStatus);
|
emit this->statusChanged();
|
||||||
if (m_status == Ready) {
|
if (this->m_status == ModelStatus::Ready) {
|
||||||
emit ready();
|
emit ready();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void load(LoadType loadType);
|
|
||||||
virtual void setModelData(QJsonArray &data) = 0;
|
|
||||||
virtual void appendModelData(QJsonArray &data) = 0;
|
|
||||||
/**
|
|
||||||
* @brief Adds parameters to the query
|
|
||||||
* @param query The query to add parameters to
|
|
||||||
*
|
|
||||||
* This method is intended to be overrided by subclasses. It gets called
|
|
||||||
* before a request is made to the server and can be used to enable
|
|
||||||
* query types specific for a certain model to be available.
|
|
||||||
*
|
|
||||||
* Make sure to call the method in the superclass as well!
|
|
||||||
*/
|
|
||||||
virtual void addQueryParameters(QUrlQuery &query);
|
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Replaces placeholders in an URL.
|
|
||||||
* @param path The path in which placeholders should be replaced.
|
|
||||||
*
|
|
||||||
* This method is intended to be overrided by subclasses. It gets called
|
|
||||||
* before a request is made to the server and can be used to enable
|
|
||||||
* query types specific for a certain model to be available.
|
|
||||||
*
|
|
||||||
* Make sure to call the method in the superclass as well!
|
|
||||||
*/
|
|
||||||
virtual void replacePathPlaceholders(QString &path);
|
|
||||||
|
|
||||||
virtual void classBegin() override;
|
|
||||||
virtual void componentComplete() override;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Base model loader that only has one template parameter,
|
||||||
|
* so it can be used within the ApiModel.
|
||||||
|
*/
|
||||||
|
template <class T>
|
||||||
|
class ModelLoader : public BaseModelLoader {
|
||||||
|
public:
|
||||||
|
ModelLoader(QObject *parent = nullptr)
|
||||||
|
: BaseModelLoader(parent) {}
|
||||||
|
|
||||||
|
QList<T> reload() {
|
||||||
|
m_startIndex = 0;
|
||||||
|
m_totalRecordCount = -1;
|
||||||
|
return loadMore();
|
||||||
|
}
|
||||||
|
|
||||||
|
QList<T> loadMore() {
|
||||||
|
if (m_startIndex == 0) {
|
||||||
|
this->setStatus(ModelStatus::Loading);
|
||||||
|
} else {
|
||||||
|
this->setStatus(ModelStatus::LoadingMore);
|
||||||
|
}
|
||||||
|
std::pair<QList<T>, int> result;
|
||||||
|
try {
|
||||||
|
result = loadMore(m_startIndex, m_limit);
|
||||||
|
} catch(Support::LoadException &e) {
|
||||||
|
qWarning() << "Exception while loading in ModelLoader: " << e.what();
|
||||||
|
return QList<T>();
|
||||||
|
}
|
||||||
|
m_startIndex += result.first.size();
|
||||||
|
m_totalRecordCount = result.second;
|
||||||
|
return result.first;
|
||||||
|
}
|
||||||
|
|
||||||
|
virtual bool canLoadMore() const {
|
||||||
|
return m_totalRecordCount == -1 || m_startIndex < m_totalRecordCount;
|
||||||
|
}
|
||||||
|
protected:
|
||||||
|
virtual std::pair<QList<T>, int> loadMore(int offset, int limit) = 0;
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Template to extract records from the given result.
|
||||||
|
*/
|
||||||
|
template <class T, class R>
|
||||||
|
QList<T> extractRecords(const R &result) {
|
||||||
|
Q_UNUSED(result)
|
||||||
|
Q_UNIMPLEMENTED();
|
||||||
|
return QList<T>();
|
||||||
|
}
|
||||||
|
|
||||||
|
template <class R>
|
||||||
|
int extractTotalRecordCount(const R &result) {
|
||||||
|
Q_UNUSED(result)
|
||||||
|
Q_UNIMPLEMENTED();
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
template <class R>
|
||||||
|
void setRequestLimit(R ¶meters, int limit) {
|
||||||
|
Q_UNUSED(parameters)
|
||||||
|
Q_UNUSED(limit)
|
||||||
|
Q_UNIMPLEMENTED();
|
||||||
|
}
|
||||||
|
|
||||||
|
template <class P>
|
||||||
|
void setRequestStartIndex(P ¶meters, int startIndex) {
|
||||||
|
Q_UNUSED(parameters)
|
||||||
|
Q_UNUSED(startIndex)
|
||||||
|
Q_UNIMPLEMENTED();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Template for implementing a loader for the given type, response and parameters
|
||||||
|
* @tparam T type of which this loader should load a list of
|
||||||
|
* @tparam D type of the DTO which can be converted into T using T(const D&, ApiClient*);
|
||||||
|
* @tparam R type of the deserialized loader response
|
||||||
|
* @tparam P type of the deserialized loader request parameters
|
||||||
|
*/
|
||||||
|
template <class T, class D, class R, class P>
|
||||||
|
class LoaderModelLoader : public ModelLoader<T> {
|
||||||
|
public:
|
||||||
|
explicit LoaderModelLoader(Support::Loader<R, P> loader, QObject *parent = nullptr)
|
||||||
|
: ModelLoader<T>(parent), m_loader(loader) { }
|
||||||
|
protected:
|
||||||
|
std::pair<QList<T>, int> loadMore(int offset, int limit) override {
|
||||||
|
QMutexLocker(&this->m_mutex);
|
||||||
|
// We never want to set this while the loader is running, hence the Mutex and setting it here
|
||||||
|
// instead when Loader::setApiClient is called.
|
||||||
|
this->m_loader.setApiClient(this->m_apiClient);
|
||||||
|
try {
|
||||||
|
setRequestStartIndex<P>(this->m_parameters, offset);
|
||||||
|
setRequestLimit(this->m_parameters, limit);
|
||||||
|
R result;
|
||||||
|
try {
|
||||||
|
std::optional<R> optResult = m_loader.load(this->m_parameters);
|
||||||
|
if (!optResult.has_value()) {
|
||||||
|
this->setStatus(ModelStatus::Error);
|
||||||
|
return {QList<T>(), -1};
|
||||||
|
}
|
||||||
|
result = optResult.value();
|
||||||
|
} catch (Support::LoadException e) {
|
||||||
|
this->setStatus(ModelStatus::Error);
|
||||||
|
return {QList<T>(), -1};
|
||||||
|
}
|
||||||
|
|
||||||
|
QList<D> records = extractRecords<D, R>(result);
|
||||||
|
int totalRecordCount = extractTotalRecordCount<R>(result);
|
||||||
|
// If totalRecordCount < 0, it is not supported for this endpoint
|
||||||
|
if (totalRecordCount < 0) {
|
||||||
|
totalRecordCount = records.size();
|
||||||
|
}
|
||||||
|
QList<T> models;
|
||||||
|
models.reserve(records.size());
|
||||||
|
|
||||||
|
// Convert the DTOs into models
|
||||||
|
for (int i = 0; i < records.size(); i++) {
|
||||||
|
models[i] = T(records[i], m_loader.apiClient());
|
||||||
|
}
|
||||||
|
this->setStatus(ModelStatus::Ready);
|
||||||
|
return { models, totalRecordCount};
|
||||||
|
} catch (Support::LoadException e) {
|
||||||
|
//this->setErrorString(QString(e.what()));
|
||||||
|
this->setStatus(ModelStatus::Error);
|
||||||
|
return {QList<T>(), -1};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Support::Loader<R, P> m_loader;
|
||||||
|
QMutex m_mutex;
|
||||||
|
P m_parameters;
|
||||||
|
};
|
||||||
|
|
||||||
|
class BaseApiModel : public QAbstractListModel {
|
||||||
|
Q_OBJECT
|
||||||
|
public:
|
||||||
|
BaseApiModel(QObject *parent = nullptr)
|
||||||
|
: QAbstractListModel (parent) {}
|
||||||
|
|
||||||
|
Q_PROPERTY(BaseModelLoader *loader READ loader WRITE setLoader NOTIFY loaderChanged)
|
||||||
|
|
||||||
|
virtual BaseModelLoader *loader() const = 0;
|
||||||
|
virtual void setLoader(BaseModelLoader *newLoader) {
|
||||||
|
Q_UNUSED(newLoader);
|
||||||
|
connect(newLoader, &BaseModelLoader::reloadWanted, this, &BaseApiModel::reload);
|
||||||
|
emit loaderChanged();
|
||||||
|
};
|
||||||
|
public slots:
|
||||||
|
virtual void reload();
|
||||||
|
signals:
|
||||||
|
void loaderChanged();
|
||||||
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Abstract model for displaying a REST JSON collection. Role names will be based on the fields encountered in the
|
* @brief Abstract model for displaying a REST JSON collection. Role names will be based on the fields encountered in the
|
||||||
|
@ -214,6 +303,10 @@ protected:
|
||||||
* @endcode
|
* @endcode
|
||||||
* The model will have roleNames for "name" and "id".
|
* The model will have roleNames for "name" and "id".
|
||||||
*
|
*
|
||||||
|
* @tparam T The class of the result.
|
||||||
|
* @tparam R The class returned by the loader.
|
||||||
|
* @tparam P The class with the request parameters for the loader.
|
||||||
|
*
|
||||||
*/
|
*/
|
||||||
template <class T>
|
template <class T>
|
||||||
class ApiModel : public BaseApiModel {
|
class ApiModel : public BaseApiModel {
|
||||||
|
@ -246,156 +339,126 @@ public:
|
||||||
* @endcode
|
* @endcode
|
||||||
* responseHasRecords should be true
|
* responseHasRecords should be true
|
||||||
*/
|
*/
|
||||||
explicit ApiModel(QString path, bool responseHasRecords, bool passUserId = false, QObject *parent = nullptr);
|
explicit ApiModel(QObject *parent = nullptr)
|
||||||
|
: BaseApiModel(parent) {
|
||||||
|
m_futureWatcherConnection = connect(&m_futureWatcher, &QFutureWatcher<QList<T>>::finished,
|
||||||
|
[&](){ futureFinished(); });
|
||||||
|
}
|
||||||
|
|
||||||
// Standard QAbstractItemModel overrides
|
// Standard QAbstractItemModel overrides
|
||||||
int rowCount(const QModelIndex &index) const override {
|
int rowCount(const QModelIndex &index) const override {
|
||||||
if (!index.isValid()) return m_array.size();
|
if (!index.isValid()) return m_array.size();
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
QHash<int, QByteArray> roleNames() const override { return m_roles; }
|
|
||||||
QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override;
|
|
||||||
bool canFetchMore(const QModelIndex &parent) const override;
|
|
||||||
void fetchMore(const QModelIndex &parent) override;
|
|
||||||
|
|
||||||
// Helper methods
|
|
||||||
template<typename QEnum>
|
|
||||||
QString enumToString (const QEnum anEnum) { return QVariant::fromValue(anEnum).toString(); }
|
|
||||||
|
|
||||||
// QList-like API
|
// QList-like API
|
||||||
T* at(int index) { return m_array.at(index); }
|
T& at(int index) { return m_array.at(index); }
|
||||||
int size() { return rowCount(QModelIndex()); }
|
/**
|
||||||
void insert(int index, T* object);
|
* @return the amount of objects in this model.
|
||||||
void append(T* object) { insert(size(), object); }
|
*/
|
||||||
void removeAt(int index);
|
int size() {
|
||||||
void removeOne(T* object);
|
return m_array.size();
|
||||||
|
}
|
||||||
|
|
||||||
template<typename QEnum>
|
void insert(int index, T &object) {
|
||||||
QString enumListToString (const QList<QEnum> enumList) {
|
Q_ASSERT(index >= 0 && index <= size());
|
||||||
QString result;
|
this->beginInsertRows(QModelIndex(), index, index);
|
||||||
for (QEnum e : enumList) {
|
m_array.insert(index, object);
|
||||||
result += QVariant::fromValue(e).toString() + ",";
|
this->endInsertRows();
|
||||||
|
}
|
||||||
|
|
||||||
|
void append(T &object) { insert(size(), object); }
|
||||||
|
void append(QList<T> &objects) {
|
||||||
|
int index = size();
|
||||||
|
this->beginInsertRows(QModelIndex(), index, index + objects.size());
|
||||||
|
m_array.append(objects);
|
||||||
|
this->endInsertRows();
|
||||||
|
};
|
||||||
|
|
||||||
|
void removeAt(int index) {
|
||||||
|
this->beginRemoveRows(QModelIndex(), index, index);
|
||||||
|
m_array.removeAt(index);
|
||||||
|
this->endRemoveRows();
|
||||||
|
}
|
||||||
|
|
||||||
|
void removeOne(T &object) {
|
||||||
|
int idx = m_array.indexOf(object);
|
||||||
|
if (idx >= 0) {
|
||||||
|
removeAt(idx);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// From AbstractListModel, gets implemented in ApiModel<T>
|
||||||
|
//virtual QHash<int, QByteArray> roleNames() const override = 0;
|
||||||
|
/*virtual QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override = 0;*/
|
||||||
|
virtual bool canFetchMore(const QModelIndex &parent) const override {
|
||||||
|
if (parent.isValid()) return false;
|
||||||
|
if (m_loader == nullptr) return false;
|
||||||
|
return m_loader->canLoadMore();
|
||||||
|
}
|
||||||
|
virtual void fetchMore(const QModelIndex &parent) override {
|
||||||
|
if (parent.isValid()) return;
|
||||||
|
if (m_loader != nullptr) {
|
||||||
|
QFuture<QList<T>> result = QtConcurrent::run(m_loader, &ModelLoader<T>::loadMore);
|
||||||
|
m_futureWatcher.setFuture(result);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
BaseModelLoader *loader() const override {
|
||||||
|
return m_loader;
|
||||||
|
}
|
||||||
|
|
||||||
|
void setLoader(BaseModelLoader *newLoader) {
|
||||||
|
ModelLoader<T> *castedLoader = dynamic_cast<ModelLoader<T> *>(newLoader);
|
||||||
|
if (castedLoader != nullptr) {
|
||||||
|
m_loader = castedLoader;
|
||||||
|
// Hacky way to emit a signal
|
||||||
|
BaseApiModel::setLoader(newLoader);
|
||||||
|
} else {
|
||||||
|
qWarning() << "Somehow set a BaseModelLoader on ApiModel instead of a ModelLoader<T>";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void reload() override {
|
||||||
|
if (m_loader != nullptr) {
|
||||||
|
QFuture<QList<T>> result = QtConcurrent::run(m_loader, &ModelLoader<T>::reload);
|
||||||
|
m_futureWatcher.setFuture(result);
|
||||||
}
|
}
|
||||||
return result;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
// AbstractItemModel bookkeeping
|
|
||||||
QHash<int, QByteArray> m_roles;
|
|
||||||
|
|
||||||
// Helper methods.
|
|
||||||
T *deserializeResult(QJsonValueRef source);
|
|
||||||
virtual void addQueryParameters(QUrlQuery &query) override;
|
|
||||||
virtual void replacePathPlaceholders(QString &path) override;
|
|
||||||
|
|
||||||
virtual void setModelData(QJsonArray &data) override;
|
|
||||||
virtual void appendModelData(QJsonArray &data) override;
|
|
||||||
|
|
||||||
// Model-specific properties.
|
// Model-specific properties.
|
||||||
QList<T*> m_array;
|
QList<T> m_array;
|
||||||
|
ModelLoader<T> *m_loader;
|
||||||
|
QFutureWatcher<QList<T>> m_futureWatcher;
|
||||||
|
|
||||||
|
void futureFinished() {
|
||||||
|
try {
|
||||||
|
QList<T> result = m_futureWatcher.result();
|
||||||
|
append(result);
|
||||||
|
} catch (QUnhandledException &e) {
|
||||||
|
qWarning() << "Unhandled exception while waiting for a future: " << e.what();
|
||||||
|
}
|
||||||
|
}
|
||||||
private:
|
private:
|
||||||
/**
|
QMetaObject::Connection m_futureWatcherConnection;
|
||||||
* @brief Generates roleNames based on the first record in m_array.
|
|
||||||
*/
|
|
||||||
void generateFields();
|
|
||||||
QString sortByToString(SortOptions::SortBy sortBy);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief List of the public users on the server.
|
* @brief List of the public users on the server.
|
||||||
*/
|
*/
|
||||||
class PublicUserModel : public ApiModel<QJsonValue> {
|
/*class PublicUserModel : public ApiModel<QJsonValue> {
|
||||||
public:
|
public:
|
||||||
explicit PublicUserModel (QObject *parent = nullptr);
|
explicit PublicUserModel (QObject *parent = nullptr);
|
||||||
};
|
};*/
|
||||||
|
|
||||||
/**
|
|
||||||
* @brief Base class for each model that works with items.
|
|
||||||
*
|
|
||||||
* Listens for updates in the library and updates the model accordingly.
|
|
||||||
*/
|
|
||||||
class ItemModel : public ApiModel<QJsonValue> {
|
|
||||||
Q_OBJECT
|
|
||||||
public:
|
|
||||||
explicit ItemModel (QString path, bool responseHasRecords, bool replaceUser, QObject *parent = nullptr);
|
|
||||||
// Query parameters
|
|
||||||
Q_PROPERTY(QString parentId MEMBER m_parentId WRITE setParentId NOTIFY parentIdChanged)
|
|
||||||
Q_PROPERTY(QString seasonId MEMBER m_seasonId NOTIFY seasonIdChanged)
|
|
||||||
Q_PROPERTY(QList<QString> imageTypes MEMBER m_imageTypes NOTIFY imageTypesChanged)
|
|
||||||
Q_PROPERTY(QList<QString> includeItemTypes MEMBER m_includeItemTypes NOTIFY includeItemTypesChanged)
|
|
||||||
Q_PROPERTY(bool recursive MEMBER m_recursive)
|
|
||||||
QList<QString> m_includeItemTypes = {};
|
|
||||||
|
|
||||||
// Path properties
|
|
||||||
Q_PROPERTY(QString show MEMBER m_show NOTIFY showChanged)
|
|
||||||
|
|
||||||
void setParentId(const QString &parentId) {
|
|
||||||
m_parentId = parentId;
|
|
||||||
emit parentIdChanged(m_parentId);
|
|
||||||
}
|
|
||||||
signals:
|
|
||||||
// Query property signals
|
|
||||||
void parentIdChanged(QString newParentId);
|
|
||||||
void seasonIdChanged(QString newSeasonId);
|
|
||||||
void imageTypesChanged(QList<QString> newImageTypes);
|
|
||||||
void includeItemTypesChanged(const QList<QString> &newIncludeItemTypes);
|
|
||||||
|
|
||||||
// Path property signals
|
|
||||||
void showChanged(QString newShow);
|
|
||||||
public slots:
|
|
||||||
void onUserDataChanged(const QString &itemId, DTO::UserData *userData);
|
|
||||||
protected:
|
|
||||||
virtual void addQueryParameters(QUrlQuery &query) override;
|
|
||||||
virtual void replacePathPlaceholders(QString &path) override;
|
|
||||||
private:
|
|
||||||
// Path properties
|
|
||||||
QString m_show;
|
|
||||||
|
|
||||||
// Query parameters
|
|
||||||
QString m_parentId;
|
|
||||||
QString m_seasonId;
|
|
||||||
QList<QString> m_imageTypes = {};
|
|
||||||
bool m_recursive = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
//template<>
|
//template<>
|
||||||
//void ApiModel<Item>::apiClientChanged();
|
//void ApiModel<Item>::apiClientChanged();
|
||||||
|
|
||||||
class UserViewModel : public ItemModel {
|
|
||||||
public:
|
|
||||||
explicit UserViewModel (QObject *parent = nullptr);
|
|
||||||
};
|
|
||||||
|
|
||||||
class UserItemModel : public ItemModel {
|
|
||||||
public:
|
|
||||||
explicit UserItemModel (QObject *parent = nullptr);
|
|
||||||
};
|
|
||||||
|
|
||||||
class UserItemResumeModel : public ItemModel {
|
|
||||||
public:
|
|
||||||
explicit UserItemResumeModel (QObject *parent = nullptr);
|
|
||||||
};
|
|
||||||
|
|
||||||
class UserItemLatestModel : public ItemModel {
|
|
||||||
public:
|
|
||||||
explicit UserItemLatestModel (QObject *parent = nullptr);
|
|
||||||
};
|
|
||||||
|
|
||||||
class ShowNextUpModel : public ItemModel {
|
|
||||||
public:
|
|
||||||
explicit ShowNextUpModel (QObject *parent = nullptr);
|
|
||||||
};
|
|
||||||
|
|
||||||
class ShowSeasonsModel : public ItemModel {
|
|
||||||
public:
|
|
||||||
explicit ShowSeasonsModel (QObject *parent = nullptr);
|
|
||||||
};
|
|
||||||
|
|
||||||
class ShowEpisodesModel : public ItemModel {
|
|
||||||
public:
|
|
||||||
explicit ShowEpisodesModel (QObject *parent = nullptr);
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
void registerModels(const char *URI);
|
void registerModels(const char *URI);
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
|
||||||
|
@ -62,11 +61,11 @@ public:
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the items.
|
* @brief Gets or sets the items.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<ActivityLogEntry>> items() const;
|
QList<ActivityLogEntry> items() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the items.
|
* @brief Gets or sets the items.
|
||||||
*/
|
*/
|
||||||
void setItems(QList<QSharedPointer<ActivityLogEntry>> newItems);
|
void setItems(QList<ActivityLogEntry> newItems);
|
||||||
bool itemsNull() const;
|
bool itemsNull() const;
|
||||||
void setItemsNull();
|
void setItemsNull();
|
||||||
|
|
||||||
|
@ -90,7 +89,7 @@ public:
|
||||||
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QList<QSharedPointer<ActivityLogEntry>> m_items;
|
QList<ActivityLogEntry> m_items;
|
||||||
qint32 m_totalRecordCount;
|
qint32 m_totalRecordCount;
|
||||||
qint32 m_startIndex;
|
qint32 m_startIndex;
|
||||||
};
|
};
|
||||||
|
|
|
@ -34,7 +34,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QString>
|
#include <QString>
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
@ -176,9 +175,9 @@ public:
|
||||||
void setArtistProviderIdsNull();
|
void setArtistProviderIdsNull();
|
||||||
|
|
||||||
|
|
||||||
QList<QSharedPointer<SongInfo>> songInfos() const;
|
QList<SongInfo> songInfos() const;
|
||||||
|
|
||||||
void setSongInfos(QList<QSharedPointer<SongInfo>> newSongInfos);
|
void setSongInfos(QList<SongInfo> newSongInfos);
|
||||||
bool songInfosNull() const;
|
bool songInfosNull() const;
|
||||||
void setSongInfosNull();
|
void setSongInfosNull();
|
||||||
|
|
||||||
|
@ -196,7 +195,7 @@ protected:
|
||||||
bool m_isAutomated;
|
bool m_isAutomated;
|
||||||
QStringList m_albumArtists;
|
QStringList m_albumArtists;
|
||||||
std::optional<QJsonObject> m_artistProviderIds = std::nullopt;
|
std::optional<QJsonObject> m_artistProviderIds = std::nullopt;
|
||||||
QList<QSharedPointer<SongInfo>> m_songInfos;
|
QList<SongInfo> m_songInfos;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // NS DTO
|
} // NS DTO
|
||||||
|
|
|
@ -34,7 +34,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QString>
|
#include <QString>
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
@ -154,9 +153,9 @@ public:
|
||||||
void setIsAutomated(bool newIsAutomated);
|
void setIsAutomated(bool newIsAutomated);
|
||||||
|
|
||||||
|
|
||||||
QList<QSharedPointer<SongInfo>> songInfos() const;
|
QList<SongInfo> songInfos() const;
|
||||||
|
|
||||||
void setSongInfos(QList<QSharedPointer<SongInfo>> newSongInfos);
|
void setSongInfos(QList<SongInfo> newSongInfos);
|
||||||
bool songInfosNull() const;
|
bool songInfosNull() const;
|
||||||
void setSongInfosNull();
|
void setSongInfosNull();
|
||||||
|
|
||||||
|
@ -172,7 +171,7 @@ protected:
|
||||||
std::optional<qint32> m_parentIndexNumber = std::nullopt;
|
std::optional<qint32> m_parentIndexNumber = std::nullopt;
|
||||||
QDateTime m_premiereDate;
|
QDateTime m_premiereDate;
|
||||||
bool m_isAutomated;
|
bool m_isAutomated;
|
||||||
QList<QSharedPointer<SongInfo>> m_songInfos;
|
QList<SongInfo> m_songInfos;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // NS DTO
|
} // NS DTO
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
|
||||||
|
@ -62,11 +61,11 @@ public:
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the items.
|
* @brief Gets or sets the items.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<AuthenticationInfo>> items() const;
|
QList<AuthenticationInfo> items() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the items.
|
* @brief Gets or sets the items.
|
||||||
*/
|
*/
|
||||||
void setItems(QList<QSharedPointer<AuthenticationInfo>> newItems);
|
void setItems(QList<AuthenticationInfo> newItems);
|
||||||
bool itemsNull() const;
|
bool itemsNull() const;
|
||||||
void setItemsNull();
|
void setItemsNull();
|
||||||
|
|
||||||
|
@ -90,7 +89,7 @@ public:
|
||||||
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QList<QSharedPointer<AuthenticationInfo>> m_items;
|
QList<AuthenticationInfo> m_items;
|
||||||
qint32 m_totalRecordCount;
|
qint32 m_totalRecordCount;
|
||||||
qint32 m_startIndex;
|
qint32 m_startIndex;
|
||||||
};
|
};
|
||||||
|
|
|
@ -34,7 +34,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QString>
|
#include <QString>
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
@ -83,11 +82,11 @@ public:
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the remote trailers.
|
* @brief Gets or sets the remote trailers.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<MediaUrl>> remoteTrailers() const;
|
QList<MediaUrl> remoteTrailers() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the remote trailers.
|
* @brief Gets or sets the remote trailers.
|
||||||
*/
|
*/
|
||||||
void setRemoteTrailers(QList<QSharedPointer<MediaUrl>> newRemoteTrailers);
|
void setRemoteTrailers(QList<MediaUrl> newRemoteTrailers);
|
||||||
bool remoteTrailersNull() const;
|
bool remoteTrailersNull() const;
|
||||||
void setRemoteTrailersNull();
|
void setRemoteTrailersNull();
|
||||||
|
|
||||||
|
@ -135,7 +134,7 @@ protected:
|
||||||
std::optional<qint64> m_size = std::nullopt;
|
std::optional<qint64> m_size = std::nullopt;
|
||||||
QString m_container;
|
QString m_container;
|
||||||
QDateTime m_dateLastSaved;
|
QDateTime m_dateLastSaved;
|
||||||
QList<QSharedPointer<MediaUrl>> m_remoteTrailers;
|
QList<MediaUrl> m_remoteTrailers;
|
||||||
bool m_isHD;
|
bool m_isHD;
|
||||||
bool m_isShortcut;
|
bool m_isShortcut;
|
||||||
QString m_shortcutPath;
|
QString m_shortcutPath;
|
||||||
|
|
|
@ -285,22 +285,22 @@ public:
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the external urls.
|
* @brief Gets or sets the external urls.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<ExternalUrl>> externalUrls() const;
|
QList<ExternalUrl> externalUrls() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the external urls.
|
* @brief Gets or sets the external urls.
|
||||||
*/
|
*/
|
||||||
void setExternalUrls(QList<QSharedPointer<ExternalUrl>> newExternalUrls);
|
void setExternalUrls(QList<ExternalUrl> newExternalUrls);
|
||||||
bool externalUrlsNull() const;
|
bool externalUrlsNull() const;
|
||||||
void setExternalUrlsNull();
|
void setExternalUrlsNull();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the media versions.
|
* @brief Gets or sets the media versions.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<MediaSourceInfo>> mediaSources() const;
|
QList<MediaSourceInfo> mediaSources() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the media versions.
|
* @brief Gets or sets the media versions.
|
||||||
*/
|
*/
|
||||||
void setMediaSources(QList<QSharedPointer<MediaSourceInfo>> newMediaSources);
|
void setMediaSources(QList<MediaSourceInfo> newMediaSources);
|
||||||
bool mediaSourcesNull() const;
|
bool mediaSourcesNull() const;
|
||||||
void setMediaSourcesNull();
|
void setMediaSourcesNull();
|
||||||
|
|
||||||
|
@ -538,11 +538,11 @@ public:
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the trailer urls.
|
* @brief Gets or sets the trailer urls.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<MediaUrl>> remoteTrailers() const;
|
QList<MediaUrl> remoteTrailers() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the trailer urls.
|
* @brief Gets or sets the trailer urls.
|
||||||
*/
|
*/
|
||||||
void setRemoteTrailers(QList<QSharedPointer<MediaUrl>> newRemoteTrailers);
|
void setRemoteTrailers(QList<MediaUrl> newRemoteTrailers);
|
||||||
bool remoteTrailersNull() const;
|
bool remoteTrailersNull() const;
|
||||||
void setRemoteTrailersNull();
|
void setRemoteTrailersNull();
|
||||||
|
|
||||||
|
@ -604,29 +604,29 @@ public:
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the people.
|
* @brief Gets or sets the people.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<BaseItemPerson>> people() const;
|
QList<BaseItemPerson> people() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the people.
|
* @brief Gets or sets the people.
|
||||||
*/
|
*/
|
||||||
void setPeople(QList<QSharedPointer<BaseItemPerson>> newPeople);
|
void setPeople(QList<BaseItemPerson> newPeople);
|
||||||
bool peopleNull() const;
|
bool peopleNull() const;
|
||||||
void setPeopleNull();
|
void setPeopleNull();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the studios.
|
* @brief Gets or sets the studios.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<NameGuidPair>> studios() const;
|
QList<NameGuidPair> studios() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the studios.
|
* @brief Gets or sets the studios.
|
||||||
*/
|
*/
|
||||||
void setStudios(QList<QSharedPointer<NameGuidPair>> newStudios);
|
void setStudios(QList<NameGuidPair> newStudios);
|
||||||
bool studiosNull() const;
|
bool studiosNull() const;
|
||||||
void setStudiosNull();
|
void setStudiosNull();
|
||||||
|
|
||||||
|
|
||||||
QList<QSharedPointer<NameGuidPair>> genreItems() const;
|
QList<NameGuidPair> genreItems() const;
|
||||||
|
|
||||||
void setGenreItems(QList<QSharedPointer<NameGuidPair>> newGenreItems);
|
void setGenreItems(QList<NameGuidPair> newGenreItems);
|
||||||
bool genreItemsNull() const;
|
bool genreItemsNull() const;
|
||||||
void setGenreItemsNull();
|
void setGenreItemsNull();
|
||||||
|
|
||||||
|
@ -825,11 +825,11 @@ public:
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the artist items.
|
* @brief Gets or sets the artist items.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<NameGuidPair>> artistItems() const;
|
QList<NameGuidPair> artistItems() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the artist items.
|
* @brief Gets or sets the artist items.
|
||||||
*/
|
*/
|
||||||
void setArtistItems(QList<QSharedPointer<NameGuidPair>> newArtistItems);
|
void setArtistItems(QList<NameGuidPair> newArtistItems);
|
||||||
bool artistItemsNull() const;
|
bool artistItemsNull() const;
|
||||||
void setArtistItemsNull();
|
void setArtistItemsNull();
|
||||||
|
|
||||||
|
@ -913,11 +913,11 @@ public:
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the album artists.
|
* @brief Gets or sets the album artists.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<NameGuidPair>> albumArtists() const;
|
QList<NameGuidPair> albumArtists() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the album artists.
|
* @brief Gets or sets the album artists.
|
||||||
*/
|
*/
|
||||||
void setAlbumArtists(QList<QSharedPointer<NameGuidPair>> newAlbumArtists);
|
void setAlbumArtists(QList<NameGuidPair> newAlbumArtists);
|
||||||
bool albumArtistsNull() const;
|
bool albumArtistsNull() const;
|
||||||
void setAlbumArtistsNull();
|
void setAlbumArtistsNull();
|
||||||
|
|
||||||
|
@ -935,11 +935,11 @@ public:
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the media streams.
|
* @brief Gets or sets the media streams.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<MediaStream>> mediaStreams() const;
|
QList<MediaStream> mediaStreams() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the media streams.
|
* @brief Gets or sets the media streams.
|
||||||
*/
|
*/
|
||||||
void setMediaStreams(QList<QSharedPointer<MediaStream>> newMediaStreams);
|
void setMediaStreams(QList<MediaStream> newMediaStreams);
|
||||||
bool mediaStreamsNull() const;
|
bool mediaStreamsNull() const;
|
||||||
void setMediaStreamsNull();
|
void setMediaStreamsNull();
|
||||||
|
|
||||||
|
@ -1114,11 +1114,11 @@ Maps image type to dictionary mapping image tag to blurhash value.
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the chapters.
|
* @brief Gets or sets the chapters.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<ChapterInfo>> chapters() const;
|
QList<ChapterInfo> chapters() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the chapters.
|
* @brief Gets or sets the chapters.
|
||||||
*/
|
*/
|
||||||
void setChapters(QList<QSharedPointer<ChapterInfo>> newChapters);
|
void setChapters(QList<ChapterInfo> newChapters);
|
||||||
bool chaptersNull() const;
|
bool chaptersNull() const;
|
||||||
void setChaptersNull();
|
void setChaptersNull();
|
||||||
|
|
||||||
|
@ -1569,8 +1569,8 @@ protected:
|
||||||
QString m_forcedSortName;
|
QString m_forcedSortName;
|
||||||
Video3DFormat m_video3DFormat;
|
Video3DFormat m_video3DFormat;
|
||||||
QDateTime m_premiereDate;
|
QDateTime m_premiereDate;
|
||||||
QList<QSharedPointer<ExternalUrl>> m_externalUrls;
|
QList<ExternalUrl> m_externalUrls;
|
||||||
QList<QSharedPointer<MediaSourceInfo>> m_mediaSources;
|
QList<MediaSourceInfo> m_mediaSources;
|
||||||
std::optional<float> m_criticRating = std::nullopt;
|
std::optional<float> m_criticRating = std::nullopt;
|
||||||
QStringList m_productionLocations;
|
QStringList m_productionLocations;
|
||||||
QString m_path;
|
QString m_path;
|
||||||
|
@ -1594,15 +1594,15 @@ protected:
|
||||||
std::optional<qint32> m_indexNumber = std::nullopt;
|
std::optional<qint32> m_indexNumber = std::nullopt;
|
||||||
std::optional<qint32> m_indexNumberEnd = std::nullopt;
|
std::optional<qint32> m_indexNumberEnd = std::nullopt;
|
||||||
std::optional<qint32> m_parentIndexNumber = std::nullopt;
|
std::optional<qint32> m_parentIndexNumber = std::nullopt;
|
||||||
QList<QSharedPointer<MediaUrl>> m_remoteTrailers;
|
QList<MediaUrl> m_remoteTrailers;
|
||||||
std::optional<QJsonObject> m_providerIds = std::nullopt;
|
std::optional<QJsonObject> m_providerIds = std::nullopt;
|
||||||
std::optional<bool> m_isHD = std::nullopt;
|
std::optional<bool> m_isHD = std::nullopt;
|
||||||
std::optional<bool> m_isFolder = std::nullopt;
|
std::optional<bool> m_isFolder = std::nullopt;
|
||||||
QString m_parentId;
|
QString m_parentId;
|
||||||
QString m_type;
|
QString m_type;
|
||||||
QList<QSharedPointer<BaseItemPerson>> m_people;
|
QList<BaseItemPerson> m_people;
|
||||||
QList<QSharedPointer<NameGuidPair>> m_studios;
|
QList<NameGuidPair> m_studios;
|
||||||
QList<QSharedPointer<NameGuidPair>> m_genreItems;
|
QList<NameGuidPair> m_genreItems;
|
||||||
QString m_parentLogoItemId;
|
QString m_parentLogoItemId;
|
||||||
QString m_parentBackdropItemId;
|
QString m_parentBackdropItemId;
|
||||||
QStringList m_parentBackdropImageTags;
|
QStringList m_parentBackdropImageTags;
|
||||||
|
@ -1621,7 +1621,7 @@ protected:
|
||||||
QStringList m_tags;
|
QStringList m_tags;
|
||||||
std::optional<double> m_primaryImageAspectRatio = std::nullopt;
|
std::optional<double> m_primaryImageAspectRatio = std::nullopt;
|
||||||
QStringList m_artists;
|
QStringList m_artists;
|
||||||
QList<QSharedPointer<NameGuidPair>> m_artistItems;
|
QList<NameGuidPair> m_artistItems;
|
||||||
QString m_album;
|
QString m_album;
|
||||||
QString m_collectionType;
|
QString m_collectionType;
|
||||||
QString m_displayOrder;
|
QString m_displayOrder;
|
||||||
|
@ -1629,9 +1629,9 @@ protected:
|
||||||
QString m_albumPrimaryImageTag;
|
QString m_albumPrimaryImageTag;
|
||||||
QString m_seriesPrimaryImageTag;
|
QString m_seriesPrimaryImageTag;
|
||||||
QString m_albumArtist;
|
QString m_albumArtist;
|
||||||
QList<QSharedPointer<NameGuidPair>> m_albumArtists;
|
QList<NameGuidPair> m_albumArtists;
|
||||||
QString m_seasonName;
|
QString m_seasonName;
|
||||||
QList<QSharedPointer<MediaStream>> m_mediaStreams;
|
QList<MediaStream> m_mediaStreams;
|
||||||
VideoType m_videoType;
|
VideoType m_videoType;
|
||||||
std::optional<qint32> m_partCount = std::nullopt;
|
std::optional<qint32> m_partCount = std::nullopt;
|
||||||
std::optional<qint32> m_mediaSourceCount = std::nullopt;
|
std::optional<qint32> m_mediaSourceCount = std::nullopt;
|
||||||
|
@ -1648,7 +1648,7 @@ protected:
|
||||||
QString m_parentThumbImageTag;
|
QString m_parentThumbImageTag;
|
||||||
QString m_parentPrimaryImageItemId;
|
QString m_parentPrimaryImageItemId;
|
||||||
QString m_parentPrimaryImageTag;
|
QString m_parentPrimaryImageTag;
|
||||||
QList<QSharedPointer<ChapterInfo>> m_chapters;
|
QList<ChapterInfo> m_chapters;
|
||||||
LocationType m_locationType;
|
LocationType m_locationType;
|
||||||
IsoType m_isoType;
|
IsoType m_isoType;
|
||||||
QString m_mediaType;
|
QString m_mediaType;
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
|
||||||
|
@ -62,11 +61,11 @@ public:
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the items.
|
* @brief Gets or sets the items.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<BaseItemDto>> items() const;
|
QList<BaseItemDto> items() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the items.
|
* @brief Gets or sets the items.
|
||||||
*/
|
*/
|
||||||
void setItems(QList<QSharedPointer<BaseItemDto>> newItems);
|
void setItems(QList<BaseItemDto> newItems);
|
||||||
bool itemsNull() const;
|
bool itemsNull() const;
|
||||||
void setItemsNull();
|
void setItemsNull();
|
||||||
|
|
||||||
|
@ -90,7 +89,7 @@ public:
|
||||||
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QList<QSharedPointer<BaseItemDto>> m_items;
|
QList<BaseItemDto> m_items;
|
||||||
qint32 m_totalRecordCount;
|
qint32 m_totalRecordCount;
|
||||||
qint32 m_startIndex;
|
qint32 m_startIndex;
|
||||||
};
|
};
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QString>
|
#include <QString>
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
@ -65,33 +64,33 @@ public:
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets list of tuner channels.
|
* @brief Gets or sets list of tuner channels.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<TunerChannelMapping>> tunerChannels() const;
|
QList<TunerChannelMapping> tunerChannels() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets list of tuner channels.
|
* @brief Gets or sets list of tuner channels.
|
||||||
*/
|
*/
|
||||||
void setTunerChannels(QList<QSharedPointer<TunerChannelMapping>> newTunerChannels);
|
void setTunerChannels(QList<TunerChannelMapping> newTunerChannels);
|
||||||
bool tunerChannelsNull() const;
|
bool tunerChannelsNull() const;
|
||||||
void setTunerChannelsNull();
|
void setTunerChannelsNull();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets list of provider channels.
|
* @brief Gets or sets list of provider channels.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<NameIdPair>> providerChannels() const;
|
QList<NameIdPair> providerChannels() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets list of provider channels.
|
* @brief Gets or sets list of provider channels.
|
||||||
*/
|
*/
|
||||||
void setProviderChannels(QList<QSharedPointer<NameIdPair>> newProviderChannels);
|
void setProviderChannels(QList<NameIdPair> newProviderChannels);
|
||||||
bool providerChannelsNull() const;
|
bool providerChannelsNull() const;
|
||||||
void setProviderChannelsNull();
|
void setProviderChannelsNull();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets list of mappings.
|
* @brief Gets or sets list of mappings.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<NameValuePair>> mappings() const;
|
QList<NameValuePair> mappings() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets list of mappings.
|
* @brief Gets or sets list of mappings.
|
||||||
*/
|
*/
|
||||||
void setMappings(QList<QSharedPointer<NameValuePair>> newMappings);
|
void setMappings(QList<NameValuePair> newMappings);
|
||||||
bool mappingsNull() const;
|
bool mappingsNull() const;
|
||||||
void setMappingsNull();
|
void setMappingsNull();
|
||||||
|
|
||||||
|
@ -108,9 +107,9 @@ public:
|
||||||
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QList<QSharedPointer<TunerChannelMapping>> m_tunerChannels;
|
QList<TunerChannelMapping> m_tunerChannels;
|
||||||
QList<QSharedPointer<NameIdPair>> m_providerChannels;
|
QList<NameIdPair> m_providerChannels;
|
||||||
QList<QSharedPointer<NameValuePair>> m_mappings;
|
QList<NameValuePair> m_mappings;
|
||||||
QString m_providerName;
|
QString m_providerName;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QString>
|
#include <QString>
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
@ -67,16 +66,16 @@ public:
|
||||||
void setType(CodecType newType);
|
void setType(CodecType newType);
|
||||||
|
|
||||||
|
|
||||||
QList<QSharedPointer<ProfileCondition>> conditions() const;
|
QList<ProfileCondition> conditions() const;
|
||||||
|
|
||||||
void setConditions(QList<QSharedPointer<ProfileCondition>> newConditions);
|
void setConditions(QList<ProfileCondition> newConditions);
|
||||||
bool conditionsNull() const;
|
bool conditionsNull() const;
|
||||||
void setConditionsNull();
|
void setConditionsNull();
|
||||||
|
|
||||||
|
|
||||||
QList<QSharedPointer<ProfileCondition>> applyConditions() const;
|
QList<ProfileCondition> applyConditions() const;
|
||||||
|
|
||||||
void setApplyConditions(QList<QSharedPointer<ProfileCondition>> newApplyConditions);
|
void setApplyConditions(QList<ProfileCondition> newApplyConditions);
|
||||||
bool applyConditionsNull() const;
|
bool applyConditionsNull() const;
|
||||||
void setApplyConditionsNull();
|
void setApplyConditionsNull();
|
||||||
|
|
||||||
|
@ -97,8 +96,8 @@ public:
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
CodecType m_type;
|
CodecType m_type;
|
||||||
QList<QSharedPointer<ProfileCondition>> m_conditions;
|
QList<ProfileCondition> m_conditions;
|
||||||
QList<QSharedPointer<ProfileCondition>> m_applyConditions;
|
QList<ProfileCondition> m_applyConditions;
|
||||||
QString m_codec;
|
QString m_codec;
|
||||||
QString m_container;
|
QString m_container;
|
||||||
};
|
};
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QString>
|
#include <QString>
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
@ -67,9 +66,9 @@ public:
|
||||||
void setType(DlnaProfileType newType);
|
void setType(DlnaProfileType newType);
|
||||||
|
|
||||||
|
|
||||||
QList<QSharedPointer<ProfileCondition>> conditions() const;
|
QList<ProfileCondition> conditions() const;
|
||||||
|
|
||||||
void setConditions(QList<QSharedPointer<ProfileCondition>> newConditions);
|
void setConditions(QList<ProfileCondition> newConditions);
|
||||||
bool conditionsNull() const;
|
bool conditionsNull() const;
|
||||||
void setConditionsNull();
|
void setConditionsNull();
|
||||||
|
|
||||||
|
@ -83,7 +82,7 @@ public:
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
DlnaProfileType m_type;
|
DlnaProfileType m_type;
|
||||||
QList<QSharedPointer<ProfileCondition>> m_conditions;
|
QList<ProfileCondition> m_conditions;
|
||||||
QString m_container;
|
QString m_container;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QString>
|
#include <QString>
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
@ -151,11 +150,11 @@ public:
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the headers.
|
* @brief Gets or sets the headers.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<HttpHeaderInfo>> headers() const;
|
QList<HttpHeaderInfo> headers() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the headers.
|
* @brief Gets or sets the headers.
|
||||||
*/
|
*/
|
||||||
void setHeaders(QList<QSharedPointer<HttpHeaderInfo>> newHeaders);
|
void setHeaders(QList<HttpHeaderInfo> newHeaders);
|
||||||
bool headersNull() const;
|
bool headersNull() const;
|
||||||
void setHeadersNull();
|
void setHeadersNull();
|
||||||
|
|
||||||
|
@ -169,7 +168,7 @@ protected:
|
||||||
QString m_modelUrl;
|
QString m_modelUrl;
|
||||||
QString m_manufacturer;
|
QString m_manufacturer;
|
||||||
QString m_manufacturerUrl;
|
QString m_manufacturerUrl;
|
||||||
QList<QSharedPointer<HttpHeaderInfo>> m_headers;
|
QList<HttpHeaderInfo> m_headers;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // NS DTO
|
} // NS DTO
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
|
||||||
|
@ -62,11 +61,11 @@ public:
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the items.
|
* @brief Gets or sets the items.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<DeviceInfo>> items() const;
|
QList<DeviceInfo> items() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the items.
|
* @brief Gets or sets the items.
|
||||||
*/
|
*/
|
||||||
void setItems(QList<QSharedPointer<DeviceInfo>> newItems);
|
void setItems(QList<DeviceInfo> newItems);
|
||||||
bool itemsNull() const;
|
bool itemsNull() const;
|
||||||
void setItemsNull();
|
void setItemsNull();
|
||||||
|
|
||||||
|
@ -90,7 +89,7 @@ public:
|
||||||
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QList<QSharedPointer<DeviceInfo>> m_items;
|
QList<DeviceInfo> m_items;
|
||||||
qint32 m_totalRecordCount;
|
qint32 m_totalRecordCount;
|
||||||
qint32 m_startIndex;
|
qint32 m_startIndex;
|
||||||
};
|
};
|
||||||
|
|
|
@ -396,77 +396,77 @@ public:
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the XmlRootAttributes.
|
* @brief Gets or sets the XmlRootAttributes.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<XmlAttribute>> xmlRootAttributes() const;
|
QList<XmlAttribute> xmlRootAttributes() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the XmlRootAttributes.
|
* @brief Gets or sets the XmlRootAttributes.
|
||||||
*/
|
*/
|
||||||
void setXmlRootAttributes(QList<QSharedPointer<XmlAttribute>> newXmlRootAttributes);
|
void setXmlRootAttributes(QList<XmlAttribute> newXmlRootAttributes);
|
||||||
bool xmlRootAttributesNull() const;
|
bool xmlRootAttributesNull() const;
|
||||||
void setXmlRootAttributesNull();
|
void setXmlRootAttributesNull();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the direct play profiles.
|
* @brief Gets or sets the direct play profiles.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<DirectPlayProfile>> directPlayProfiles() const;
|
QList<DirectPlayProfile> directPlayProfiles() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the direct play profiles.
|
* @brief Gets or sets the direct play profiles.
|
||||||
*/
|
*/
|
||||||
void setDirectPlayProfiles(QList<QSharedPointer<DirectPlayProfile>> newDirectPlayProfiles);
|
void setDirectPlayProfiles(QList<DirectPlayProfile> newDirectPlayProfiles);
|
||||||
bool directPlayProfilesNull() const;
|
bool directPlayProfilesNull() const;
|
||||||
void setDirectPlayProfilesNull();
|
void setDirectPlayProfilesNull();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the transcoding profiles.
|
* @brief Gets or sets the transcoding profiles.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<TranscodingProfile>> transcodingProfiles() const;
|
QList<TranscodingProfile> transcodingProfiles() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the transcoding profiles.
|
* @brief Gets or sets the transcoding profiles.
|
||||||
*/
|
*/
|
||||||
void setTranscodingProfiles(QList<QSharedPointer<TranscodingProfile>> newTranscodingProfiles);
|
void setTranscodingProfiles(QList<TranscodingProfile> newTranscodingProfiles);
|
||||||
bool transcodingProfilesNull() const;
|
bool transcodingProfilesNull() const;
|
||||||
void setTranscodingProfilesNull();
|
void setTranscodingProfilesNull();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the ContainerProfiles.
|
* @brief Gets or sets the ContainerProfiles.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<ContainerProfile>> containerProfiles() const;
|
QList<ContainerProfile> containerProfiles() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the ContainerProfiles.
|
* @brief Gets or sets the ContainerProfiles.
|
||||||
*/
|
*/
|
||||||
void setContainerProfiles(QList<QSharedPointer<ContainerProfile>> newContainerProfiles);
|
void setContainerProfiles(QList<ContainerProfile> newContainerProfiles);
|
||||||
bool containerProfilesNull() const;
|
bool containerProfilesNull() const;
|
||||||
void setContainerProfilesNull();
|
void setContainerProfilesNull();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the CodecProfiles.
|
* @brief Gets or sets the CodecProfiles.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<CodecProfile>> codecProfiles() const;
|
QList<CodecProfile> codecProfiles() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the CodecProfiles.
|
* @brief Gets or sets the CodecProfiles.
|
||||||
*/
|
*/
|
||||||
void setCodecProfiles(QList<QSharedPointer<CodecProfile>> newCodecProfiles);
|
void setCodecProfiles(QList<CodecProfile> newCodecProfiles);
|
||||||
bool codecProfilesNull() const;
|
bool codecProfilesNull() const;
|
||||||
void setCodecProfilesNull();
|
void setCodecProfilesNull();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the ResponseProfiles.
|
* @brief Gets or sets the ResponseProfiles.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<ResponseProfile>> responseProfiles() const;
|
QList<ResponseProfile> responseProfiles() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the ResponseProfiles.
|
* @brief Gets or sets the ResponseProfiles.
|
||||||
*/
|
*/
|
||||||
void setResponseProfiles(QList<QSharedPointer<ResponseProfile>> newResponseProfiles);
|
void setResponseProfiles(QList<ResponseProfile> newResponseProfiles);
|
||||||
bool responseProfilesNull() const;
|
bool responseProfilesNull() const;
|
||||||
void setResponseProfilesNull();
|
void setResponseProfilesNull();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the SubtitleProfiles.
|
* @brief Gets or sets the SubtitleProfiles.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<SubtitleProfile>> subtitleProfiles() const;
|
QList<SubtitleProfile> subtitleProfiles() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the SubtitleProfiles.
|
* @brief Gets or sets the SubtitleProfiles.
|
||||||
*/
|
*/
|
||||||
void setSubtitleProfiles(QList<QSharedPointer<SubtitleProfile>> newSubtitleProfiles);
|
void setSubtitleProfiles(QList<SubtitleProfile> newSubtitleProfiles);
|
||||||
bool subtitleProfilesNull() const;
|
bool subtitleProfilesNull() const;
|
||||||
void setSubtitleProfilesNull();
|
void setSubtitleProfilesNull();
|
||||||
|
|
||||||
|
@ -504,13 +504,13 @@ protected:
|
||||||
bool m_requiresPlainFolders;
|
bool m_requiresPlainFolders;
|
||||||
bool m_enableMSMediaReceiverRegistrar;
|
bool m_enableMSMediaReceiverRegistrar;
|
||||||
bool m_ignoreTranscodeByteRangeRequests;
|
bool m_ignoreTranscodeByteRangeRequests;
|
||||||
QList<QSharedPointer<XmlAttribute>> m_xmlRootAttributes;
|
QList<XmlAttribute> m_xmlRootAttributes;
|
||||||
QList<QSharedPointer<DirectPlayProfile>> m_directPlayProfiles;
|
QList<DirectPlayProfile> m_directPlayProfiles;
|
||||||
QList<QSharedPointer<TranscodingProfile>> m_transcodingProfiles;
|
QList<TranscodingProfile> m_transcodingProfiles;
|
||||||
QList<QSharedPointer<ContainerProfile>> m_containerProfiles;
|
QList<ContainerProfile> m_containerProfiles;
|
||||||
QList<QSharedPointer<CodecProfile>> m_codecProfiles;
|
QList<CodecProfile> m_codecProfiles;
|
||||||
QList<QSharedPointer<ResponseProfile>> m_responseProfiles;
|
QList<ResponseProfile> m_responseProfiles;
|
||||||
QList<QSharedPointer<SubtitleProfile>> m_subtitleProfiles;
|
QList<SubtitleProfile> m_subtitleProfiles;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // NS DTO
|
} // NS DTO
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QString>
|
#include <QString>
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
@ -82,9 +81,9 @@ public:
|
||||||
void setExtractChapterImagesDuringLibraryScan(bool newExtractChapterImagesDuringLibraryScan);
|
void setExtractChapterImagesDuringLibraryScan(bool newExtractChapterImagesDuringLibraryScan);
|
||||||
|
|
||||||
|
|
||||||
QList<QSharedPointer<MediaPathInfo>> pathInfos() const;
|
QList<MediaPathInfo> pathInfos() const;
|
||||||
|
|
||||||
void setPathInfos(QList<QSharedPointer<MediaPathInfo>> newPathInfos);
|
void setPathInfos(QList<MediaPathInfo> newPathInfos);
|
||||||
bool pathInfosNull() const;
|
bool pathInfosNull() const;
|
||||||
void setPathInfosNull();
|
void setPathInfosNull();
|
||||||
|
|
||||||
|
@ -210,9 +209,9 @@ public:
|
||||||
void setSaveSubtitlesWithMedia(bool newSaveSubtitlesWithMedia);
|
void setSaveSubtitlesWithMedia(bool newSaveSubtitlesWithMedia);
|
||||||
|
|
||||||
|
|
||||||
QList<QSharedPointer<TypeOptions>> typeOptions() const;
|
QList<TypeOptions> typeOptions() const;
|
||||||
|
|
||||||
void setTypeOptions(QList<QSharedPointer<TypeOptions>> newTypeOptions);
|
void setTypeOptions(QList<TypeOptions> newTypeOptions);
|
||||||
bool typeOptionsNull() const;
|
bool typeOptionsNull() const;
|
||||||
void setTypeOptionsNull();
|
void setTypeOptionsNull();
|
||||||
|
|
||||||
|
@ -222,7 +221,7 @@ protected:
|
||||||
bool m_enableRealtimeMonitor;
|
bool m_enableRealtimeMonitor;
|
||||||
bool m_enableChapterImageExtraction;
|
bool m_enableChapterImageExtraction;
|
||||||
bool m_extractChapterImagesDuringLibraryScan;
|
bool m_extractChapterImagesDuringLibraryScan;
|
||||||
QList<QSharedPointer<MediaPathInfo>> m_pathInfos;
|
QList<MediaPathInfo> m_pathInfos;
|
||||||
bool m_saveLocalMetadata;
|
bool m_saveLocalMetadata;
|
||||||
bool m_enableInternetProviders;
|
bool m_enableInternetProviders;
|
||||||
bool m_enableAutomaticSeriesGrouping;
|
bool m_enableAutomaticSeriesGrouping;
|
||||||
|
@ -242,7 +241,7 @@ protected:
|
||||||
QStringList m_subtitleDownloadLanguages;
|
QStringList m_subtitleDownloadLanguages;
|
||||||
bool m_requirePerfectSubtitleMatch;
|
bool m_requirePerfectSubtitleMatch;
|
||||||
bool m_saveSubtitlesWithMedia;
|
bool m_saveSubtitlesWithMedia;
|
||||||
QList<QSharedPointer<TypeOptions>> m_typeOptions;
|
QList<TypeOptions> m_typeOptions;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // NS DTO
|
} // NS DTO
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
|
||||||
|
@ -63,53 +62,53 @@ public:
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the metadata savers.
|
* @brief Gets or sets the metadata savers.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<LibraryOptionInfoDto>> metadataSavers() const;
|
QList<LibraryOptionInfoDto> metadataSavers() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the metadata savers.
|
* @brief Gets or sets the metadata savers.
|
||||||
*/
|
*/
|
||||||
void setMetadataSavers(QList<QSharedPointer<LibraryOptionInfoDto>> newMetadataSavers);
|
void setMetadataSavers(QList<LibraryOptionInfoDto> newMetadataSavers);
|
||||||
bool metadataSaversNull() const;
|
bool metadataSaversNull() const;
|
||||||
void setMetadataSaversNull();
|
void setMetadataSaversNull();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the metadata readers.
|
* @brief Gets or sets the metadata readers.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<LibraryOptionInfoDto>> metadataReaders() const;
|
QList<LibraryOptionInfoDto> metadataReaders() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the metadata readers.
|
* @brief Gets or sets the metadata readers.
|
||||||
*/
|
*/
|
||||||
void setMetadataReaders(QList<QSharedPointer<LibraryOptionInfoDto>> newMetadataReaders);
|
void setMetadataReaders(QList<LibraryOptionInfoDto> newMetadataReaders);
|
||||||
bool metadataReadersNull() const;
|
bool metadataReadersNull() const;
|
||||||
void setMetadataReadersNull();
|
void setMetadataReadersNull();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the subtitle fetchers.
|
* @brief Gets or sets the subtitle fetchers.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<LibraryOptionInfoDto>> subtitleFetchers() const;
|
QList<LibraryOptionInfoDto> subtitleFetchers() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the subtitle fetchers.
|
* @brief Gets or sets the subtitle fetchers.
|
||||||
*/
|
*/
|
||||||
void setSubtitleFetchers(QList<QSharedPointer<LibraryOptionInfoDto>> newSubtitleFetchers);
|
void setSubtitleFetchers(QList<LibraryOptionInfoDto> newSubtitleFetchers);
|
||||||
bool subtitleFetchersNull() const;
|
bool subtitleFetchersNull() const;
|
||||||
void setSubtitleFetchersNull();
|
void setSubtitleFetchersNull();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the type options.
|
* @brief Gets or sets the type options.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<LibraryTypeOptionsDto>> typeOptions() const;
|
QList<LibraryTypeOptionsDto> typeOptions() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the type options.
|
* @brief Gets or sets the type options.
|
||||||
*/
|
*/
|
||||||
void setTypeOptions(QList<QSharedPointer<LibraryTypeOptionsDto>> newTypeOptions);
|
void setTypeOptions(QList<LibraryTypeOptionsDto> newTypeOptions);
|
||||||
bool typeOptionsNull() const;
|
bool typeOptionsNull() const;
|
||||||
void setTypeOptionsNull();
|
void setTypeOptionsNull();
|
||||||
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QList<QSharedPointer<LibraryOptionInfoDto>> m_metadataSavers;
|
QList<LibraryOptionInfoDto> m_metadataSavers;
|
||||||
QList<QSharedPointer<LibraryOptionInfoDto>> m_metadataReaders;
|
QList<LibraryOptionInfoDto> m_metadataReaders;
|
||||||
QList<QSharedPointer<LibraryOptionInfoDto>> m_subtitleFetchers;
|
QList<LibraryOptionInfoDto> m_subtitleFetchers;
|
||||||
QList<QSharedPointer<LibraryTypeOptionsDto>> m_typeOptions;
|
QList<LibraryTypeOptionsDto> m_typeOptions;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // NS DTO
|
} // NS DTO
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QString>
|
#include <QString>
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
@ -76,22 +75,22 @@ public:
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the metadata fetchers.
|
* @brief Gets or sets the metadata fetchers.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<LibraryOptionInfoDto>> metadataFetchers() const;
|
QList<LibraryOptionInfoDto> metadataFetchers() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the metadata fetchers.
|
* @brief Gets or sets the metadata fetchers.
|
||||||
*/
|
*/
|
||||||
void setMetadataFetchers(QList<QSharedPointer<LibraryOptionInfoDto>> newMetadataFetchers);
|
void setMetadataFetchers(QList<LibraryOptionInfoDto> newMetadataFetchers);
|
||||||
bool metadataFetchersNull() const;
|
bool metadataFetchersNull() const;
|
||||||
void setMetadataFetchersNull();
|
void setMetadataFetchersNull();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the image fetchers.
|
* @brief Gets or sets the image fetchers.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<LibraryOptionInfoDto>> imageFetchers() const;
|
QList<LibraryOptionInfoDto> imageFetchers() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the image fetchers.
|
* @brief Gets or sets the image fetchers.
|
||||||
*/
|
*/
|
||||||
void setImageFetchers(QList<QSharedPointer<LibraryOptionInfoDto>> newImageFetchers);
|
void setImageFetchers(QList<LibraryOptionInfoDto> newImageFetchers);
|
||||||
bool imageFetchersNull() const;
|
bool imageFetchersNull() const;
|
||||||
void setImageFetchersNull();
|
void setImageFetchersNull();
|
||||||
|
|
||||||
|
@ -109,21 +108,21 @@ public:
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the default image options.
|
* @brief Gets or sets the default image options.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<ImageOption>> defaultImageOptions() const;
|
QList<ImageOption> defaultImageOptions() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the default image options.
|
* @brief Gets or sets the default image options.
|
||||||
*/
|
*/
|
||||||
void setDefaultImageOptions(QList<QSharedPointer<ImageOption>> newDefaultImageOptions);
|
void setDefaultImageOptions(QList<ImageOption> newDefaultImageOptions);
|
||||||
bool defaultImageOptionsNull() const;
|
bool defaultImageOptionsNull() const;
|
||||||
void setDefaultImageOptionsNull();
|
void setDefaultImageOptionsNull();
|
||||||
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString m_type;
|
QString m_type;
|
||||||
QList<QSharedPointer<LibraryOptionInfoDto>> m_metadataFetchers;
|
QList<LibraryOptionInfoDto> m_metadataFetchers;
|
||||||
QList<QSharedPointer<LibraryOptionInfoDto>> m_imageFetchers;
|
QList<LibraryOptionInfoDto> m_imageFetchers;
|
||||||
QList<ImageType> m_supportedImageTypes;
|
QList<ImageType> m_supportedImageTypes;
|
||||||
QList<QSharedPointer<ImageOption>> m_defaultImageOptions;
|
QList<ImageOption> m_defaultImageOptions;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // NS DTO
|
} // NS DTO
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QString>
|
#include <QString>
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
@ -157,9 +156,9 @@ public:
|
||||||
void setMovieCategoriesNull();
|
void setMovieCategoriesNull();
|
||||||
|
|
||||||
|
|
||||||
QList<QSharedPointer<NameValuePair>> channelMappings() const;
|
QList<NameValuePair> channelMappings() const;
|
||||||
|
|
||||||
void setChannelMappings(QList<QSharedPointer<NameValuePair>> newChannelMappings);
|
void setChannelMappings(QList<NameValuePair> newChannelMappings);
|
||||||
bool channelMappingsNull() const;
|
bool channelMappingsNull() const;
|
||||||
void setChannelMappingsNull();
|
void setChannelMappingsNull();
|
||||||
|
|
||||||
|
@ -200,7 +199,7 @@ protected:
|
||||||
QStringList m_sportsCategories;
|
QStringList m_sportsCategories;
|
||||||
QStringList m_kidsCategories;
|
QStringList m_kidsCategories;
|
||||||
QStringList m_movieCategories;
|
QStringList m_movieCategories;
|
||||||
QList<QSharedPointer<NameValuePair>> m_channelMappings;
|
QList<NameValuePair> m_channelMappings;
|
||||||
QString m_moviePrefix;
|
QString m_moviePrefix;
|
||||||
QString m_preferredLanguage;
|
QString m_preferredLanguage;
|
||||||
QString m_userAgent;
|
QString m_userAgent;
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
|
||||||
|
@ -62,11 +61,11 @@ public:
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the services.
|
* @brief Gets or sets the services.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<LiveTvServiceInfo>> services() const;
|
QList<LiveTvServiceInfo> services() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the services.
|
* @brief Gets or sets the services.
|
||||||
*/
|
*/
|
||||||
void setServices(QList<QSharedPointer<LiveTvServiceInfo>> newServices);
|
void setServices(QList<LiveTvServiceInfo> newServices);
|
||||||
bool servicesNull() const;
|
bool servicesNull() const;
|
||||||
void setServicesNull();
|
void setServicesNull();
|
||||||
|
|
||||||
|
@ -92,7 +91,7 @@ public:
|
||||||
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QList<QSharedPointer<LiveTvServiceInfo>> m_services;
|
QList<LiveTvServiceInfo> m_services;
|
||||||
bool m_isEnabled;
|
bool m_isEnabled;
|
||||||
QStringList m_enabledUsers;
|
QStringList m_enabledUsers;
|
||||||
};
|
};
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QString>
|
#include <QString>
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
@ -244,16 +243,16 @@ public:
|
||||||
void setVideo3DFormat(Video3DFormat newVideo3DFormat);
|
void setVideo3DFormat(Video3DFormat newVideo3DFormat);
|
||||||
|
|
||||||
|
|
||||||
QList<QSharedPointer<MediaStream>> mediaStreams() const;
|
QList<MediaStream> mediaStreams() const;
|
||||||
|
|
||||||
void setMediaStreams(QList<QSharedPointer<MediaStream>> newMediaStreams);
|
void setMediaStreams(QList<MediaStream> newMediaStreams);
|
||||||
bool mediaStreamsNull() const;
|
bool mediaStreamsNull() const;
|
||||||
void setMediaStreamsNull();
|
void setMediaStreamsNull();
|
||||||
|
|
||||||
|
|
||||||
QList<QSharedPointer<MediaAttachment>> mediaAttachments() const;
|
QList<MediaAttachment> mediaAttachments() const;
|
||||||
|
|
||||||
void setMediaAttachments(QList<QSharedPointer<MediaAttachment>> newMediaAttachments);
|
void setMediaAttachments(QList<MediaAttachment> newMediaAttachments);
|
||||||
bool mediaAttachmentsNull() const;
|
bool mediaAttachmentsNull() const;
|
||||||
void setMediaAttachmentsNull();
|
void setMediaAttachmentsNull();
|
||||||
|
|
||||||
|
@ -357,8 +356,8 @@ protected:
|
||||||
VideoType m_videoType;
|
VideoType m_videoType;
|
||||||
IsoType m_isoType;
|
IsoType m_isoType;
|
||||||
Video3DFormat m_video3DFormat;
|
Video3DFormat m_video3DFormat;
|
||||||
QList<QSharedPointer<MediaStream>> m_mediaStreams;
|
QList<MediaStream> m_mediaStreams;
|
||||||
QList<QSharedPointer<MediaAttachment>> m_mediaAttachments;
|
QList<MediaAttachment> m_mediaAttachments;
|
||||||
QStringList m_formats;
|
QStringList m_formats;
|
||||||
std::optional<qint32> m_bitrate = std::nullopt;
|
std::optional<qint32> m_bitrate = std::nullopt;
|
||||||
TransportStreamTimestamp m_timestamp;
|
TransportStreamTimestamp m_timestamp;
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QString>
|
#include <QString>
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
@ -65,30 +64,30 @@ public:
|
||||||
|
|
||||||
// Properties
|
// Properties
|
||||||
|
|
||||||
QList<QSharedPointer<ParentalRating>> parentalRatingOptions() const;
|
QList<ParentalRating> parentalRatingOptions() const;
|
||||||
|
|
||||||
void setParentalRatingOptions(QList<QSharedPointer<ParentalRating>> newParentalRatingOptions);
|
void setParentalRatingOptions(QList<ParentalRating> newParentalRatingOptions);
|
||||||
bool parentalRatingOptionsNull() const;
|
bool parentalRatingOptionsNull() const;
|
||||||
void setParentalRatingOptionsNull();
|
void setParentalRatingOptionsNull();
|
||||||
|
|
||||||
|
|
||||||
QList<QSharedPointer<CountryInfo>> countries() const;
|
QList<CountryInfo> countries() const;
|
||||||
|
|
||||||
void setCountries(QList<QSharedPointer<CountryInfo>> newCountries);
|
void setCountries(QList<CountryInfo> newCountries);
|
||||||
bool countriesNull() const;
|
bool countriesNull() const;
|
||||||
void setCountriesNull();
|
void setCountriesNull();
|
||||||
|
|
||||||
|
|
||||||
QList<QSharedPointer<CultureDto>> cultures() const;
|
QList<CultureDto> cultures() const;
|
||||||
|
|
||||||
void setCultures(QList<QSharedPointer<CultureDto>> newCultures);
|
void setCultures(QList<CultureDto> newCultures);
|
||||||
bool culturesNull() const;
|
bool culturesNull() const;
|
||||||
void setCulturesNull();
|
void setCulturesNull();
|
||||||
|
|
||||||
|
|
||||||
QList<QSharedPointer<ExternalIdInfo>> externalIdInfos() const;
|
QList<ExternalIdInfo> externalIdInfos() const;
|
||||||
|
|
||||||
void setExternalIdInfos(QList<QSharedPointer<ExternalIdInfo>> newExternalIdInfos);
|
void setExternalIdInfos(QList<ExternalIdInfo> newExternalIdInfos);
|
||||||
bool externalIdInfosNull() const;
|
bool externalIdInfosNull() const;
|
||||||
void setExternalIdInfosNull();
|
void setExternalIdInfosNull();
|
||||||
|
|
||||||
|
@ -100,20 +99,20 @@ public:
|
||||||
void setContentTypeNull();
|
void setContentTypeNull();
|
||||||
|
|
||||||
|
|
||||||
QList<QSharedPointer<NameValuePair>> contentTypeOptions() const;
|
QList<NameValuePair> contentTypeOptions() const;
|
||||||
|
|
||||||
void setContentTypeOptions(QList<QSharedPointer<NameValuePair>> newContentTypeOptions);
|
void setContentTypeOptions(QList<NameValuePair> newContentTypeOptions);
|
||||||
bool contentTypeOptionsNull() const;
|
bool contentTypeOptionsNull() const;
|
||||||
void setContentTypeOptionsNull();
|
void setContentTypeOptionsNull();
|
||||||
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QList<QSharedPointer<ParentalRating>> m_parentalRatingOptions;
|
QList<ParentalRating> m_parentalRatingOptions;
|
||||||
QList<QSharedPointer<CountryInfo>> m_countries;
|
QList<CountryInfo> m_countries;
|
||||||
QList<QSharedPointer<CultureDto>> m_cultures;
|
QList<CultureDto> m_cultures;
|
||||||
QList<QSharedPointer<ExternalIdInfo>> m_externalIdInfos;
|
QList<ExternalIdInfo> m_externalIdInfos;
|
||||||
QString m_contentType;
|
QString m_contentType;
|
||||||
QList<QSharedPointer<NameValuePair>> m_contentTypeOptions;
|
QList<NameValuePair> m_contentTypeOptions;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // NS DTO
|
} // NS DTO
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
|
||||||
|
@ -62,11 +61,11 @@ public:
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the current page of notifications.
|
* @brief Gets or sets the current page of notifications.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<NotificationDto>> notifications() const;
|
QList<NotificationDto> notifications() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the current page of notifications.
|
* @brief Gets or sets the current page of notifications.
|
||||||
*/
|
*/
|
||||||
void setNotifications(QList<QSharedPointer<NotificationDto>> newNotifications);
|
void setNotifications(QList<NotificationDto> newNotifications);
|
||||||
bool notificationsNull() const;
|
bool notificationsNull() const;
|
||||||
void setNotificationsNull();
|
void setNotificationsNull();
|
||||||
|
|
||||||
|
@ -81,7 +80,7 @@ public:
|
||||||
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QList<QSharedPointer<NotificationDto>> m_notifications;
|
QList<NotificationDto> m_notifications;
|
||||||
qint32 m_totalRecordCount;
|
qint32 m_totalRecordCount;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QString>
|
#include <QString>
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
@ -131,11 +130,11 @@ This is used to identify the proper item for automatic updates.
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the versions.
|
* @brief Gets or sets the versions.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<VersionInfo>> versions() const;
|
QList<VersionInfo> versions() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the versions.
|
* @brief Gets or sets the versions.
|
||||||
*/
|
*/
|
||||||
void setVersions(QList<QSharedPointer<VersionInfo>> newVersions);
|
void setVersions(QList<VersionInfo> newVersions);
|
||||||
bool versionsNull() const;
|
bool versionsNull() const;
|
||||||
void setVersionsNull();
|
void setVersionsNull();
|
||||||
|
|
||||||
|
@ -158,7 +157,7 @@ protected:
|
||||||
QString m_owner;
|
QString m_owner;
|
||||||
QString m_category;
|
QString m_category;
|
||||||
QString m_guid;
|
QString m_guid;
|
||||||
QList<QSharedPointer<VersionInfo>> m_versions;
|
QList<VersionInfo> m_versions;
|
||||||
QString m_imageUrl;
|
QString m_imageUrl;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QString>
|
#include <QString>
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
@ -64,11 +63,11 @@ public:
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the media sources.
|
* @brief Gets or sets the media sources.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<MediaSourceInfo>> mediaSources() const;
|
QList<MediaSourceInfo> mediaSources() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the media sources.
|
* @brief Gets or sets the media sources.
|
||||||
*/
|
*/
|
||||||
void setMediaSources(QList<QSharedPointer<MediaSourceInfo>> newMediaSources);
|
void setMediaSources(QList<MediaSourceInfo> newMediaSources);
|
||||||
bool mediaSourcesNull() const;
|
bool mediaSourcesNull() const;
|
||||||
void setMediaSourcesNull();
|
void setMediaSourcesNull();
|
||||||
|
|
||||||
|
@ -90,7 +89,7 @@ public:
|
||||||
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QList<QSharedPointer<MediaSourceInfo>> m_mediaSources;
|
QList<MediaSourceInfo> m_mediaSources;
|
||||||
QString m_playSessionId;
|
QString m_playSessionId;
|
||||||
PlaybackErrorCode m_errorCode;
|
PlaybackErrorCode m_errorCode;
|
||||||
};
|
};
|
||||||
|
|
|
@ -224,9 +224,9 @@ public:
|
||||||
void setRepeatMode(RepeatMode newRepeatMode);
|
void setRepeatMode(RepeatMode newRepeatMode);
|
||||||
|
|
||||||
|
|
||||||
QList<QSharedPointer<QueueItem>> nowPlayingQueue() const;
|
QList<QueueItem> nowPlayingQueue() const;
|
||||||
|
|
||||||
void setNowPlayingQueue(QList<QSharedPointer<QueueItem>> newNowPlayingQueue);
|
void setNowPlayingQueue(QList<QueueItem> newNowPlayingQueue);
|
||||||
bool nowPlayingQueueNull() const;
|
bool nowPlayingQueueNull() const;
|
||||||
void setNowPlayingQueueNull();
|
void setNowPlayingQueueNull();
|
||||||
|
|
||||||
|
@ -257,7 +257,7 @@ protected:
|
||||||
QString m_liveStreamId;
|
QString m_liveStreamId;
|
||||||
QString m_playSessionId;
|
QString m_playSessionId;
|
||||||
RepeatMode m_repeatMode;
|
RepeatMode m_repeatMode;
|
||||||
QList<QSharedPointer<QueueItem>> m_nowPlayingQueue;
|
QList<QueueItem> m_nowPlayingQueue;
|
||||||
QString m_playlistItemId;
|
QString m_playlistItemId;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -224,9 +224,9 @@ public:
|
||||||
void setRepeatMode(RepeatMode newRepeatMode);
|
void setRepeatMode(RepeatMode newRepeatMode);
|
||||||
|
|
||||||
|
|
||||||
QList<QSharedPointer<QueueItem>> nowPlayingQueue() const;
|
QList<QueueItem> nowPlayingQueue() const;
|
||||||
|
|
||||||
void setNowPlayingQueue(QList<QSharedPointer<QueueItem>> newNowPlayingQueue);
|
void setNowPlayingQueue(QList<QueueItem> newNowPlayingQueue);
|
||||||
bool nowPlayingQueueNull() const;
|
bool nowPlayingQueueNull() const;
|
||||||
void setNowPlayingQueueNull();
|
void setNowPlayingQueueNull();
|
||||||
|
|
||||||
|
@ -257,7 +257,7 @@ protected:
|
||||||
QString m_liveStreamId;
|
QString m_liveStreamId;
|
||||||
QString m_playSessionId;
|
QString m_playSessionId;
|
||||||
RepeatMode m_repeatMode;
|
RepeatMode m_repeatMode;
|
||||||
QList<QSharedPointer<QueueItem>> m_nowPlayingQueue;
|
QList<QueueItem> m_nowPlayingQueue;
|
||||||
QString m_playlistItemId;
|
QString m_playlistItemId;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -154,9 +154,9 @@ public:
|
||||||
void setPlaylistItemIdNull();
|
void setPlaylistItemIdNull();
|
||||||
|
|
||||||
|
|
||||||
QList<QSharedPointer<QueueItem>> nowPlayingQueue() const;
|
QList<QueueItem> nowPlayingQueue() const;
|
||||||
|
|
||||||
void setNowPlayingQueue(QList<QSharedPointer<QueueItem>> newNowPlayingQueue);
|
void setNowPlayingQueue(QList<QueueItem> newNowPlayingQueue);
|
||||||
bool nowPlayingQueueNull() const;
|
bool nowPlayingQueueNull() const;
|
||||||
void setNowPlayingQueueNull();
|
void setNowPlayingQueueNull();
|
||||||
|
|
||||||
|
@ -172,7 +172,7 @@ protected:
|
||||||
bool m_failed;
|
bool m_failed;
|
||||||
QString m_nextMediaType;
|
QString m_nextMediaType;
|
||||||
QString m_playlistItemId;
|
QString m_playlistItemId;
|
||||||
QList<QSharedPointer<QueueItem>> m_nowPlayingQueue;
|
QList<QueueItem> m_nowPlayingQueue;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // NS DTO
|
} // NS DTO
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
|
||||||
|
@ -60,9 +59,9 @@ public:
|
||||||
|
|
||||||
// Properties
|
// Properties
|
||||||
|
|
||||||
QList<QSharedPointer<NameGuidPair>> genres() const;
|
QList<NameGuidPair> genres() const;
|
||||||
|
|
||||||
void setGenres(QList<QSharedPointer<NameGuidPair>> newGenres);
|
void setGenres(QList<NameGuidPair> newGenres);
|
||||||
bool genresNull() const;
|
bool genresNull() const;
|
||||||
void setGenresNull();
|
void setGenresNull();
|
||||||
|
|
||||||
|
@ -75,7 +74,7 @@ public:
|
||||||
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QList<QSharedPointer<NameGuidPair>> m_genres;
|
QList<NameGuidPair> m_genres;
|
||||||
QStringList m_tags;
|
QStringList m_tags;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QString>
|
#include <QString>
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
@ -62,9 +61,9 @@ public:
|
||||||
|
|
||||||
// Properties
|
// Properties
|
||||||
|
|
||||||
QList<QSharedPointer<BaseItemDto>> items() const;
|
QList<BaseItemDto> items() const;
|
||||||
|
|
||||||
void setItems(QList<QSharedPointer<BaseItemDto>> newItems);
|
void setItems(QList<BaseItemDto> newItems);
|
||||||
bool itemsNull() const;
|
bool itemsNull() const;
|
||||||
void setItemsNull();
|
void setItemsNull();
|
||||||
|
|
||||||
|
@ -87,7 +86,7 @@ public:
|
||||||
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QList<QSharedPointer<BaseItemDto>> m_items;
|
QList<BaseItemDto> m_items;
|
||||||
RecommendationType m_recommendationType;
|
RecommendationType m_recommendationType;
|
||||||
QString m_baselineItemName;
|
QString m_baselineItemName;
|
||||||
QString m_categoryId;
|
QString m_categoryId;
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
|
||||||
|
@ -62,11 +61,11 @@ public:
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the images.
|
* @brief Gets or sets the images.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<RemoteImageInfo>> images() const;
|
QList<RemoteImageInfo> images() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the images.
|
* @brief Gets or sets the images.
|
||||||
*/
|
*/
|
||||||
void setImages(QList<QSharedPointer<RemoteImageInfo>> newImages);
|
void setImages(QList<RemoteImageInfo> newImages);
|
||||||
bool imagesNull() const;
|
bool imagesNull() const;
|
||||||
void setImagesNull();
|
void setImagesNull();
|
||||||
|
|
||||||
|
@ -92,7 +91,7 @@ public:
|
||||||
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QList<QSharedPointer<RemoteImageInfo>> m_images;
|
QList<RemoteImageInfo> m_images;
|
||||||
qint32 m_totalRecordCount;
|
qint32 m_totalRecordCount;
|
||||||
QStringList m_providers;
|
QStringList m_providers;
|
||||||
};
|
};
|
||||||
|
|
|
@ -148,9 +148,9 @@ public:
|
||||||
void setAlbumArtist(QSharedPointer<RemoteSearchResult> newAlbumArtist);
|
void setAlbumArtist(QSharedPointer<RemoteSearchResult> newAlbumArtist);
|
||||||
|
|
||||||
|
|
||||||
QList<QSharedPointer<RemoteSearchResult>> artists() const;
|
QList<RemoteSearchResult> artists() const;
|
||||||
|
|
||||||
void setArtists(QList<QSharedPointer<RemoteSearchResult>> newArtists);
|
void setArtists(QList<RemoteSearchResult> newArtists);
|
||||||
bool artistsNull() const;
|
bool artistsNull() const;
|
||||||
void setArtistsNull();
|
void setArtistsNull();
|
||||||
|
|
||||||
|
@ -167,7 +167,7 @@ protected:
|
||||||
QString m_searchProviderName;
|
QString m_searchProviderName;
|
||||||
QString m_overview;
|
QString m_overview;
|
||||||
QSharedPointer<RemoteSearchResult> m_albumArtist = nullptr;
|
QSharedPointer<RemoteSearchResult> m_albumArtist = nullptr;
|
||||||
QList<QSharedPointer<RemoteSearchResult>> m_artists;
|
QList<RemoteSearchResult> m_artists;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // NS DTO
|
} // NS DTO
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QString>
|
#include <QString>
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
@ -102,9 +101,9 @@ public:
|
||||||
void setMimeTypeNull();
|
void setMimeTypeNull();
|
||||||
|
|
||||||
|
|
||||||
QList<QSharedPointer<ProfileCondition>> conditions() const;
|
QList<ProfileCondition> conditions() const;
|
||||||
|
|
||||||
void setConditions(QList<QSharedPointer<ProfileCondition>> newConditions);
|
void setConditions(QList<ProfileCondition> newConditions);
|
||||||
bool conditionsNull() const;
|
bool conditionsNull() const;
|
||||||
void setConditionsNull();
|
void setConditionsNull();
|
||||||
|
|
||||||
|
@ -116,7 +115,7 @@ protected:
|
||||||
DlnaProfileType m_type;
|
DlnaProfileType m_type;
|
||||||
QString m_orgPn;
|
QString m_orgPn;
|
||||||
QString m_mimeType;
|
QString m_mimeType;
|
||||||
QList<QSharedPointer<ProfileCondition>> m_conditions;
|
QList<ProfileCondition> m_conditions;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // NS DTO
|
} // NS DTO
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
|
||||||
|
@ -62,11 +61,11 @@ public:
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the search hints.
|
* @brief Gets or sets the search hints.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<SearchHint>> searchHints() const;
|
QList<SearchHint> searchHints() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the search hints.
|
* @brief Gets or sets the search hints.
|
||||||
*/
|
*/
|
||||||
void setSearchHints(QList<QSharedPointer<SearchHint>> newSearchHints);
|
void setSearchHints(QList<SearchHint> newSearchHints);
|
||||||
bool searchHintsNull() const;
|
bool searchHintsNull() const;
|
||||||
void setSearchHintsNull();
|
void setSearchHintsNull();
|
||||||
|
|
||||||
|
@ -81,7 +80,7 @@ public:
|
||||||
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QList<QSharedPointer<SearchHint>> m_searchHints;
|
QList<SearchHint> m_searchHints;
|
||||||
qint32 m_totalRecordCount;
|
qint32 m_totalRecordCount;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
|
||||||
|
@ -62,11 +61,11 @@ public:
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the items.
|
* @brief Gets or sets the items.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<SeriesTimerInfoDto>> items() const;
|
QList<SeriesTimerInfoDto> items() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the items.
|
* @brief Gets or sets the items.
|
||||||
*/
|
*/
|
||||||
void setItems(QList<QSharedPointer<SeriesTimerInfoDto>> newItems);
|
void setItems(QList<SeriesTimerInfoDto> newItems);
|
||||||
bool itemsNull() const;
|
bool itemsNull() const;
|
||||||
void setItemsNull();
|
void setItemsNull();
|
||||||
|
|
||||||
|
@ -90,7 +89,7 @@ public:
|
||||||
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QList<QSharedPointer<SeriesTimerInfoDto>> m_items;
|
QList<SeriesTimerInfoDto> m_items;
|
||||||
qint32 m_totalRecordCount;
|
qint32 m_totalRecordCount;
|
||||||
qint32 m_startIndex;
|
qint32 m_startIndex;
|
||||||
};
|
};
|
||||||
|
|
|
@ -560,9 +560,9 @@ Allows potential contributors without visual studio to modify production dashboa
|
||||||
void setImageSavingConvention(ImageSavingConvention newImageSavingConvention);
|
void setImageSavingConvention(ImageSavingConvention newImageSavingConvention);
|
||||||
|
|
||||||
|
|
||||||
QList<QSharedPointer<MetadataOptions>> metadataOptions() const;
|
QList<MetadataOptions> metadataOptions() const;
|
||||||
|
|
||||||
void setMetadataOptions(QList<QSharedPointer<MetadataOptions>> newMetadataOptions);
|
void setMetadataOptions(QList<MetadataOptions> newMetadataOptions);
|
||||||
bool metadataOptionsNull() const;
|
bool metadataOptionsNull() const;
|
||||||
void setMetadataOptionsNull();
|
void setMetadataOptionsNull();
|
||||||
|
|
||||||
|
@ -598,9 +598,9 @@ Allows potential contributors without visual studio to modify production dashboa
|
||||||
void setSaveMetadataHidden(bool newSaveMetadataHidden);
|
void setSaveMetadataHidden(bool newSaveMetadataHidden);
|
||||||
|
|
||||||
|
|
||||||
QList<QSharedPointer<NameValuePair>> contentTypes() const;
|
QList<NameValuePair> contentTypes() const;
|
||||||
|
|
||||||
void setContentTypes(QList<QSharedPointer<NameValuePair>> newContentTypes);
|
void setContentTypes(QList<NameValuePair> newContentTypes);
|
||||||
bool contentTypesNull() const;
|
bool contentTypesNull() const;
|
||||||
void setContentTypesNull();
|
void setContentTypesNull();
|
||||||
|
|
||||||
|
@ -654,9 +654,9 @@ Allows potential contributors without visual studio to modify production dashboa
|
||||||
void setCodecsUsedNull();
|
void setCodecsUsedNull();
|
||||||
|
|
||||||
|
|
||||||
QList<QSharedPointer<RepositoryInfo>> pluginRepositories() const;
|
QList<RepositoryInfo> pluginRepositories() const;
|
||||||
|
|
||||||
void setPluginRepositories(QList<QSharedPointer<RepositoryInfo>> newPluginRepositories);
|
void setPluginRepositories(QList<RepositoryInfo> newPluginRepositories);
|
||||||
bool pluginRepositoriesNull() const;
|
bool pluginRepositoriesNull() const;
|
||||||
void setPluginRepositoriesNull();
|
void setPluginRepositoriesNull();
|
||||||
|
|
||||||
|
@ -705,9 +705,9 @@ Allows potential contributors without visual studio to modify production dashboa
|
||||||
void setImageExtractionTimeoutMs(qint32 newImageExtractionTimeoutMs);
|
void setImageExtractionTimeoutMs(qint32 newImageExtractionTimeoutMs);
|
||||||
|
|
||||||
|
|
||||||
QList<QSharedPointer<PathSubstitution>> pathSubstitutions() const;
|
QList<PathSubstitution> pathSubstitutions() const;
|
||||||
|
|
||||||
void setPathSubstitutions(QList<QSharedPointer<PathSubstitution>> newPathSubstitutions);
|
void setPathSubstitutions(QList<PathSubstitution> newPathSubstitutions);
|
||||||
bool pathSubstitutionsNull() const;
|
bool pathSubstitutionsNull() const;
|
||||||
void setPathSubstitutionsNull();
|
void setPathSubstitutionsNull();
|
||||||
|
|
||||||
|
@ -864,13 +864,13 @@ protected:
|
||||||
qint32 m_libraryMonitorDelay;
|
qint32 m_libraryMonitorDelay;
|
||||||
bool m_enableDashboardResponseCaching;
|
bool m_enableDashboardResponseCaching;
|
||||||
ImageSavingConvention m_imageSavingConvention;
|
ImageSavingConvention m_imageSavingConvention;
|
||||||
QList<QSharedPointer<MetadataOptions>> m_metadataOptions;
|
QList<MetadataOptions> m_metadataOptions;
|
||||||
bool m_skipDeserializationForBasicTypes;
|
bool m_skipDeserializationForBasicTypes;
|
||||||
QString m_serverName;
|
QString m_serverName;
|
||||||
QString m_baseUrl;
|
QString m_baseUrl;
|
||||||
QString m_uICulture;
|
QString m_uICulture;
|
||||||
bool m_saveMetadataHidden;
|
bool m_saveMetadataHidden;
|
||||||
QList<QSharedPointer<NameValuePair>> m_contentTypes;
|
QList<NameValuePair> m_contentTypes;
|
||||||
qint32 m_remoteClientBitrateLimit;
|
qint32 m_remoteClientBitrateLimit;
|
||||||
bool m_enableFolderView;
|
bool m_enableFolderView;
|
||||||
bool m_enableGroupingIntoCollections;
|
bool m_enableGroupingIntoCollections;
|
||||||
|
@ -878,14 +878,14 @@ protected:
|
||||||
QStringList m_localNetworkSubnets;
|
QStringList m_localNetworkSubnets;
|
||||||
QStringList m_localNetworkAddresses;
|
QStringList m_localNetworkAddresses;
|
||||||
QStringList m_codecsUsed;
|
QStringList m_codecsUsed;
|
||||||
QList<QSharedPointer<RepositoryInfo>> m_pluginRepositories;
|
QList<RepositoryInfo> m_pluginRepositories;
|
||||||
bool m_enableExternalContentInSuggestions;
|
bool m_enableExternalContentInSuggestions;
|
||||||
bool m_requireHttps;
|
bool m_requireHttps;
|
||||||
bool m_enableNewOmdbSupport;
|
bool m_enableNewOmdbSupport;
|
||||||
QStringList m_remoteIPFilter;
|
QStringList m_remoteIPFilter;
|
||||||
bool m_isRemoteIPFilterBlacklist;
|
bool m_isRemoteIPFilterBlacklist;
|
||||||
qint32 m_imageExtractionTimeoutMs;
|
qint32 m_imageExtractionTimeoutMs;
|
||||||
QList<QSharedPointer<PathSubstitution>> m_pathSubstitutions;
|
QList<PathSubstitution> m_pathSubstitutions;
|
||||||
bool m_enableSimpleArtistDetection;
|
bool m_enableSimpleArtistDetection;
|
||||||
QStringList m_uninstalledPlugins;
|
QStringList m_uninstalledPlugins;
|
||||||
bool m_enableSlowResponseWarning;
|
bool m_enableSlowResponseWarning;
|
||||||
|
|
|
@ -74,9 +74,9 @@ public:
|
||||||
void setPlayState(QSharedPointer<PlayerStateInfo> newPlayState);
|
void setPlayState(QSharedPointer<PlayerStateInfo> newPlayState);
|
||||||
|
|
||||||
|
|
||||||
QList<QSharedPointer<SessionUserInfo>> additionalUsers() const;
|
QList<SessionUserInfo> additionalUsers() const;
|
||||||
|
|
||||||
void setAdditionalUsers(QList<QSharedPointer<SessionUserInfo>> newAdditionalUsers);
|
void setAdditionalUsers(QList<SessionUserInfo> newAdditionalUsers);
|
||||||
bool additionalUsersNull() const;
|
bool additionalUsersNull() const;
|
||||||
void setAdditionalUsersNull();
|
void setAdditionalUsersNull();
|
||||||
|
|
||||||
|
@ -251,9 +251,9 @@ public:
|
||||||
void setSupportsRemoteControl(bool newSupportsRemoteControl);
|
void setSupportsRemoteControl(bool newSupportsRemoteControl);
|
||||||
|
|
||||||
|
|
||||||
QList<QSharedPointer<QueueItem>> nowPlayingQueue() const;
|
QList<QueueItem> nowPlayingQueue() const;
|
||||||
|
|
||||||
void setNowPlayingQueue(QList<QSharedPointer<QueueItem>> newNowPlayingQueue);
|
void setNowPlayingQueue(QList<QueueItem> newNowPlayingQueue);
|
||||||
bool nowPlayingQueueNull() const;
|
bool nowPlayingQueueNull() const;
|
||||||
void setNowPlayingQueueNull();
|
void setNowPlayingQueueNull();
|
||||||
|
|
||||||
|
@ -297,7 +297,7 @@ public:
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QSharedPointer<PlayerStateInfo> m_playState = nullptr;
|
QSharedPointer<PlayerStateInfo> m_playState = nullptr;
|
||||||
QList<QSharedPointer<SessionUserInfo>> m_additionalUsers;
|
QList<SessionUserInfo> m_additionalUsers;
|
||||||
QSharedPointer<ClientCapabilities> m_capabilities = nullptr;
|
QSharedPointer<ClientCapabilities> m_capabilities = nullptr;
|
||||||
QString m_remoteEndPoint;
|
QString m_remoteEndPoint;
|
||||||
QStringList m_playableMediaTypes;
|
QStringList m_playableMediaTypes;
|
||||||
|
@ -318,7 +318,7 @@ protected:
|
||||||
bool m_isActive;
|
bool m_isActive;
|
||||||
bool m_supportsMediaControl;
|
bool m_supportsMediaControl;
|
||||||
bool m_supportsRemoteControl;
|
bool m_supportsRemoteControl;
|
||||||
QList<QSharedPointer<QueueItem>> m_nowPlayingQueue;
|
QList<QueueItem> m_nowPlayingQueue;
|
||||||
bool m_hasCustomDeviceName;
|
bool m_hasCustomDeviceName;
|
||||||
QString m_playlistItemId;
|
QString m_playlistItemId;
|
||||||
QString m_serverId;
|
QString m_serverId;
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QString>
|
#include <QString>
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
@ -196,11 +195,11 @@ public:
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the completed installations.
|
* @brief Gets or sets the completed installations.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<InstallationInfo>> completedInstallations() const;
|
QList<InstallationInfo> completedInstallations() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the completed installations.
|
* @brief Gets or sets the completed installations.
|
||||||
*/
|
*/
|
||||||
void setCompletedInstallations(QList<QSharedPointer<InstallationInfo>> newCompletedInstallations);
|
void setCompletedInstallations(QList<InstallationInfo> newCompletedInstallations);
|
||||||
bool completedInstallationsNull() const;
|
bool completedInstallationsNull() const;
|
||||||
void setCompletedInstallationsNull();
|
void setCompletedInstallationsNull();
|
||||||
|
|
||||||
|
@ -329,7 +328,7 @@ protected:
|
||||||
bool m_isShuttingDown;
|
bool m_isShuttingDown;
|
||||||
bool m_supportsLibraryMonitor;
|
bool m_supportsLibraryMonitor;
|
||||||
qint32 m_webSocketPortNumber;
|
qint32 m_webSocketPortNumber;
|
||||||
QList<QSharedPointer<InstallationInfo>> m_completedInstallations;
|
QList<InstallationInfo> m_completedInstallations;
|
||||||
bool m_canSelfRestart;
|
bool m_canSelfRestart;
|
||||||
bool m_canLaunchWebBrowser;
|
bool m_canLaunchWebBrowser;
|
||||||
QString m_programDataPath;
|
QString m_programDataPath;
|
||||||
|
|
|
@ -108,11 +108,11 @@ public:
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the triggers.
|
* @brief Gets or sets the triggers.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<TaskTriggerInfo>> triggers() const;
|
QList<TaskTriggerInfo> triggers() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the triggers.
|
* @brief Gets or sets the triggers.
|
||||||
*/
|
*/
|
||||||
void setTriggers(QList<QSharedPointer<TaskTriggerInfo>> newTriggers);
|
void setTriggers(QList<TaskTriggerInfo> newTriggers);
|
||||||
bool triggersNull() const;
|
bool triggersNull() const;
|
||||||
void setTriggersNull();
|
void setTriggersNull();
|
||||||
|
|
||||||
|
@ -165,7 +165,7 @@ protected:
|
||||||
std::optional<double> m_currentProgressPercentage = std::nullopt;
|
std::optional<double> m_currentProgressPercentage = std::nullopt;
|
||||||
QString m_jellyfinId;
|
QString m_jellyfinId;
|
||||||
QSharedPointer<TaskResult> m_lastExecutionResult = nullptr;
|
QSharedPointer<TaskResult> m_lastExecutionResult = nullptr;
|
||||||
QList<QSharedPointer<TaskTriggerInfo>> m_triggers;
|
QList<TaskTriggerInfo> m_triggers;
|
||||||
QString m_description;
|
QString m_description;
|
||||||
QString m_category;
|
QString m_category;
|
||||||
bool m_isHidden;
|
bool m_isHidden;
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QString>
|
#include <QString>
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
@ -63,11 +62,11 @@ public:
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the items.
|
* @brief Gets or sets the items.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<BaseItemDto>> items() const;
|
QList<BaseItemDto> items() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the items.
|
* @brief Gets or sets the items.
|
||||||
*/
|
*/
|
||||||
void setItems(QList<QSharedPointer<BaseItemDto>> newItems);
|
void setItems(QList<BaseItemDto> newItems);
|
||||||
bool itemsNull() const;
|
bool itemsNull() const;
|
||||||
void setItemsNull();
|
void setItemsNull();
|
||||||
|
|
||||||
|
@ -100,7 +99,7 @@ public:
|
||||||
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QList<QSharedPointer<BaseItemDto>> m_items;
|
QList<BaseItemDto> m_items;
|
||||||
qint32 m_totalRecordCount;
|
qint32 m_totalRecordCount;
|
||||||
qint32 m_startIndex;
|
qint32 m_startIndex;
|
||||||
QString m_ownerId;
|
QString m_ownerId;
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
|
||||||
|
@ -62,11 +61,11 @@ public:
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the items.
|
* @brief Gets or sets the items.
|
||||||
*/
|
*/
|
||||||
QList<QSharedPointer<TimerInfoDto>> items() const;
|
QList<TimerInfoDto> items() const;
|
||||||
/**
|
/**
|
||||||
* @brief Gets or sets the items.
|
* @brief Gets or sets the items.
|
||||||
*/
|
*/
|
||||||
void setItems(QList<QSharedPointer<TimerInfoDto>> newItems);
|
void setItems(QList<TimerInfoDto> newItems);
|
||||||
bool itemsNull() const;
|
bool itemsNull() const;
|
||||||
void setItemsNull();
|
void setItemsNull();
|
||||||
|
|
||||||
|
@ -90,7 +89,7 @@ public:
|
||||||
|
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QList<QSharedPointer<TimerInfoDto>> m_items;
|
QList<TimerInfoDto> m_items;
|
||||||
qint32 m_totalRecordCount;
|
qint32 m_totalRecordCount;
|
||||||
qint32 m_startIndex;
|
qint32 m_startIndex;
|
||||||
};
|
};
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QString>
|
#include <QString>
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
@ -96,9 +95,9 @@ public:
|
||||||
void setImageFetcherOrderNull();
|
void setImageFetcherOrderNull();
|
||||||
|
|
||||||
|
|
||||||
QList<QSharedPointer<ImageOption>> imageOptions() const;
|
QList<ImageOption> imageOptions() const;
|
||||||
|
|
||||||
void setImageOptions(QList<QSharedPointer<ImageOption>> newImageOptions);
|
void setImageOptions(QList<ImageOption> newImageOptions);
|
||||||
bool imageOptionsNull() const;
|
bool imageOptionsNull() const;
|
||||||
void setImageOptionsNull();
|
void setImageOptionsNull();
|
||||||
|
|
||||||
|
@ -109,7 +108,7 @@ protected:
|
||||||
QStringList m_metadataFetcherOrder;
|
QStringList m_metadataFetcherOrder;
|
||||||
QStringList m_imageFetchers;
|
QStringList m_imageFetchers;
|
||||||
QStringList m_imageFetcherOrder;
|
QStringList m_imageFetcherOrder;
|
||||||
QList<QSharedPointer<ImageOption>> m_imageOptions;
|
QList<ImageOption> m_imageOptions;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // NS DTO
|
} // NS DTO
|
||||||
|
|
|
@ -33,7 +33,6 @@
|
||||||
#include <QJsonObject>
|
#include <QJsonObject>
|
||||||
#include <QJsonValue>
|
#include <QJsonValue>
|
||||||
#include <QList>
|
#include <QList>
|
||||||
#include <QSharedPointer>
|
|
||||||
#include <QString>
|
#include <QString>
|
||||||
#include <QStringList>
|
#include <QStringList>
|
||||||
#include <optional>
|
#include <optional>
|
||||||
|
@ -113,9 +112,9 @@ public:
|
||||||
void setEnableUserPreferenceAccess(bool newEnableUserPreferenceAccess);
|
void setEnableUserPreferenceAccess(bool newEnableUserPreferenceAccess);
|
||||||
|
|
||||||
|
|
||||||
QList<QSharedPointer<AccessSchedule>> accessSchedules() const;
|
QList<AccessSchedule> accessSchedules() const;
|
||||||
|
|
||||||
void setAccessSchedules(QList<QSharedPointer<AccessSchedule>> newAccessSchedules);
|
void setAccessSchedules(QList<AccessSchedule> newAccessSchedules);
|
||||||
bool accessSchedulesNull() const;
|
bool accessSchedulesNull() const;
|
||||||
void setAccessSchedulesNull();
|
void setAccessSchedulesNull();
|
||||||
|
|
||||||
|
@ -309,7 +308,7 @@ protected:
|
||||||
std::optional<qint32> m_maxParentalRating = std::nullopt;
|
std::optional<qint32> m_maxParentalRating = std::nullopt;
|
||||||
QStringList m_blockedTags;
|
QStringList m_blockedTags;
|
||||||
bool m_enableUserPreferenceAccess;
|
bool m_enableUserPreferenceAccess;
|
||||||
QList<QSharedPointer<AccessSchedule>> m_accessSchedules;
|
QList<AccessSchedule> m_accessSchedules;
|
||||||
QList<UnratedItem> m_blockUnratedItems;
|
QList<UnratedItem> m_blockUnratedItems;
|
||||||
bool m_enableRemoteControlOfOtherUsers;
|
bool m_enableRemoteControlOfOtherUsers;
|
||||||
bool m_enableSharedDeviceControl;
|
bool m_enableSharedDeviceControl;
|
||||||
|
|
|
@ -32,6 +32,7 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||||
#include "apimodel.h"
|
#include "apimodel.h"
|
||||||
#include "serverdiscoverymodel.h"
|
#include "serverdiscoverymodel.h"
|
||||||
#include "viewmodel/item.h"
|
#include "viewmodel/item.h"
|
||||||
|
#include "viewmodel/itemmodel.h"
|
||||||
#include "viewmodel/loader.h"
|
#include "viewmodel/loader.h"
|
||||||
#include "viewmodel/playbackmanager.h"
|
#include "viewmodel/playbackmanager.h"
|
||||||
|
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Adds a listings provider.
|
* @brief Adds a listings provider.
|
||||||
*/
|
*/
|
||||||
class AddListingProvider : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::ListingsProviderInfo, AddListingProviderParams> {
|
class AddListingProviderLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::ListingsProviderInfo, AddListingProviderParams> {
|
||||||
public:
|
public:
|
||||||
explicit AddListingProvider(ApiClient *apiClient = nullptr);
|
explicit AddListingProviderLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const AddListingProviderParams& parameters) const override;
|
QString path(const AddListingProviderParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Adds a tuner host.
|
* @brief Adds a tuner host.
|
||||||
*/
|
*/
|
||||||
class AddTunerHost : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::TunerHostInfo, AddTunerHostParams> {
|
class AddTunerHostLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::TunerHostInfo, AddTunerHostParams> {
|
||||||
public:
|
public:
|
||||||
explicit AddTunerHost(ApiClient *apiClient = nullptr);
|
explicit AddTunerHostLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const AddTunerHostParams& parameters) const override;
|
QString path(const AddTunerHostParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Authenticates a user.
|
* @brief Authenticates a user.
|
||||||
*/
|
*/
|
||||||
class AuthenticateUser : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::AuthenticationResult, AuthenticateUserParams> {
|
class AuthenticateUserLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::AuthenticationResult, AuthenticateUserParams> {
|
||||||
public:
|
public:
|
||||||
explicit AuthenticateUser(ApiClient *apiClient = nullptr);
|
explicit AuthenticateUserLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const AuthenticateUserParams& parameters) const override;
|
QString path(const AuthenticateUserParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Authenticates a user by name.
|
* @brief Authenticates a user by name.
|
||||||
*/
|
*/
|
||||||
class AuthenticateUserByName : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::AuthenticationResult, AuthenticateUserByNameParams> {
|
class AuthenticateUserByNameLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::AuthenticationResult, AuthenticateUserByNameParams> {
|
||||||
public:
|
public:
|
||||||
explicit AuthenticateUserByName(ApiClient *apiClient = nullptr);
|
explicit AuthenticateUserByNameLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const AuthenticateUserByNameParams& parameters) const override;
|
QString path(const AuthenticateUserByNameParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Authenticates a user with quick connect.
|
* @brief Authenticates a user with quick connect.
|
||||||
*/
|
*/
|
||||||
class AuthenticateWithQuickConnect : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::AuthenticationResult, AuthenticateWithQuickConnectParams> {
|
class AuthenticateWithQuickConnectLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::AuthenticationResult, AuthenticateWithQuickConnectParams> {
|
||||||
public:
|
public:
|
||||||
explicit AuthenticateWithQuickConnect(ApiClient *apiClient = nullptr);
|
explicit AuthenticateWithQuickConnectLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const AuthenticateWithQuickConnectParams& parameters) const override;
|
QString path(const AuthenticateWithQuickConnectParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Attempts to retrieve authentication information.
|
* @brief Attempts to retrieve authentication information.
|
||||||
*/
|
*/
|
||||||
class Connect : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::QuickConnectResult, ConnectParams> {
|
class ConnectLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::QuickConnectResult, ConnectParams> {
|
||||||
public:
|
public:
|
||||||
explicit Connect(ApiClient *apiClient = nullptr);
|
explicit ConnectLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const ConnectParams& parameters) const override;
|
QString path(const ConnectParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Creates a new collection.
|
* @brief Creates a new collection.
|
||||||
*/
|
*/
|
||||||
class CreateCollection : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::CollectionCreationResult, CreateCollectionParams> {
|
class CreateCollectionLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::CollectionCreationResult, CreateCollectionParams> {
|
||||||
public:
|
public:
|
||||||
explicit CreateCollection(ApiClient *apiClient = nullptr);
|
explicit CreateCollectionLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const CreateCollectionParams& parameters) const override;
|
QString path(const CreateCollectionParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Creates a new playlist.
|
* @brief Creates a new playlist.
|
||||||
*/
|
*/
|
||||||
class CreatePlaylist : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::PlaylistCreationResult, CreatePlaylistParams> {
|
class CreatePlaylistLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::PlaylistCreationResult, CreatePlaylistParams> {
|
||||||
public:
|
public:
|
||||||
explicit CreatePlaylist(ApiClient *apiClient = nullptr);
|
explicit CreatePlaylistLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const CreatePlaylistParams& parameters) const override;
|
QString path(const CreatePlaylistParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Creates a user.
|
* @brief Creates a user.
|
||||||
*/
|
*/
|
||||||
class CreateUserByName : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::UserDto, CreateUserByNameParams> {
|
class CreateUserByNameLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::UserDto, CreateUserByNameParams> {
|
||||||
public:
|
public:
|
||||||
explicit CreateUserByName(ApiClient *apiClient = nullptr);
|
explicit CreateUserByNameLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const CreateUserByNameParams& parameters) const override;
|
QString path(const CreateUserByNameParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Deletes a user's saved personal rating for an item.
|
* @brief Deletes a user's saved personal rating for an item.
|
||||||
*/
|
*/
|
||||||
class DeleteUserItemRating : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::UserItemDataDto, DeleteUserItemRatingParams> {
|
class DeleteUserItemRatingLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::UserItemDataDto, DeleteUserItemRatingParams> {
|
||||||
public:
|
public:
|
||||||
explicit DeleteUserItemRating(ApiClient *apiClient = nullptr);
|
explicit DeleteUserItemRatingLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const DeleteUserItemRatingParams& parameters) const override;
|
QString path(const DeleteUserItemRatingParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Initiates the forgot password process for a local user.
|
* @brief Initiates the forgot password process for a local user.
|
||||||
*/
|
*/
|
||||||
class ForgotPassword : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::ForgotPasswordResult, ForgotPasswordParams> {
|
class ForgotPasswordLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::ForgotPasswordResult, ForgotPasswordParams> {
|
||||||
public:
|
public:
|
||||||
explicit ForgotPassword(ApiClient *apiClient = nullptr);
|
explicit ForgotPasswordLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const ForgotPasswordParams& parameters) const override;
|
QString path(const ForgotPasswordParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Redeems a forgot password pin.
|
* @brief Redeems a forgot password pin.
|
||||||
*/
|
*/
|
||||||
class ForgotPasswordPin : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::PinRedeemResult, ForgotPasswordPinParams> {
|
class ForgotPasswordPinLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::PinRedeemResult, ForgotPasswordPinParams> {
|
||||||
public:
|
public:
|
||||||
explicit ForgotPasswordPin(ApiClient *apiClient = nullptr);
|
explicit ForgotPasswordPinLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const ForgotPasswordPinParams& parameters) const override;
|
QString path(const ForgotPasswordPinParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Gets the search hint result.
|
* @brief Gets the search hint result.
|
||||||
*/
|
*/
|
||||||
class Get : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::SearchHintResult, GetParams> {
|
class GetLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::SearchHintResult, GetParams> {
|
||||||
public:
|
public:
|
||||||
explicit Get(ApiClient *apiClient = nullptr);
|
explicit GetLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetParams& parameters) const override;
|
QString path(const GetParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Gets additional parts for a video.
|
* @brief Gets additional parts for a video.
|
||||||
*/
|
*/
|
||||||
class GetAdditionalPart : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetAdditionalPartParams> {
|
class GetAdditionalPartLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetAdditionalPartParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetAdditionalPart(ApiClient *apiClient = nullptr);
|
explicit GetAdditionalPartLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetAdditionalPartParams& parameters) const override;
|
QString path(const GetAdditionalPartParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Gets all album artists from a given item, folder, or the entire library.
|
* @brief Gets all album artists from a given item, folder, or the entire library.
|
||||||
*/
|
*/
|
||||||
class GetAlbumArtists : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetAlbumArtistsParams> {
|
class GetAlbumArtistsLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetAlbumArtistsParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetAlbumArtists(ApiClient *apiClient = nullptr);
|
explicit GetAlbumArtistsLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetAlbumArtistsParams& parameters) const override;
|
QString path(const GetAlbumArtistsParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Gets an artist by name.
|
* @brief Gets an artist by name.
|
||||||
*/
|
*/
|
||||||
class GetArtistByName : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDto, GetArtistByNameParams> {
|
class GetArtistByNameLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDto, GetArtistByNameParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetArtistByName(ApiClient *apiClient = nullptr);
|
explicit GetArtistByNameLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetArtistByNameParams& parameters) const override;
|
QString path(const GetArtistByNameParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Gets all artists from a given item, folder, or the entire library.
|
* @brief Gets all artists from a given item, folder, or the entire library.
|
||||||
*/
|
*/
|
||||||
class GetArtists : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetArtistsParams> {
|
class GetArtistsLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetArtistsParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetArtists(ApiClient *apiClient = nullptr);
|
explicit GetArtistsLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetArtistsParams& parameters) const override;
|
QString path(const GetArtistsParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Gets branding configuration.
|
* @brief Gets branding configuration.
|
||||||
*/
|
*/
|
||||||
class GetBrandingOptions : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BrandingOptions, GetBrandingOptionsParams> {
|
class GetBrandingOptionsLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BrandingOptions, GetBrandingOptionsParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetBrandingOptions(ApiClient *apiClient = nullptr);
|
explicit GetBrandingOptionsLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetBrandingOptionsParams& parameters) const override;
|
QString path(const GetBrandingOptionsParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Gets a live tv channel.
|
* @brief Gets a live tv channel.
|
||||||
*/
|
*/
|
||||||
class GetChannel : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDto, GetChannelParams> {
|
class GetChannelLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDto, GetChannelParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetChannel(ApiClient *apiClient = nullptr);
|
explicit GetChannelLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetChannelParams& parameters) const override;
|
QString path(const GetChannelParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Get channel features.
|
* @brief Get channel features.
|
||||||
*/
|
*/
|
||||||
class GetChannelFeatures : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::ChannelFeatures, GetChannelFeaturesParams> {
|
class GetChannelFeaturesLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::ChannelFeatures, GetChannelFeaturesParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetChannelFeatures(ApiClient *apiClient = nullptr);
|
explicit GetChannelFeaturesLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetChannelFeaturesParams& parameters) const override;
|
QString path(const GetChannelFeaturesParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Get channel items.
|
* @brief Get channel items.
|
||||||
*/
|
*/
|
||||||
class GetChannelItems : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetChannelItemsParams> {
|
class GetChannelItemsLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetChannelItemsParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetChannelItems(ApiClient *apiClient = nullptr);
|
explicit GetChannelItemsLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetChannelItemsParams& parameters) const override;
|
QString path(const GetChannelItemsParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Get channel mapping options.
|
* @brief Get channel mapping options.
|
||||||
*/
|
*/
|
||||||
class GetChannelMappingOptions : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::ChannelMappingOptionsDto, GetChannelMappingOptionsParams> {
|
class GetChannelMappingOptionsLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::ChannelMappingOptionsDto, GetChannelMappingOptionsParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetChannelMappingOptions(ApiClient *apiClient = nullptr);
|
explicit GetChannelMappingOptionsLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetChannelMappingOptionsParams& parameters) const override;
|
QString path(const GetChannelMappingOptionsParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Gets available channels.
|
* @brief Gets available channels.
|
||||||
*/
|
*/
|
||||||
class GetChannels : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetChannelsParams> {
|
class GetChannelsLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetChannelsParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetChannels(ApiClient *apiClient = nullptr);
|
explicit GetChannelsLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetChannelsParams& parameters) const override;
|
QString path(const GetChannelsParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Gets application configuration.
|
* @brief Gets application configuration.
|
||||||
*/
|
*/
|
||||||
class GetConfiguration : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::ServerConfiguration, GetConfigurationParams> {
|
class GetConfigurationLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::ServerConfiguration, GetConfigurationParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetConfiguration(ApiClient *apiClient = nullptr);
|
explicit GetConfigurationLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetConfigurationParams& parameters) const override;
|
QString path(const GetConfigurationParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Gets critic review for an item.
|
* @brief Gets critic review for an item.
|
||||||
*/
|
*/
|
||||||
class GetCriticReviews : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetCriticReviewsParams> {
|
class GetCriticReviewsLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetCriticReviewsParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetCriticReviews(ApiClient *apiClient = nullptr);
|
explicit GetCriticReviewsLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetCriticReviewsParams& parameters) const override;
|
QString path(const GetCriticReviewsParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Gets the user based on auth token.
|
* @brief Gets the user based on auth token.
|
||||||
*/
|
*/
|
||||||
class GetCurrentUser : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::UserDto, GetCurrentUserParams> {
|
class GetCurrentUserLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::UserDto, GetCurrentUserParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetCurrentUser(ApiClient *apiClient = nullptr);
|
explicit GetCurrentUserLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetCurrentUserParams& parameters) const override;
|
QString path(const GetCurrentUserParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Get Default directory browser.
|
* @brief Get Default directory browser.
|
||||||
*/
|
*/
|
||||||
class GetDefaultDirectoryBrowser : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::DefaultDirectoryBrowserInfoDto, GetDefaultDirectoryBrowserParams> {
|
class GetDefaultDirectoryBrowserLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::DefaultDirectoryBrowserInfoDto, GetDefaultDirectoryBrowserParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetDefaultDirectoryBrowser(ApiClient *apiClient = nullptr);
|
explicit GetDefaultDirectoryBrowserLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetDefaultDirectoryBrowserParams& parameters) const override;
|
QString path(const GetDefaultDirectoryBrowserParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Gets default listings provider info.
|
* @brief Gets default listings provider info.
|
||||||
*/
|
*/
|
||||||
class GetDefaultListingProvider : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::ListingsProviderInfo, GetDefaultListingProviderParams> {
|
class GetDefaultListingProviderLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::ListingsProviderInfo, GetDefaultListingProviderParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetDefaultListingProvider(ApiClient *apiClient = nullptr);
|
explicit GetDefaultListingProviderLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetDefaultListingProviderParams& parameters) const override;
|
QString path(const GetDefaultListingProviderParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Gets a default MetadataOptions object.
|
* @brief Gets a default MetadataOptions object.
|
||||||
*/
|
*/
|
||||||
class GetDefaultMetadataOptions : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::MetadataOptions, GetDefaultMetadataOptionsParams> {
|
class GetDefaultMetadataOptionsLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::MetadataOptions, GetDefaultMetadataOptionsParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetDefaultMetadataOptions(ApiClient *apiClient = nullptr);
|
explicit GetDefaultMetadataOptionsLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetDefaultMetadataOptionsParams& parameters) const override;
|
QString path(const GetDefaultMetadataOptionsParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Gets the default profile.
|
* @brief Gets the default profile.
|
||||||
*/
|
*/
|
||||||
class GetDefaultProfile : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::DeviceProfile, GetDefaultProfileParams> {
|
class GetDefaultProfileLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::DeviceProfile, GetDefaultProfileParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetDefaultProfile(ApiClient *apiClient = nullptr);
|
explicit GetDefaultProfileLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetDefaultProfileParams& parameters) const override;
|
QString path(const GetDefaultProfileParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Gets the default values for a new timer.
|
* @brief Gets the default values for a new timer.
|
||||||
*/
|
*/
|
||||||
class GetDefaultTimer : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::SeriesTimerInfoDto, GetDefaultTimerParams> {
|
class GetDefaultTimerLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::SeriesTimerInfoDto, GetDefaultTimerParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetDefaultTimer(ApiClient *apiClient = nullptr);
|
explicit GetDefaultTimerLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetDefaultTimerParams& parameters) const override;
|
QString path(const GetDefaultTimerParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Get info for a device.
|
* @brief Get info for a device.
|
||||||
*/
|
*/
|
||||||
class GetDeviceInfo : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::DeviceInfo, GetDeviceInfoParams> {
|
class GetDeviceInfoLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::DeviceInfo, GetDeviceInfoParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetDeviceInfo(ApiClient *apiClient = nullptr);
|
explicit GetDeviceInfoLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetDeviceInfoParams& parameters) const override;
|
QString path(const GetDeviceInfoParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Get options for a device.
|
* @brief Get options for a device.
|
||||||
*/
|
*/
|
||||||
class GetDeviceOptions : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::DeviceOptions, GetDeviceOptionsParams> {
|
class GetDeviceOptionsLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::DeviceOptions, GetDeviceOptionsParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetDeviceOptions(ApiClient *apiClient = nullptr);
|
explicit GetDeviceOptionsLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetDeviceOptionsParams& parameters) const override;
|
QString path(const GetDeviceOptionsParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Get Devices.
|
* @brief Get Devices.
|
||||||
*/
|
*/
|
||||||
class GetDevices : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::DeviceInfoQueryResult, GetDevicesParams> {
|
class GetDevicesLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::DeviceInfoQueryResult, GetDevicesParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetDevices(ApiClient *apiClient = nullptr);
|
explicit GetDevicesLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetDevicesParams& parameters) const override;
|
QString path(const GetDevicesParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Get Display Preferences.
|
* @brief Get Display Preferences.
|
||||||
*/
|
*/
|
||||||
class GetDisplayPreferences : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::DisplayPreferencesDto, GetDisplayPreferencesParams> {
|
class GetDisplayPreferencesLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::DisplayPreferencesDto, GetDisplayPreferencesParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetDisplayPreferences(ApiClient *apiClient = nullptr);
|
explicit GetDisplayPreferencesLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetDisplayPreferencesParams& parameters) const override;
|
QString path(const GetDisplayPreferencesParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Gets information about the request endpoint.
|
* @brief Gets information about the request endpoint.
|
||||||
*/
|
*/
|
||||||
class GetEndpointInfo : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::EndPointInfo, GetEndpointInfoParams> {
|
class GetEndpointInfoLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::EndPointInfo, GetEndpointInfoParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetEndpointInfo(ApiClient *apiClient = nullptr);
|
explicit GetEndpointInfoLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetEndpointInfoParams& parameters) const override;
|
QString path(const GetEndpointInfoParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Gets episodes for a tv season.
|
* @brief Gets episodes for a tv season.
|
||||||
*/
|
*/
|
||||||
class GetEpisodes : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetEpisodesParams> {
|
class GetEpisodesLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetEpisodesParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetEpisodes(ApiClient *apiClient = nullptr);
|
explicit GetEpisodesLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetEpisodesParams& parameters) const override;
|
QString path(const GetEpisodesParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Gets the first user.
|
* @brief Gets the first user.
|
||||||
*/
|
*/
|
||||||
class GetFirstUser : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::StartupUserDto, GetFirstUserParams> {
|
class GetFirstUserLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::StartupUserDto, GetFirstUserParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetFirstUser(ApiClient *apiClient = nullptr);
|
explicit GetFirstUserLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetFirstUserParams& parameters) const override;
|
QString path(const GetFirstUserParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Gets the first user.
|
* @brief Gets the first user.
|
||||||
*/
|
*/
|
||||||
class GetFirstUser_2 : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::StartupUserDto, GetFirstUser_2Params> {
|
class GetFirstUser_2Loader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::StartupUserDto, GetFirstUser_2Params> {
|
||||||
public:
|
public:
|
||||||
explicit GetFirstUser_2(ApiClient *apiClient = nullptr);
|
explicit GetFirstUser_2Loader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetFirstUser_2Params& parameters) const override;
|
QString path(const GetFirstUser_2Params& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Gets a genre, by name.
|
* @brief Gets a genre, by name.
|
||||||
*/
|
*/
|
||||||
class GetGenre : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDto, GetGenreParams> {
|
class GetGenreLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDto, GetGenreParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetGenre(ApiClient *apiClient = nullptr);
|
explicit GetGenreLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetGenreParams& parameters) const override;
|
QString path(const GetGenreParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Gets all genres from a given item, folder, or the entire library.
|
* @brief Gets all genres from a given item, folder, or the entire library.
|
||||||
*/
|
*/
|
||||||
class GetGenres : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetGenresParams> {
|
class GetGenresLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetGenresParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetGenres(ApiClient *apiClient = nullptr);
|
explicit GetGenresLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetGenresParams& parameters) const override;
|
QString path(const GetGenresParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Get guid info.
|
* @brief Get guid info.
|
||||||
*/
|
*/
|
||||||
class GetGuideInfo : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::GuideInfo, GetGuideInfoParams> {
|
class GetGuideInfoLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::GuideInfo, GetGuideInfoParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetGuideInfo(ApiClient *apiClient = nullptr);
|
explicit GetGuideInfoLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetGuideInfoParams& parameters) const override;
|
QString path(const GetGuideInfoParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Creates an instant playlist based on a given song.
|
* @brief Creates an instant playlist based on a given song.
|
||||||
*/
|
*/
|
||||||
class GetInstantMixFromAlbum : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetInstantMixFromAlbumParams> {
|
class GetInstantMixFromAlbumLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetInstantMixFromAlbumParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetInstantMixFromAlbum(ApiClient *apiClient = nullptr);
|
explicit GetInstantMixFromAlbumLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetInstantMixFromAlbumParams& parameters) const override;
|
QString path(const GetInstantMixFromAlbumParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Creates an instant playlist based on a given song.
|
* @brief Creates an instant playlist based on a given song.
|
||||||
*/
|
*/
|
||||||
class GetInstantMixFromArtists : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetInstantMixFromArtistsParams> {
|
class GetInstantMixFromArtistsLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetInstantMixFromArtistsParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetInstantMixFromArtists(ApiClient *apiClient = nullptr);
|
explicit GetInstantMixFromArtistsLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetInstantMixFromArtistsParams& parameters) const override;
|
QString path(const GetInstantMixFromArtistsParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Creates an instant playlist based on a given song.
|
* @brief Creates an instant playlist based on a given song.
|
||||||
*/
|
*/
|
||||||
class GetInstantMixFromItem : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetInstantMixFromItemParams> {
|
class GetInstantMixFromItemLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetInstantMixFromItemParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetInstantMixFromItem(ApiClient *apiClient = nullptr);
|
explicit GetInstantMixFromItemLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetInstantMixFromItemParams& parameters) const override;
|
QString path(const GetInstantMixFromItemParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Creates an instant playlist based on a given song.
|
* @brief Creates an instant playlist based on a given song.
|
||||||
*/
|
*/
|
||||||
class GetInstantMixFromMusicGenre : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetInstantMixFromMusicGenreParams> {
|
class GetInstantMixFromMusicGenreLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetInstantMixFromMusicGenreParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetInstantMixFromMusicGenre(ApiClient *apiClient = nullptr);
|
explicit GetInstantMixFromMusicGenreLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetInstantMixFromMusicGenreParams& parameters) const override;
|
QString path(const GetInstantMixFromMusicGenreParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Creates an instant playlist based on a given song.
|
* @brief Creates an instant playlist based on a given song.
|
||||||
*/
|
*/
|
||||||
class GetInstantMixFromMusicGenres : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetInstantMixFromMusicGenresParams> {
|
class GetInstantMixFromMusicGenresLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetInstantMixFromMusicGenresParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetInstantMixFromMusicGenres(ApiClient *apiClient = nullptr);
|
explicit GetInstantMixFromMusicGenresLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetInstantMixFromMusicGenresParams& parameters) const override;
|
QString path(const GetInstantMixFromMusicGenresParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Creates an instant playlist based on a given song.
|
* @brief Creates an instant playlist based on a given song.
|
||||||
*/
|
*/
|
||||||
class GetInstantMixFromPlaylist : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetInstantMixFromPlaylistParams> {
|
class GetInstantMixFromPlaylistLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetInstantMixFromPlaylistParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetInstantMixFromPlaylist(ApiClient *apiClient = nullptr);
|
explicit GetInstantMixFromPlaylistLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetInstantMixFromPlaylistParams& parameters) const override;
|
QString path(const GetInstantMixFromPlaylistParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Creates an instant playlist based on a given song.
|
* @brief Creates an instant playlist based on a given song.
|
||||||
*/
|
*/
|
||||||
class GetInstantMixFromSong : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetInstantMixFromSongParams> {
|
class GetInstantMixFromSongLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetInstantMixFromSongParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetInstantMixFromSong(ApiClient *apiClient = nullptr);
|
explicit GetInstantMixFromSongLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetInstantMixFromSongParams& parameters) const override;
|
QString path(const GetInstantMixFromSongParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Gets intros to play before the main media item plays.
|
* @brief Gets intros to play before the main media item plays.
|
||||||
*/
|
*/
|
||||||
class GetIntros : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetIntrosParams> {
|
class GetIntrosLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDtoQueryResult, GetIntrosParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetIntros(ApiClient *apiClient = nullptr);
|
explicit GetIntrosLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetIntrosParams& parameters) const override;
|
QString path(const GetIntrosParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Gets an item from a user's library.
|
* @brief Gets an item from a user's library.
|
||||||
*/
|
*/
|
||||||
class GetItem : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDto, GetItemParams> {
|
class GetItemLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::BaseItemDto, GetItemParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetItem(ApiClient *apiClient = nullptr);
|
explicit GetItemLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetItemParams& parameters) const override;
|
QString path(const GetItemParams& parameters) const override;
|
||||||
|
|
|
@ -45,9 +45,9 @@ namespace HTTP {
|
||||||
/**
|
/**
|
||||||
* @brief Get item counts.
|
* @brief Get item counts.
|
||||||
*/
|
*/
|
||||||
class GetItemCounts : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::ItemCounts, GetItemCountsParams> {
|
class GetItemCountsLoader : public Jellyfin::Support::HttpLoader<Jellyfin::DTO::ItemCounts, GetItemCountsParams> {
|
||||||
public:
|
public:
|
||||||
explicit GetItemCounts(ApiClient *apiClient = nullptr);
|
explicit GetItemCountsLoader(ApiClient *apiClient = nullptr);
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
QString path(const GetItemCountsParams& parameters) const override;
|
QString path(const GetItemCountsParams& parameters) const override;
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue