Hhuaweicloud
f234d255创建于 2023年8月2日历史提交


#include "huaweicloud/rds/v3/model/GetOffSiteBackupPolicy.h"

namespace HuaweiCloud {
namespace Sdk {
namespace Rds {
namespace V3 {
namespace Model {




GetOffSiteBackupPolicy::GetOffSiteBackupPolicy()
{
    backupType_ = "";
    backupTypeIsSet_ = false;
    keepDays_ = 0;
    keepDaysIsSet_ = false;
    destinationRegion_ = "";
    destinationRegionIsSet_ = false;
    destinationProjectId_ = "";
    destinationProjectIdIsSet_ = false;
}

GetOffSiteBackupPolicy::~GetOffSiteBackupPolicy() = default;

void GetOffSiteBackupPolicy::validate()
{
}

web::json::value GetOffSiteBackupPolicy::toJson() const
{
    web::json::value val = web::json::value::object();

    if(backupTypeIsSet_) {
        val[utility::conversions::to_string_t("backup_type")] = ModelBase::toJson(backupType_);
    }
    if(keepDaysIsSet_) {
        val[utility::conversions::to_string_t("keep_days")] = ModelBase::toJson(keepDays_);
    }
    if(destinationRegionIsSet_) {
        val[utility::conversions::to_string_t("destination_region")] = ModelBase::toJson(destinationRegion_);
    }
    if(destinationProjectIdIsSet_) {
        val[utility::conversions::to_string_t("destination_project_id")] = ModelBase::toJson(destinationProjectId_);
    }

    return val;
}

bool GetOffSiteBackupPolicy::fromJson(const web::json::value& val)
{
    bool ok = true;
    
    if(val.has_field(utility::conversions::to_string_t("backup_type"))) {
        const web::json::value& fieldValue = val.at(utility::conversions::to_string_t("backup_type"));
        if(!fieldValue.is_null())
        {
            std::string refVal;
            ok &= ModelBase::fromJson(fieldValue, refVal);
            setBackupType(refVal);
        }
    }
    if(val.has_field(utility::conversions::to_string_t("keep_days"))) {
        const web::json::value& fieldValue = val.at(utility::conversions::to_string_t("keep_days"));
        if(!fieldValue.is_null())
        {
            int32_t refVal;
            ok &= ModelBase::fromJson(fieldValue, refVal);
            setKeepDays(refVal);
        }
    }
    if(val.has_field(utility::conversions::to_string_t("destination_region"))) {
        const web::json::value& fieldValue = val.at(utility::conversions::to_string_t("destination_region"));
        if(!fieldValue.is_null())
        {
            std::string refVal;
            ok &= ModelBase::fromJson(fieldValue, refVal);
            setDestinationRegion(refVal);
        }
    }
    if(val.has_field(utility::conversions::to_string_t("destination_project_id"))) {
        const web::json::value& fieldValue = val.at(utility::conversions::to_string_t("destination_project_id"));
        if(!fieldValue.is_null())
        {
            std::string refVal;
            ok &= ModelBase::fromJson(fieldValue, refVal);
            setDestinationProjectId(refVal);
        }
    }
    return ok;
}

std::string GetOffSiteBackupPolicy::getBackupType() const
{
    return backupType_;
}

void GetOffSiteBackupPolicy::setBackupType(const std::string& value)
{
    backupType_ = value;
    backupTypeIsSet_ = true;
}

bool GetOffSiteBackupPolicy::backupTypeIsSet() const
{
    return backupTypeIsSet_;
}

void GetOffSiteBackupPolicy::unsetbackupType()
{
    backupTypeIsSet_ = false;
}

int32_t GetOffSiteBackupPolicy::getKeepDays() const
{
    return keepDays_;
}

void GetOffSiteBackupPolicy::setKeepDays(int32_t value)
{
    keepDays_ = value;
    keepDaysIsSet_ = true;
}

bool GetOffSiteBackupPolicy::keepDaysIsSet() const
{
    return keepDaysIsSet_;
}

void GetOffSiteBackupPolicy::unsetkeepDays()
{
    keepDaysIsSet_ = false;
}

std::string GetOffSiteBackupPolicy::getDestinationRegion() const
{
    return destinationRegion_;
}

void GetOffSiteBackupPolicy::setDestinationRegion(const std::string& value)
{
    destinationRegion_ = value;
    destinationRegionIsSet_ = true;
}

bool GetOffSiteBackupPolicy::destinationRegionIsSet() const
{
    return destinationRegionIsSet_;
}

void GetOffSiteBackupPolicy::unsetdestinationRegion()
{
    destinationRegionIsSet_ = false;
}

std::string GetOffSiteBackupPolicy::getDestinationProjectId() const
{
    return destinationProjectId_;
}

void GetOffSiteBackupPolicy::setDestinationProjectId(const std::string& value)
{
    destinationProjectId_ = value;
    destinationProjectIdIsSet_ = true;
}

bool GetOffSiteBackupPolicy::destinationProjectIdIsSet() const
{
    return destinationProjectIdIsSet_;
}

void GetOffSiteBackupPolicy::unsetdestinationProjectId()
{
    destinationProjectIdIsSet_ = false;
}

}
}
}
}
}