6#include <QtCore/QJsonObject>
7#include <QtCore/QJsonArray>
8#include <QtCore/QJsonValue>
9#include <QtCore/QString>
12#include <imtoas/CSchema.h>
13#include <imtoas/CMediaType.h>
25 [[nodiscard]] QString GetName()
const;
26 void SetName(
const QString& name);
28 [[nodiscard]] QString GetIn()
const;
29 void SetIn(
const QString& in);
31 [[nodiscard]] QString GetDescription()
const;
32 void SetDescription(
const QString& description);
34 [[nodiscard]]
bool IsRequired()
const;
35 void SetRequired(
bool required =
true);
37 [[nodiscard]]
bool IsDeprecated()
const;
38 void SetDeprecated(
bool deprecated =
true);
40 [[nodiscard]]
bool IsAllowEmptyValue()
const;
41 void SetAllowEmptyValue(
bool allowEmptyValue =
true);
43 [[nodiscard]] QString GetStyle()
const;
44 void SetStyle(
const QString& style);
46 [[nodiscard]]
bool IsExplode()
const;
47 void SetExplode(
bool explode =
true);
49 [[nodiscard]]
bool IsAllowReserved()
const;
50 void SetAllowReserved(
bool allowReserved =
true);
52 [[nodiscard]] CSchema GetSchema()
const;
53 void SetSchema(
const CSchema& schema);
55 [[nodiscard]] CMediaType GetContent()
const;
56 void SetContent(
const CMediaType& content);
58 [[nodiscard]]
static bool ReadFromJsonObject(CParameter&
object,
const QJsonObject& jsonObject,
const QJsonObject& globalObject);
60 bool operator==(
const CParameter& other)
const;
61 bool operator!=(
const CParameter& other)
const {
return !(operator==(other)); }
63 [[nodiscard]] QString GetId()
const;
64 void SetId(
const QString&
id);
70 QString m_description;
73 bool m_isAllowEmptyValue;
76 bool m_isAllowReserved;
85Q_DECLARE_METATYPE(imtoas::CParameter);