/**
 * OpenAPI Generated Petstore Client
 *
 * This is a sample of Petstore application.
 * 
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

/*
 * category.h
 *
 * A category for a pet
 */

#ifndef CATEGORY_H
#define CATEGORY_H

#include "cmakegeneratedclientexports.h"
#include "qoaiobject.h"


#include <QString>

namespace QtOpenAPI {

class CMAKEGENERATEDCLIENT_EXPORT Category : public QtOpenApiCommon::QOAIObject {
    Q_GADGET

    Q_PROPERTY(qint64 id READ getId WRITE setId)
    Q_PROPERTY(QString name READ getName WRITE setName)
public:
    Category();
    Q_IMPLICIT Category(const QString &json);
    ~Category() override;

    QString asJson() const override;
    QJsonValue asJsonValue() const override;
    void fromJsonValue(const QJsonValue &json) override;
    void fromJson(const QString &jsonString) override;

    qint64 getId() const;
    void setId(const qint64 &id);
    bool isIdValueSet() const;
    bool isIdValueValid() const;

    QString getName() const;
    void setName(const QString &name);
    bool isNameValueSet() const;
    bool isNameValueValid() const;

    bool isSet() const override;
    bool isValid() const override;

private:
    void initializeModel();
    qint64 m_id;
    bool m_idIsSet;
    bool m_idIsValid;
    QString m_name;
    bool m_nameIsSet;
    bool m_nameIsValid;
};

} // namespace QtOpenAPI

Q_DECLARE_METATYPE(QtOpenAPI::Category)

#endif // CATEGORY_H
