1
0
Fork 0
mirror of https://github.com/HenkKalkwater/harbour-sailfin.git synced 2025-09-04 01:42:44 +00:00

[2/3] update openapi spec: generate code

This updates the openapi spec and invokes the code generator to update
to the Jellyfin 10.10.6 API.

A big motivation to do this was because some mandatory fields have been
made obsolete and are no longer included in responses. Sailfin tries to
deserialize these mandatory fields and fails deserializing. It was evident
in the list of sessions to control.

The failing was a bit too gracefully in my opinion, it did not even show
that an error occurred, nor was it logged anywhere. It took some time
to debug.
This commit is contained in:
Chris Josten 2025-03-13 02:39:07 +01:00
parent eeb9183909
commit d685b48ec1
504 changed files with 62190 additions and 41202 deletions

View file

@ -40,6 +40,7 @@
#include "JellyfinQt/dto/deviceprofile.h"
#include "JellyfinQt/dto/generalcommandtype.h"
#include "JellyfinQt/dto/mediatype.h"
#include "JellyfinQt/support/jsonconv.h"
namespace Jellyfin {
@ -52,11 +53,11 @@ namespace DTO {
class ClientCapabilitiesDto {
public:
ClientCapabilitiesDto(
ClientCapabilitiesDto(
QList<MediaType> playableMediaTypes,
QList<GeneralCommandType> supportedCommands,
bool supportsMediaControl,
bool supportsContentUploading,
bool supportsPersistentIdentifier,
bool supportsSync,
QSharedPointer<DeviceProfile> deviceProfile
);
@ -75,13 +76,11 @@ public:
/**
* @brief Gets or sets the list of playable media types.
*/
QStringList playableMediaTypes() const;
QList<MediaType> playableMediaTypes() const;
/**
* @brief Gets or sets the list of playable media types.
*/
void setPlayableMediaTypes(QStringList newPlayableMediaTypes);
bool playableMediaTypesNull() const;
void setPlayableMediaTypesNull();
void setPlayableMediaTypes(QList<MediaType> newPlayableMediaTypes);
/**
* @brief Gets or sets the list of supported commands.
@ -91,8 +90,6 @@ public:
* @brief Gets or sets the list of supported commands.
*/
void setSupportedCommands(QList<GeneralCommandType> newSupportedCommands);
bool supportedCommandsNull() const;
void setSupportedCommandsNull();
/**
* @brief Gets or sets a value indicating whether session supports media control.
@ -103,26 +100,6 @@ public:
*/
void setSupportsMediaControl(bool newSupportsMediaControl);
/**
* @brief Gets or sets a value indicating whether session supports content uploading.
*/
bool supportsContentUploading() const;
/**
* @brief Gets or sets a value indicating whether session supports content uploading.
*/
void setSupportsContentUploading(bool newSupportsContentUploading);
/**
* @brief Gets or sets the message callback url.
*/
QString messageCallbackUrl() const;
/**
* @brief Gets or sets the message callback url.
*/
void setMessageCallbackUrl(QString newMessageCallbackUrl);
bool messageCallbackUrlNull() const;
void setMessageCallbackUrlNull();
/**
* @brief Gets or sets a value indicating whether session supports a persistent identifier.
*/
@ -132,15 +109,6 @@ public:
*/
void setSupportsPersistentIdentifier(bool newSupportsPersistentIdentifier);
/**
* @brief Gets or sets a value indicating whether session supports sync.
*/
bool supportsSync() const;
/**
* @brief Gets or sets a value indicating whether session supports sync.
*/
void setSupportsSync(bool newSupportsSync);
QSharedPointer<DeviceProfile> deviceProfile() const;
@ -170,13 +138,10 @@ public:
protected:
QStringList m_playableMediaTypes;
QList<MediaType> m_playableMediaTypes;
QList<GeneralCommandType> m_supportedCommands;
bool m_supportsMediaControl;
bool m_supportsContentUploading;
QString m_messageCallbackUrl;
bool m_supportsPersistentIdentifier;
bool m_supportsSync;
QSharedPointer<DeviceProfile> m_deviceProfile = QSharedPointer<DeviceProfile>();
QString m_appStoreUrl;
QString m_iconUrl;