| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229 |
- /*
- * Copyright 2009-2017 Alibaba Cloud All rights reserved.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- #include <alibabacloud/rds/model/DescribeDBInstanceAttributeResult.h>
- #include <json/json.h>
- using namespace AlibabaCloud::Rds;
- using namespace AlibabaCloud::Rds::Model;
- DescribeDBInstanceAttributeResult::DescribeDBInstanceAttributeResult() :
- ServiceResult()
- {}
- DescribeDBInstanceAttributeResult::DescribeDBInstanceAttributeResult(const std::string &payload) :
- ServiceResult()
- {
- parse(payload);
- }
- DescribeDBInstanceAttributeResult::~DescribeDBInstanceAttributeResult()
- {}
- void DescribeDBInstanceAttributeResult::parse(const std::string &payload)
- {
- Json::Reader reader;
- Json::Value value;
- reader.parse(payload, value);
- setRequestId(value["RequestId"].asString());
- auto allItemsNode = value["Items"]["DBInstanceAttribute"];
- for (auto valueItemsDBInstanceAttribute : allItemsNode)
- {
- DBInstanceAttribute itemsObject;
- if(!valueItemsDBInstanceAttribute["IPType"].isNull())
- itemsObject.iPType = valueItemsDBInstanceAttribute["IPType"].asString();
- if(!valueItemsDBInstanceAttribute["DBInstanceDiskUsed"].isNull())
- itemsObject.dBInstanceDiskUsed = valueItemsDBInstanceAttribute["DBInstanceDiskUsed"].asString();
- if(!valueItemsDBInstanceAttribute["GuardDBInstanceName"].isNull())
- itemsObject.guardDBInstanceName = valueItemsDBInstanceAttribute["GuardDBInstanceName"].asString();
- if(!valueItemsDBInstanceAttribute["CanTempUpgrade"].isNull())
- itemsObject.canTempUpgrade = valueItemsDBInstanceAttribute["CanTempUpgrade"].asString() == "true";
- if(!valueItemsDBInstanceAttribute["TempUpgradeTimeStart"].isNull())
- itemsObject.tempUpgradeTimeStart = valueItemsDBInstanceAttribute["TempUpgradeTimeStart"].asString();
- if(!valueItemsDBInstanceAttribute["TempUpgradeTimeEnd"].isNull())
- itemsObject.tempUpgradeTimeEnd = valueItemsDBInstanceAttribute["TempUpgradeTimeEnd"].asString();
- if(!valueItemsDBInstanceAttribute["TempUpgradeRecoveryTime"].isNull())
- itemsObject.tempUpgradeRecoveryTime = valueItemsDBInstanceAttribute["TempUpgradeRecoveryTime"].asString();
- if(!valueItemsDBInstanceAttribute["TempUpgradeRecoveryClass"].isNull())
- itemsObject.tempUpgradeRecoveryClass = valueItemsDBInstanceAttribute["TempUpgradeRecoveryClass"].asString();
- if(!valueItemsDBInstanceAttribute["TempUpgradeRecoveryCpu"].isNull())
- itemsObject.tempUpgradeRecoveryCpu = std::stoi(valueItemsDBInstanceAttribute["TempUpgradeRecoveryCpu"].asString());
- if(!valueItemsDBInstanceAttribute["TempUpgradeRecoveryMemory"].isNull())
- itemsObject.tempUpgradeRecoveryMemory = std::stoi(valueItemsDBInstanceAttribute["TempUpgradeRecoveryMemory"].asString());
- if(!valueItemsDBInstanceAttribute["TempUpgradeRecoveryMaxIOPS"].isNull())
- itemsObject.tempUpgradeRecoveryMaxIOPS = valueItemsDBInstanceAttribute["TempUpgradeRecoveryMaxIOPS"].asString();
- if(!valueItemsDBInstanceAttribute["TempUpgradeRecoveryMaxConnections"].isNull())
- itemsObject.tempUpgradeRecoveryMaxConnections = valueItemsDBInstanceAttribute["TempUpgradeRecoveryMaxConnections"].asString();
- if(!valueItemsDBInstanceAttribute["InsId"].isNull())
- itemsObject.insId = std::stoi(valueItemsDBInstanceAttribute["InsId"].asString());
- if(!valueItemsDBInstanceAttribute["DBInstanceId"].isNull())
- itemsObject.dBInstanceId = valueItemsDBInstanceAttribute["DBInstanceId"].asString();
- if(!valueItemsDBInstanceAttribute["PayType"].isNull())
- itemsObject.payType = valueItemsDBInstanceAttribute["PayType"].asString();
- if(!valueItemsDBInstanceAttribute["DBInstanceClassType"].isNull())
- itemsObject.dBInstanceClassType = valueItemsDBInstanceAttribute["DBInstanceClassType"].asString();
- if(!valueItemsDBInstanceAttribute["DBInstanceType"].isNull())
- itemsObject.dBInstanceType = valueItemsDBInstanceAttribute["DBInstanceType"].asString();
- if(!valueItemsDBInstanceAttribute["RegionId"].isNull())
- itemsObject.regionId = valueItemsDBInstanceAttribute["RegionId"].asString();
- if(!valueItemsDBInstanceAttribute["ConnectionString"].isNull())
- itemsObject.connectionString = valueItemsDBInstanceAttribute["ConnectionString"].asString();
- if(!valueItemsDBInstanceAttribute["Port"].isNull())
- itemsObject.port = valueItemsDBInstanceAttribute["Port"].asString();
- if(!valueItemsDBInstanceAttribute["Engine"].isNull())
- itemsObject.engine = valueItemsDBInstanceAttribute["Engine"].asString();
- if(!valueItemsDBInstanceAttribute["EngineVersion"].isNull())
- itemsObject.engineVersion = valueItemsDBInstanceAttribute["EngineVersion"].asString();
- if(!valueItemsDBInstanceAttribute["DBInstanceClass"].isNull())
- itemsObject.dBInstanceClass = valueItemsDBInstanceAttribute["DBInstanceClass"].asString();
- if(!valueItemsDBInstanceAttribute["DBInstanceMemory"].isNull())
- itemsObject.dBInstanceMemory = std::stol(valueItemsDBInstanceAttribute["DBInstanceMemory"].asString());
- if(!valueItemsDBInstanceAttribute["DBInstanceStorage"].isNull())
- itemsObject.dBInstanceStorage = std::stoi(valueItemsDBInstanceAttribute["DBInstanceStorage"].asString());
- if(!valueItemsDBInstanceAttribute["VpcCloudInstanceId"].isNull())
- itemsObject.vpcCloudInstanceId = valueItemsDBInstanceAttribute["VpcCloudInstanceId"].asString();
- if(!valueItemsDBInstanceAttribute["DBInstanceNetType"].isNull())
- itemsObject.dBInstanceNetType = valueItemsDBInstanceAttribute["DBInstanceNetType"].asString();
- if(!valueItemsDBInstanceAttribute["DBInstanceStatus"].isNull())
- itemsObject.dBInstanceStatus = valueItemsDBInstanceAttribute["DBInstanceStatus"].asString();
- if(!valueItemsDBInstanceAttribute["DBInstanceDescription"].isNull())
- itemsObject.dBInstanceDescription = valueItemsDBInstanceAttribute["DBInstanceDescription"].asString();
- if(!valueItemsDBInstanceAttribute["LockMode"].isNull())
- itemsObject.lockMode = valueItemsDBInstanceAttribute["LockMode"].asString();
- if(!valueItemsDBInstanceAttribute["LockReason"].isNull())
- itemsObject.lockReason = valueItemsDBInstanceAttribute["LockReason"].asString();
- if(!valueItemsDBInstanceAttribute["ReadDelayTime"].isNull())
- itemsObject.readDelayTime = valueItemsDBInstanceAttribute["ReadDelayTime"].asString();
- if(!valueItemsDBInstanceAttribute["DBMaxQuantity"].isNull())
- itemsObject.dBMaxQuantity = std::stoi(valueItemsDBInstanceAttribute["DBMaxQuantity"].asString());
- if(!valueItemsDBInstanceAttribute["AccountMaxQuantity"].isNull())
- itemsObject.accountMaxQuantity = std::stoi(valueItemsDBInstanceAttribute["AccountMaxQuantity"].asString());
- if(!valueItemsDBInstanceAttribute["CreationTime"].isNull())
- itemsObject.creationTime = valueItemsDBInstanceAttribute["CreationTime"].asString();
- if(!valueItemsDBInstanceAttribute["ExpireTime"].isNull())
- itemsObject.expireTime = valueItemsDBInstanceAttribute["ExpireTime"].asString();
- if(!valueItemsDBInstanceAttribute["MaintainTime"].isNull())
- itemsObject.maintainTime = valueItemsDBInstanceAttribute["MaintainTime"].asString();
- if(!valueItemsDBInstanceAttribute["AvailabilityValue"].isNull())
- itemsObject.availabilityValue = valueItemsDBInstanceAttribute["AvailabilityValue"].asString();
- if(!valueItemsDBInstanceAttribute["MaxIOPS"].isNull())
- itemsObject.maxIOPS = std::stoi(valueItemsDBInstanceAttribute["MaxIOPS"].asString());
- if(!valueItemsDBInstanceAttribute["MaxConnections"].isNull())
- itemsObject.maxConnections = std::stoi(valueItemsDBInstanceAttribute["MaxConnections"].asString());
- if(!valueItemsDBInstanceAttribute["MasterInstanceId"].isNull())
- itemsObject.masterInstanceId = valueItemsDBInstanceAttribute["MasterInstanceId"].asString();
- if(!valueItemsDBInstanceAttribute["DBInstanceCPU"].isNull())
- itemsObject.dBInstanceCPU = valueItemsDBInstanceAttribute["DBInstanceCPU"].asString();
- if(!valueItemsDBInstanceAttribute["IncrementSourceDBInstanceId"].isNull())
- itemsObject.incrementSourceDBInstanceId = valueItemsDBInstanceAttribute["IncrementSourceDBInstanceId"].asString();
- if(!valueItemsDBInstanceAttribute["GuardDBInstanceId"].isNull())
- itemsObject.guardDBInstanceId = valueItemsDBInstanceAttribute["GuardDBInstanceId"].asString();
- if(!valueItemsDBInstanceAttribute["ReplicateId"].isNull())
- itemsObject.replicateId = valueItemsDBInstanceAttribute["ReplicateId"].asString();
- if(!valueItemsDBInstanceAttribute["TempDBInstanceId"].isNull())
- itemsObject.tempDBInstanceId = valueItemsDBInstanceAttribute["TempDBInstanceId"].asString();
- if(!valueItemsDBInstanceAttribute["SecurityIPList"].isNull())
- itemsObject.securityIPList = valueItemsDBInstanceAttribute["SecurityIPList"].asString();
- if(!valueItemsDBInstanceAttribute["ZoneId"].isNull())
- itemsObject.zoneId = valueItemsDBInstanceAttribute["ZoneId"].asString();
- if(!valueItemsDBInstanceAttribute["InstanceNetworkType"].isNull())
- itemsObject.instanceNetworkType = valueItemsDBInstanceAttribute["InstanceNetworkType"].asString();
- if(!valueItemsDBInstanceAttribute["DBInstanceStorageType"].isNull())
- itemsObject.dBInstanceStorageType = valueItemsDBInstanceAttribute["DBInstanceStorageType"].asString();
- if(!valueItemsDBInstanceAttribute["AdvancedFeatures"].isNull())
- itemsObject.advancedFeatures = valueItemsDBInstanceAttribute["AdvancedFeatures"].asString();
- if(!valueItemsDBInstanceAttribute["Category"].isNull())
- itemsObject.category = valueItemsDBInstanceAttribute["Category"].asString();
- if(!valueItemsDBInstanceAttribute["AccountType"].isNull())
- itemsObject.accountType = valueItemsDBInstanceAttribute["AccountType"].asString();
- if(!valueItemsDBInstanceAttribute["SupportUpgradeAccountType"].isNull())
- itemsObject.supportUpgradeAccountType = valueItemsDBInstanceAttribute["SupportUpgradeAccountType"].asString();
- if(!valueItemsDBInstanceAttribute["SupportCreateSuperAccount"].isNull())
- itemsObject.supportCreateSuperAccount = valueItemsDBInstanceAttribute["SupportCreateSuperAccount"].asString();
- if(!valueItemsDBInstanceAttribute["VpcId"].isNull())
- itemsObject.vpcId = valueItemsDBInstanceAttribute["VpcId"].asString();
- if(!valueItemsDBInstanceAttribute["VSwitchId"].isNull())
- itemsObject.vSwitchId = valueItemsDBInstanceAttribute["VSwitchId"].asString();
- if(!valueItemsDBInstanceAttribute["ConnectionMode"].isNull())
- itemsObject.connectionMode = valueItemsDBInstanceAttribute["ConnectionMode"].asString();
- if(!valueItemsDBInstanceAttribute["CurrentKernelVersion"].isNull())
- itemsObject.currentKernelVersion = valueItemsDBInstanceAttribute["CurrentKernelVersion"].asString();
- if(!valueItemsDBInstanceAttribute["LatestKernelVersion"].isNull())
- itemsObject.latestKernelVersion = valueItemsDBInstanceAttribute["LatestKernelVersion"].asString();
- if(!valueItemsDBInstanceAttribute["ResourceGroupId"].isNull())
- itemsObject.resourceGroupId = valueItemsDBInstanceAttribute["ResourceGroupId"].asString();
- if(!valueItemsDBInstanceAttribute["ReadonlyInstanceSQLDelayedTime"].isNull())
- itemsObject.readonlyInstanceSQLDelayedTime = valueItemsDBInstanceAttribute["ReadonlyInstanceSQLDelayedTime"].asString();
- if(!valueItemsDBInstanceAttribute["SecurityIPMode"].isNull())
- itemsObject.securityIPMode = valueItemsDBInstanceAttribute["SecurityIPMode"].asString();
- if(!valueItemsDBInstanceAttribute["TimeZone"].isNull())
- itemsObject.timeZone = valueItemsDBInstanceAttribute["TimeZone"].asString();
- if(!valueItemsDBInstanceAttribute["Collation"].isNull())
- itemsObject.collation = valueItemsDBInstanceAttribute["Collation"].asString();
- if(!valueItemsDBInstanceAttribute["DispenseMode"].isNull())
- itemsObject.dispenseMode = valueItemsDBInstanceAttribute["DispenseMode"].asString();
- if(!valueItemsDBInstanceAttribute["MasterZone"].isNull())
- itemsObject.masterZone = valueItemsDBInstanceAttribute["MasterZone"].asString();
- if(!valueItemsDBInstanceAttribute["AutoUpgradeMinorVersion"].isNull())
- itemsObject.autoUpgradeMinorVersion = valueItemsDBInstanceAttribute["AutoUpgradeMinorVersion"].asString();
- if(!valueItemsDBInstanceAttribute["ProxyType"].isNull())
- itemsObject.proxyType = std::stoi(valueItemsDBInstanceAttribute["ProxyType"].asString());
- if(!valueItemsDBInstanceAttribute["ConsoleVersion"].isNull())
- itemsObject.consoleVersion = valueItemsDBInstanceAttribute["ConsoleVersion"].asString();
- if(!valueItemsDBInstanceAttribute["MultipleTempUpgrade"].isNull())
- itemsObject.multipleTempUpgrade = valueItemsDBInstanceAttribute["MultipleTempUpgrade"].asString() == "true";
- if(!valueItemsDBInstanceAttribute["OriginConfiguration"].isNull())
- itemsObject.originConfiguration = valueItemsDBInstanceAttribute["OriginConfiguration"].asString();
- if(!valueItemsDBInstanceAttribute["DedicatedHostGroupId"].isNull())
- itemsObject.dedicatedHostGroupId = valueItemsDBInstanceAttribute["DedicatedHostGroupId"].asString();
- if(!valueItemsDBInstanceAttribute["SuperPermissionMode"].isNull())
- itemsObject.superPermissionMode = valueItemsDBInstanceAttribute["SuperPermissionMode"].asString();
- auto allSlaveZonesNode = allItemsNode["SlaveZones"]["SlaveZone"];
- for (auto allItemsNodeSlaveZonesSlaveZone : allSlaveZonesNode)
- {
- DBInstanceAttribute::SlaveZone slaveZonesObject;
- if(!allItemsNodeSlaveZonesSlaveZone["ZoneId"].isNull())
- slaveZonesObject.zoneId = allItemsNodeSlaveZonesSlaveZone["ZoneId"].asString();
- itemsObject.slaveZones.push_back(slaveZonesObject);
- }
- auto allReadOnlyDBInstanceIdsNode = allItemsNode["ReadOnlyDBInstanceIds"]["ReadOnlyDBInstanceId"];
- for (auto allItemsNodeReadOnlyDBInstanceIdsReadOnlyDBInstanceId : allReadOnlyDBInstanceIdsNode)
- {
- DBInstanceAttribute::ReadOnlyDBInstanceId readOnlyDBInstanceIdsObject;
- if(!allItemsNodeReadOnlyDBInstanceIdsReadOnlyDBInstanceId["DBInstanceId"].isNull())
- readOnlyDBInstanceIdsObject.dBInstanceId = allItemsNodeReadOnlyDBInstanceIdsReadOnlyDBInstanceId["DBInstanceId"].asString();
- itemsObject.readOnlyDBInstanceIds.push_back(readOnlyDBInstanceIdsObject);
- }
- auto extraNode = value["Extra"];
- if(!extraNode["ReplicaGroupID"].isNull())
- itemsObject.extra.replicaGroupID = extraNode["ReplicaGroupID"].asString();
- if(!extraNode["ReplicaGroupStatus"].isNull())
- itemsObject.extra.replicaGroupStatus = extraNode["ReplicaGroupStatus"].asString();
- if(!extraNode["ActiveReplicaDBInstanceID"].isNull())
- itemsObject.extra.activeReplicaDBInstanceID = extraNode["ActiveReplicaDBInstanceID"].asString();
- auto allDBInstanceId = extraNode["DBInstanceId"]["DBInstanceId"];
- for (auto value : allDBInstanceId)
- itemsObject.extra.dBInstanceId.push_back(value.asString());
- items_.push_back(itemsObject);
- }
- }
- std::vector<DescribeDBInstanceAttributeResult::DBInstanceAttribute> DescribeDBInstanceAttributeResult::getItems()const
- {
- return items_;
- }
|