ソースを参照

Support autoPtovisioning whth DiskConfigs.

sdk-team 5 年 前
コミット
032ffdc520
25 ファイル変更339 行追加117 行削除
  1. 3 0
      CHANGELOG
  2. 7 0
      ecs/include/alibabacloud/ecs/model/CreateAutoProvisioningGroupRequest.h
  3. 6 0
      ecs/include/alibabacloud/ecs/model/CreateSnapshotRequest.h
  4. 3 0
      ecs/include/alibabacloud/ecs/model/DescribeCapacityReservationsRequest.h
  5. 3 2
      ecs/include/alibabacloud/ecs/model/DescribeCapacityReservationsResult.h
  6. 3 0
      ecs/include/alibabacloud/ecs/model/DescribeElasticityAssurancesRequest.h
  7. 1 0
      ecs/include/alibabacloud/ecs/model/DescribeSnapshotLinksResult.h
  8. 30 24
      ecs/include/alibabacloud/ecs/model/DescribeSnapshotsRequest.h
  9. 4 0
      ecs/include/alibabacloud/ecs/model/DescribeSnapshotsResult.h
  10. 6 0
      ecs/include/alibabacloud/ecs/model/JoinSecurityGroupRequest.h
  11. 6 0
      ecs/include/alibabacloud/ecs/model/LeaveSecurityGroupRequest.h
  12. 3 0
      ecs/include/alibabacloud/ecs/model/ModifyImageAttributeRequest.h
  13. 3 0
      ecs/include/alibabacloud/ecs/model/ModifySnapshotAttributeRequest.h
  14. 23 0
      ecs/src/model/CreateAutoProvisioningGroupRequest.cc
  15. 22 0
      ecs/src/model/CreateSnapshotRequest.cc
  16. 11 0
      ecs/src/model/DescribeCapacityReservationsRequest.cc
  17. 2 0
      ecs/src/model/DescribeCapacityReservationsResult.cc
  18. 11 0
      ecs/src/model/DescribeElasticityAssurancesRequest.cc
  19. 2 0
      ecs/src/model/DescribeSnapshotLinksResult.cc
  20. 113 91
      ecs/src/model/DescribeSnapshotsRequest.cc
  21. 11 0
      ecs/src/model/DescribeSnapshotsResult.cc
  22. 22 0
      ecs/src/model/JoinSecurityGroupRequest.cc
  23. 22 0
      ecs/src/model/LeaveSecurityGroupRequest.cc
  24. 11 0
      ecs/src/model/ModifyImageAttributeRequest.cc
  25. 11 0
      ecs/src/model/ModifySnapshotAttributeRequest.cc

+ 3 - 0
CHANGELOG

@@ -1,3 +1,6 @@
+2020-11-30 Version: patch
+- Support autoPtovisioning whth DiskConfigs.
+
 2020-11-30 Version: patch
 - Update OpenDcdnService.
 

+ 7 - 0
ecs/include/alibabacloud/ecs/model/CreateAutoProvisioningGroupRequest.h

@@ -35,6 +35,7 @@ namespace AlibabaCloud
 				{
 					int size;
 					std::string category;
+					std::string performanceLevel;
 				};
 				struct SystemDiskConfig
 				{
@@ -70,6 +71,8 @@ namespace AlibabaCloud
 				void setLaunchConfigurationSystemDiskCategory(const std::string& launchConfigurationSystemDiskCategory);
 				std::string getAutoProvisioningGroupType()const;
 				void setAutoProvisioningGroupType(const std::string& autoProvisioningGroupType);
+				std::string getLaunchConfigurationSystemDiskPerformanceLevel()const;
+				void setLaunchConfigurationSystemDiskPerformanceLevel(const std::string& launchConfigurationSystemDiskPerformanceLevel);
 				std::string getResourceGroupId()const;
 				void setResourceGroupId(const std::string& resourceGroupId);
 				std::string getLaunchConfigurationImageId()const;
@@ -110,6 +113,8 @@ namespace AlibabaCloud
 				void setTerminateInstancesWithExpiration(bool terminateInstancesWithExpiration);
 				std::string getLaunchConfigurationUserData()const;
 				void setLaunchConfigurationUserData(const std::string& launchConfigurationUserData);
+				std::string getLaunchConfigurationCreditSpecification()const;
+				void setLaunchConfigurationCreditSpecification(const std::string& launchConfigurationCreditSpecification);
 				std::string getLaunchConfigurationInstanceName()const;
 				void setLaunchConfigurationInstanceName(const std::string& launchConfigurationInstanceName);
 				std::string getLaunchConfigurationInstanceDescription()const;
@@ -166,6 +171,7 @@ namespace AlibabaCloud
 				long resourceOwnerId_;
 				std::string launchConfigurationSystemDiskCategory_;
 				std::string autoProvisioningGroupType_;
+				std::string launchConfigurationSystemDiskPerformanceLevel_;
 				std::string resourceGroupId_;
 				std::string launchConfigurationImageId_;
 				std::string launchConfigurationResourceGroupId_;
@@ -186,6 +192,7 @@ namespace AlibabaCloud
 				std::string description_;
 				bool terminateInstancesWithExpiration_;
 				std::string launchConfigurationUserData_;
+				std::string launchConfigurationCreditSpecification_;
 				std::string launchConfigurationInstanceName_;
 				std::string launchConfigurationInstanceDescription_;
 				std::string spotAllocationStrategy_;

+ 6 - 0
ecs/include/alibabacloud/ecs/model/CreateSnapshotRequest.h

@@ -45,12 +45,16 @@ namespace AlibabaCloud
 				void setResourceOwnerId(long resourceOwnerId);
 				std::string getClientToken()const;
 				void setClientToken(const std::string& clientToken);
+				bool getInstantAccess()const;
+				void setInstantAccess(bool instantAccess);
 				std::string getDescription()const;
 				void setDescription(const std::string& description);
 				std::string getSnapshotName()const;
 				void setSnapshotName(const std::string& snapshotName);
 				std::string getResourceGroupId()const;
 				void setResourceGroupId(const std::string& resourceGroupId);
+				int getInstantAccessRetentionDays()const;
+				void setInstantAccessRetentionDays(int instantAccessRetentionDays);
 				std::string getDiskId()const;
 				void setDiskId(const std::string& diskId);
 				std::vector<Tag> getTag()const;
@@ -69,9 +73,11 @@ namespace AlibabaCloud
             private:
 				long resourceOwnerId_;
 				std::string clientToken_;
+				bool instantAccess_;
 				std::string description_;
 				std::string snapshotName_;
 				std::string resourceGroupId_;
+				int instantAccessRetentionDays_;
 				std::string diskId_;
 				std::vector<Tag> tag_;
 				std::string resourceOwnerAccount_;

+ 3 - 0
ecs/include/alibabacloud/ecs/model/DescribeCapacityReservationsRequest.h

@@ -61,6 +61,8 @@ namespace AlibabaCloud
 				void setZoneId(const std::string& zoneId);
 				std::string getPackageType()const;
 				void setPackageType(const std::string& packageType);
+				std::string getStatus()const;
+				void setStatus(const std::string& status);
 
             private:
 				long resourceOwnerId_;
@@ -76,6 +78,7 @@ namespace AlibabaCloud
 				int maxResults_;
 				std::string zoneId_;
 				std::string packageType_;
+				std::string status_;
 
 			};
 		}

+ 3 - 2
ecs/include/alibabacloud/ecs/model/DescribeCapacityReservationsResult.h

@@ -44,15 +44,16 @@ namespace AlibabaCloud
 					std::string status;
 					std::string description;
 					std::string endTime;
-					std::string endTimeType;
 					std::string platform;
 					std::string privatePoolOptionsName;
 					std::string instanceChargeType;
 					std::string startTime;
-					std::string regionId;
 					std::string privatePoolOptionsMatchCriteria;
+					std::string timeSlot;
 					std::vector<CapacityReservationItem::AllocatedResource> allocatedResources;
 					std::string privatePoolOptionsId;
+					std::string endTimeType;
+					std::string regionId;
 				};
 
 

+ 3 - 0
ecs/include/alibabacloud/ecs/model/DescribeElasticityAssurancesRequest.h

@@ -61,6 +61,8 @@ namespace AlibabaCloud
 				void setZoneId(const std::string& zoneId);
 				std::string getPackageType()const;
 				void setPackageType(const std::string& packageType);
+				std::string getStatus()const;
+				void setStatus(const std::string& status);
 
             private:
 				long resourceOwnerId_;
@@ -76,6 +78,7 @@ namespace AlibabaCloud
 				int maxResults_;
 				std::string zoneId_;
 				std::string packageType_;
+				std::string status_;
 
 			};
 		}

+ 1 - 0
ecs/include/alibabacloud/ecs/model/DescribeSnapshotLinksResult.h

@@ -35,6 +35,7 @@ namespace AlibabaCloud
 				struct SnapshotLink
 				{
 					std::string instanceName;
+					bool instantAccess;
 					int totalCount;
 					std::string category;
 					int sourceDiskSize;

+ 30 - 24
ecs/include/alibabacloud/ecs/model/DescribeSnapshotsRequest.h

@@ -51,38 +51,44 @@ namespace AlibabaCloud
 				void setUsage(const std::string& usage);
 				std::string getSnapshotLinkId()const;
 				void setSnapshotLinkId(const std::string& snapshotLinkId);
-				std::string getSnapshotName()const;
-				void setSnapshotName(const std::string& snapshotName);
-				int getPageNumber()const;
-				void setPageNumber(int pageNumber);
 				std::string getResourceGroupId()const;
 				void setResourceGroupId(const std::string& resourceGroupId);
 				std::string getFilter1Key()const;
 				void setFilter1Key(const std::string& filter1Key);
+				std::vector<Tag> getTag()const;
+				void setTag(const std::vector<Tag>& tag);
+				bool getDryRun()const;
+				void setDryRun(bool dryRun);
+				std::string getFilter1Value()const;
+				void setFilter1Value(const std::string& filter1Value);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getInstanceId()const;
+				void setInstanceId(const std::string& instanceId);
+				int getMaxResults()const;
+				void setMaxResults(int maxResults);
+				std::string getStatus()const;
+				void setStatus(const std::string& status);
+				std::string getSnapshotName()const;
+				void setSnapshotName(const std::string& snapshotName);
+				int getPageNumber()const;
+				void setPageNumber(int pageNumber);
 				std::string getRegionId()const;
 				void setRegionId(const std::string& regionId);
+				std::string getNextToken()const;
+				void setNextToken(const std::string& nextToken);
 				int getPageSize()const;
 				void setPageSize(int pageSize);
 				std::string getDiskId()const;
 				void setDiskId(const std::string& diskId);
-				std::vector<Tag> getTag()const;
-				void setTag(const std::vector<Tag>& tag);
-				bool getDryRun()const;
-				void setDryRun(bool dryRun);
 				std::string getResourceOwnerAccount()const;
 				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
 				std::string getOwnerAccount()const;
 				void setOwnerAccount(const std::string& ownerAccount);
 				std::string getSourceDiskType()const;
 				void setSourceDiskType(const std::string& sourceDiskType);
-				std::string getFilter1Value()const;
-				void setFilter1Value(const std::string& filter1Value);
 				std::string getFilter2Key()const;
 				void setFilter2Key(const std::string& filter2Key);
-				long getOwnerId()const;
-				void setOwnerId(long ownerId);
-				std::string getInstanceId()const;
-				void setInstanceId(const std::string& instanceId);
 				bool getEncrypted()const;
 				void setEncrypted(bool encrypted);
 				std::string getSnapshotType()const;
@@ -91,8 +97,6 @@ namespace AlibabaCloud
 				void setKMSKeyId(const std::string& kMSKeyId);
 				std::string getCategory()const;
 				void setCategory(const std::string& category);
-				std::string getStatus()const;
-				void setStatus(const std::string& status);
 
             private:
 				long resourceOwnerId_;
@@ -100,27 +104,29 @@ namespace AlibabaCloud
 				std::string snapshotIds_;
 				std::string usage_;
 				std::string snapshotLinkId_;
-				std::string snapshotName_;
-				int pageNumber_;
 				std::string resourceGroupId_;
 				std::string filter1Key_;
+				std::vector<Tag> tag_;
+				bool dryRun_;
+				std::string filter1Value_;
+				long ownerId_;
+				std::string instanceId_;
+				int maxResults_;
+				std::string status_;
+				std::string snapshotName_;
+				int pageNumber_;
 				std::string regionId_;
+				std::string nextToken_;
 				int pageSize_;
 				std::string diskId_;
-				std::vector<Tag> tag_;
-				bool dryRun_;
 				std::string resourceOwnerAccount_;
 				std::string ownerAccount_;
 				std::string sourceDiskType_;
-				std::string filter1Value_;
 				std::string filter2Key_;
-				long ownerId_;
-				std::string instanceId_;
 				bool encrypted_;
 				std::string snapshotType_;
 				std::string kMSKeyId_;
 				std::string category_;
-				std::string status_;
 
 			};
 		}

+ 4 - 0
ecs/include/alibabacloud/ecs/model/DescribeSnapshotsResult.h

@@ -40,6 +40,7 @@ namespace AlibabaCloud
 						std::string tagValue;
 					};
 					std::string status;
+					bool instantAccess;
 					std::string progress;
 					std::string usage;
 					std::string description;
@@ -50,6 +51,7 @@ namespace AlibabaCloud
 					bool encrypted;
 					int retentionDays;
 					std::string snapshotName;
+					int instantAccessRetentionDays;
 					std::string sourceDiskId;
 					std::string sourceStorageType;
 					std::string snapshotId;
@@ -69,6 +71,7 @@ namespace AlibabaCloud
 				~DescribeSnapshotsResult();
 				int getTotalCount()const;
 				int getPageSize()const;
+				std::string getNextToken()const;
 				int getPageNumber()const;
 				std::vector<Snapshot> getSnapshots()const;
 
@@ -77,6 +80,7 @@ namespace AlibabaCloud
 			private:
 				int totalCount_;
 				int pageSize_;
+				std::string nextToken_;
 				int pageNumber_;
 				std::vector<Snapshot> snapshots_;
 

+ 6 - 0
ecs/include/alibabacloud/ecs/model/JoinSecurityGroupRequest.h

@@ -39,6 +39,8 @@ namespace AlibabaCloud
 				void setResourceOwnerId(long resourceOwnerId);
 				std::string getSecurityGroupId()const;
 				void setSecurityGroupId(const std::string& securityGroupId);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
 				std::string getResourceOwnerAccount()const;
 				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
 				std::string getOwnerAccount()const;
@@ -47,14 +49,18 @@ namespace AlibabaCloud
 				void setOwnerId(long ownerId);
 				std::string getInstanceId()const;
 				void setInstanceId(const std::string& instanceId);
+				std::string getNetworkInterfaceId()const;
+				void setNetworkInterfaceId(const std::string& networkInterfaceId);
 
             private:
 				long resourceOwnerId_;
 				std::string securityGroupId_;
+				std::string regionId_;
 				std::string resourceOwnerAccount_;
 				std::string ownerAccount_;
 				long ownerId_;
 				std::string instanceId_;
+				std::string networkInterfaceId_;
 
 			};
 		}

+ 6 - 0
ecs/include/alibabacloud/ecs/model/LeaveSecurityGroupRequest.h

@@ -39,6 +39,8 @@ namespace AlibabaCloud
 				void setResourceOwnerId(long resourceOwnerId);
 				std::string getSecurityGroupId()const;
 				void setSecurityGroupId(const std::string& securityGroupId);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
 				std::string getResourceOwnerAccount()const;
 				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
 				std::string getOwnerAccount()const;
@@ -47,14 +49,18 @@ namespace AlibabaCloud
 				void setOwnerId(long ownerId);
 				std::string getInstanceId()const;
 				void setInstanceId(const std::string& instanceId);
+				std::string getNetworkInterfaceId()const;
+				void setNetworkInterfaceId(const std::string& networkInterfaceId);
 
             private:
 				long resourceOwnerId_;
 				std::string securityGroupId_;
+				std::string regionId_;
 				std::string resourceOwnerAccount_;
 				std::string ownerAccount_;
 				long ownerId_;
 				std::string instanceId_;
+				std::string networkInterfaceId_;
 
 			};
 		}

+ 3 - 0
ecs/include/alibabacloud/ecs/model/ModifyImageAttributeRequest.h

@@ -47,6 +47,8 @@ namespace AlibabaCloud
 				void setRegionId(const std::string& regionId);
 				std::string getImageName()const;
 				void setImageName(const std::string& imageName);
+				std::string getLicenseType()const;
+				void setLicenseType(const std::string& licenseType);
 				std::string getResourceOwnerAccount()const;
 				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
 				std::string getOwnerAccount()const;
@@ -65,6 +67,7 @@ namespace AlibabaCloud
 				std::string bootMode_;
 				std::string regionId_;
 				std::string imageName_;
+				std::string licenseType_;
 				std::string resourceOwnerAccount_;
 				std::string ownerAccount_;
 				long ownerId_;

+ 3 - 0
ecs/include/alibabacloud/ecs/model/ModifySnapshotAttributeRequest.h

@@ -49,6 +49,8 @@ namespace AlibabaCloud
 				void setOwnerAccount(const std::string& ownerAccount);
 				long getOwnerId()const;
 				void setOwnerId(long ownerId);
+				bool getDisableInstantAccess()const;
+				void setDisableInstantAccess(bool disableInstantAccess);
 
             private:
 				long resourceOwnerId_;
@@ -58,6 +60,7 @@ namespace AlibabaCloud
 				std::string resourceOwnerAccount_;
 				std::string ownerAccount_;
 				long ownerId_;
+				bool disableInstantAccess_;
 
 			};
 		}

+ 23 - 0
ecs/src/model/CreateAutoProvisioningGroupRequest.cc

@@ -40,6 +40,7 @@ void CreateAutoProvisioningGroupRequest::setLaunchConfigurationDataDisk(const st
 		std::string launchConfigurationDataDiskObjStr = "LaunchConfiguration.DataDisk." + std::to_string(dep1 + 1);
 		setParameter(launchConfigurationDataDiskObjStr + ".Size", std::to_string(launchConfigurationDataDiskObj.size));
 		setParameter(launchConfigurationDataDiskObjStr + ".Category", launchConfigurationDataDiskObj.category);
+		setParameter(launchConfigurationDataDiskObjStr + ".PerformanceLevel", launchConfigurationDataDiskObj.performanceLevel);
 	}
 }
 
@@ -76,6 +77,17 @@ void CreateAutoProvisioningGroupRequest::setAutoProvisioningGroupType(const std:
 	setParameter("AutoProvisioningGroupType", autoProvisioningGroupType);
 }
 
+std::string CreateAutoProvisioningGroupRequest::getLaunchConfigurationSystemDiskPerformanceLevel()const
+{
+	return launchConfigurationSystemDiskPerformanceLevel_;
+}
+
+void CreateAutoProvisioningGroupRequest::setLaunchConfigurationSystemDiskPerformanceLevel(const std::string& launchConfigurationSystemDiskPerformanceLevel)
+{
+	launchConfigurationSystemDiskPerformanceLevel_ = launchConfigurationSystemDiskPerformanceLevel;
+	setParameter("LaunchConfigurationSystemDiskPerformanceLevel", launchConfigurationSystemDiskPerformanceLevel);
+}
+
 std::string CreateAutoProvisioningGroupRequest::getResourceGroupId()const
 {
 	return resourceGroupId_;
@@ -304,6 +316,17 @@ void CreateAutoProvisioningGroupRequest::setLaunchConfigurationUserData(const st
 	setParameter("LaunchConfigurationUserData", launchConfigurationUserData);
 }
 
+std::string CreateAutoProvisioningGroupRequest::getLaunchConfigurationCreditSpecification()const
+{
+	return launchConfigurationCreditSpecification_;
+}
+
+void CreateAutoProvisioningGroupRequest::setLaunchConfigurationCreditSpecification(const std::string& launchConfigurationCreditSpecification)
+{
+	launchConfigurationCreditSpecification_ = launchConfigurationCreditSpecification;
+	setParameter("LaunchConfigurationCreditSpecification", launchConfigurationCreditSpecification);
+}
+
 std::string CreateAutoProvisioningGroupRequest::getLaunchConfigurationInstanceName()const
 {
 	return launchConfigurationInstanceName_;

+ 22 - 0
ecs/src/model/CreateSnapshotRequest.cc

@@ -49,6 +49,17 @@ void CreateSnapshotRequest::setClientToken(const std::string& clientToken)
 	setParameter("ClientToken", clientToken);
 }
 
+bool CreateSnapshotRequest::getInstantAccess()const
+{
+	return instantAccess_;
+}
+
+void CreateSnapshotRequest::setInstantAccess(bool instantAccess)
+{
+	instantAccess_ = instantAccess;
+	setParameter("InstantAccess", instantAccess ? "true" : "false");
+}
+
 std::string CreateSnapshotRequest::getDescription()const
 {
 	return description_;
@@ -82,6 +93,17 @@ void CreateSnapshotRequest::setResourceGroupId(const std::string& resourceGroupI
 	setParameter("ResourceGroupId", resourceGroupId);
 }
 
+int CreateSnapshotRequest::getInstantAccessRetentionDays()const
+{
+	return instantAccessRetentionDays_;
+}
+
+void CreateSnapshotRequest::setInstantAccessRetentionDays(int instantAccessRetentionDays)
+{
+	instantAccessRetentionDays_ = instantAccessRetentionDays;
+	setParameter("InstantAccessRetentionDays", std::to_string(instantAccessRetentionDays));
+}
+
 std::string CreateSnapshotRequest::getDiskId()const
 {
 	return diskId_;

+ 11 - 0
ecs/src/model/DescribeCapacityReservationsRequest.cc

@@ -170,3 +170,14 @@ void DescribeCapacityReservationsRequest::setPackageType(const std::string& pack
 	setParameter("PackageType", packageType);
 }
 
+std::string DescribeCapacityReservationsRequest::getStatus()const
+{
+	return status_;
+}
+
+void DescribeCapacityReservationsRequest::setStatus(const std::string& status)
+{
+	status_ = status;
+	setParameter("Status", status);
+}
+

+ 2 - 0
ecs/src/model/DescribeCapacityReservationsResult.cc

@@ -65,6 +65,8 @@ void DescribeCapacityReservationsResult::parse(const std::string &payload)
 			capacityReservationSetObject.instanceChargeType = valueCapacityReservationSetCapacityReservationItem["InstanceChargeType"].asString();
 		if(!valueCapacityReservationSetCapacityReservationItem["Platform"].isNull())
 			capacityReservationSetObject.platform = valueCapacityReservationSetCapacityReservationItem["Platform"].asString();
+		if(!valueCapacityReservationSetCapacityReservationItem["TimeSlot"].isNull())
+			capacityReservationSetObject.timeSlot = valueCapacityReservationSetCapacityReservationItem["TimeSlot"].asString();
 		auto allAllocatedResourcesNode = valueCapacityReservationSetCapacityReservationItem["AllocatedResources"]["AllocatedResource"];
 		for (auto valueCapacityReservationSetCapacityReservationItemAllocatedResourcesAllocatedResource : allAllocatedResourcesNode)
 		{

+ 11 - 0
ecs/src/model/DescribeElasticityAssurancesRequest.cc

@@ -170,3 +170,14 @@ void DescribeElasticityAssurancesRequest::setPackageType(const std::string& pack
 	setParameter("PackageType", packageType);
 }
 
+std::string DescribeElasticityAssurancesRequest::getStatus()const
+{
+	return status_;
+}
+
+void DescribeElasticityAssurancesRequest::setStatus(const std::string& status)
+{
+	status_ = status;
+	setParameter("Status", status);
+}
+

+ 2 - 0
ecs/src/model/DescribeSnapshotLinksResult.cc

@@ -61,6 +61,8 @@ void DescribeSnapshotLinksResult::parse(const std::string &payload)
 			snapshotLinksObject.sourceDiskType = valueSnapshotLinksSnapshotLink["SourceDiskType"].asString();
 		if(!valueSnapshotLinksSnapshotLink["Category"].isNull())
 			snapshotLinksObject.category = valueSnapshotLinksSnapshotLink["Category"].asString();
+		if(!valueSnapshotLinksSnapshotLink["InstantAccess"].isNull())
+			snapshotLinksObject.instantAccess = valueSnapshotLinksSnapshotLink["InstantAccess"].asString() == "true";
 		if(!valueSnapshotLinksSnapshotLink["TotalSize"].isNull())
 			snapshotLinksObject.totalSize = std::stol(valueSnapshotLinksSnapshotLink["TotalSize"].asString());
 		if(!valueSnapshotLinksSnapshotLink["TotalCount"].isNull())

+ 113 - 91
ecs/src/model/DescribeSnapshotsRequest.cc

@@ -82,48 +82,130 @@ void DescribeSnapshotsRequest::setSnapshotLinkId(const std::string& snapshotLink
 	setParameter("SnapshotLinkId", snapshotLinkId);
 }
 
-std::string DescribeSnapshotsRequest::getSnapshotName()const
+std::string DescribeSnapshotsRequest::getResourceGroupId()const
 {
-	return snapshotName_;
+	return resourceGroupId_;
 }
 
-void DescribeSnapshotsRequest::setSnapshotName(const std::string& snapshotName)
+void DescribeSnapshotsRequest::setResourceGroupId(const std::string& resourceGroupId)
 {
-	snapshotName_ = snapshotName;
-	setParameter("SnapshotName", snapshotName);
+	resourceGroupId_ = resourceGroupId;
+	setParameter("ResourceGroupId", resourceGroupId);
 }
 
-int DescribeSnapshotsRequest::getPageNumber()const
+std::string DescribeSnapshotsRequest::getFilter1Key()const
 {
-	return pageNumber_;
+	return filter1Key_;
 }
 
-void DescribeSnapshotsRequest::setPageNumber(int pageNumber)
+void DescribeSnapshotsRequest::setFilter1Key(const std::string& filter1Key)
 {
-	pageNumber_ = pageNumber;
-	setParameter("PageNumber", std::to_string(pageNumber));
+	filter1Key_ = filter1Key;
+	setParameter("Filter1Key", filter1Key);
 }
 
-std::string DescribeSnapshotsRequest::getResourceGroupId()const
+std::vector<DescribeSnapshotsRequest::Tag> DescribeSnapshotsRequest::getTag()const
 {
-	return resourceGroupId_;
+	return tag_;
 }
 
-void DescribeSnapshotsRequest::setResourceGroupId(const std::string& resourceGroupId)
+void DescribeSnapshotsRequest::setTag(const std::vector<Tag>& tag)
 {
-	resourceGroupId_ = resourceGroupId;
-	setParameter("ResourceGroupId", resourceGroupId);
+	tag_ = tag;
+	for(int dep1 = 0; dep1!= tag.size(); dep1++) {
+		auto tagObj = tag.at(dep1);
+		std::string tagObjStr = "Tag." + std::to_string(dep1 + 1);
+		setParameter(tagObjStr + ".Value", tagObj.value);
+		setParameter(tagObjStr + ".Key", tagObj.key);
+	}
 }
 
-std::string DescribeSnapshotsRequest::getFilter1Key()const
+bool DescribeSnapshotsRequest::getDryRun()const
 {
-	return filter1Key_;
+	return dryRun_;
 }
 
-void DescribeSnapshotsRequest::setFilter1Key(const std::string& filter1Key)
+void DescribeSnapshotsRequest::setDryRun(bool dryRun)
 {
-	filter1Key_ = filter1Key;
-	setParameter("Filter1Key", filter1Key);
+	dryRun_ = dryRun;
+	setParameter("DryRun", dryRun ? "true" : "false");
+}
+
+std::string DescribeSnapshotsRequest::getFilter1Value()const
+{
+	return filter1Value_;
+}
+
+void DescribeSnapshotsRequest::setFilter1Value(const std::string& filter1Value)
+{
+	filter1Value_ = filter1Value;
+	setParameter("Filter1Value", filter1Value);
+}
+
+long DescribeSnapshotsRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void DescribeSnapshotsRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string DescribeSnapshotsRequest::getInstanceId()const
+{
+	return instanceId_;
+}
+
+void DescribeSnapshotsRequest::setInstanceId(const std::string& instanceId)
+{
+	instanceId_ = instanceId;
+	setParameter("InstanceId", instanceId);
+}
+
+int DescribeSnapshotsRequest::getMaxResults()const
+{
+	return maxResults_;
+}
+
+void DescribeSnapshotsRequest::setMaxResults(int maxResults)
+{
+	maxResults_ = maxResults;
+	setParameter("MaxResults", std::to_string(maxResults));
+}
+
+std::string DescribeSnapshotsRequest::getStatus()const
+{
+	return status_;
+}
+
+void DescribeSnapshotsRequest::setStatus(const std::string& status)
+{
+	status_ = status;
+	setParameter("Status", status);
+}
+
+std::string DescribeSnapshotsRequest::getSnapshotName()const
+{
+	return snapshotName_;
+}
+
+void DescribeSnapshotsRequest::setSnapshotName(const std::string& snapshotName)
+{
+	snapshotName_ = snapshotName;
+	setParameter("SnapshotName", snapshotName);
+}
+
+int DescribeSnapshotsRequest::getPageNumber()const
+{
+	return pageNumber_;
+}
+
+void DescribeSnapshotsRequest::setPageNumber(int pageNumber)
+{
+	pageNumber_ = pageNumber;
+	setParameter("PageNumber", std::to_string(pageNumber));
 }
 
 std::string DescribeSnapshotsRequest::getRegionId()const
@@ -137,6 +219,17 @@ void DescribeSnapshotsRequest::setRegionId(const std::string& regionId)
 	setParameter("RegionId", regionId);
 }
 
+std::string DescribeSnapshotsRequest::getNextToken()const
+{
+	return nextToken_;
+}
+
+void DescribeSnapshotsRequest::setNextToken(const std::string& nextToken)
+{
+	nextToken_ = nextToken;
+	setParameter("NextToken", nextToken);
+}
+
 int DescribeSnapshotsRequest::getPageSize()const
 {
 	return pageSize_;
@@ -159,33 +252,6 @@ void DescribeSnapshotsRequest::setDiskId(const std::string& diskId)
 	setParameter("DiskId", diskId);
 }
 
-std::vector<DescribeSnapshotsRequest::Tag> DescribeSnapshotsRequest::getTag()const
-{
-	return tag_;
-}
-
-void DescribeSnapshotsRequest::setTag(const std::vector<Tag>& tag)
-{
-	tag_ = tag;
-	for(int dep1 = 0; dep1!= tag.size(); dep1++) {
-		auto tagObj = tag.at(dep1);
-		std::string tagObjStr = "Tag." + std::to_string(dep1 + 1);
-		setParameter(tagObjStr + ".Value", tagObj.value);
-		setParameter(tagObjStr + ".Key", tagObj.key);
-	}
-}
-
-bool DescribeSnapshotsRequest::getDryRun()const
-{
-	return dryRun_;
-}
-
-void DescribeSnapshotsRequest::setDryRun(bool dryRun)
-{
-	dryRun_ = dryRun;
-	setParameter("DryRun", dryRun ? "true" : "false");
-}
-
 std::string DescribeSnapshotsRequest::getResourceOwnerAccount()const
 {
 	return resourceOwnerAccount_;
@@ -219,17 +285,6 @@ void DescribeSnapshotsRequest::setSourceDiskType(const std::string& sourceDiskTy
 	setParameter("SourceDiskType", sourceDiskType);
 }
 
-std::string DescribeSnapshotsRequest::getFilter1Value()const
-{
-	return filter1Value_;
-}
-
-void DescribeSnapshotsRequest::setFilter1Value(const std::string& filter1Value)
-{
-	filter1Value_ = filter1Value;
-	setParameter("Filter1Value", filter1Value);
-}
-
 std::string DescribeSnapshotsRequest::getFilter2Key()const
 {
 	return filter2Key_;
@@ -241,28 +296,6 @@ void DescribeSnapshotsRequest::setFilter2Key(const std::string& filter2Key)
 	setParameter("Filter2Key", filter2Key);
 }
 
-long DescribeSnapshotsRequest::getOwnerId()const
-{
-	return ownerId_;
-}
-
-void DescribeSnapshotsRequest::setOwnerId(long ownerId)
-{
-	ownerId_ = ownerId;
-	setParameter("OwnerId", std::to_string(ownerId));
-}
-
-std::string DescribeSnapshotsRequest::getInstanceId()const
-{
-	return instanceId_;
-}
-
-void DescribeSnapshotsRequest::setInstanceId(const std::string& instanceId)
-{
-	instanceId_ = instanceId;
-	setParameter("InstanceId", instanceId);
-}
-
 bool DescribeSnapshotsRequest::getEncrypted()const
 {
 	return encrypted_;
@@ -307,14 +340,3 @@ void DescribeSnapshotsRequest::setCategory(const std::string& category)
 	setParameter("Category", category);
 }
 
-std::string DescribeSnapshotsRequest::getStatus()const
-{
-	return status_;
-}
-
-void DescribeSnapshotsRequest::setStatus(const std::string& status)
-{
-	status_ = status;
-	setParameter("Status", status);
-}
-

+ 11 - 0
ecs/src/model/DescribeSnapshotsResult.cc

@@ -85,6 +85,10 @@ void DescribeSnapshotsResult::parse(const std::string &payload)
 			snapshotsObject.category = valueSnapshotsSnapshot["Category"].asString();
 		if(!valueSnapshotsSnapshot["SnapshotType"].isNull())
 			snapshotsObject.snapshotType = valueSnapshotsSnapshot["SnapshotType"].asString();
+		if(!valueSnapshotsSnapshot["InstantAccess"].isNull())
+			snapshotsObject.instantAccess = valueSnapshotsSnapshot["InstantAccess"].asString() == "true";
+		if(!valueSnapshotsSnapshot["InstantAccessRetentionDays"].isNull())
+			snapshotsObject.instantAccessRetentionDays = std::stoi(valueSnapshotsSnapshot["InstantAccessRetentionDays"].asString());
 		auto allTagsNode = valueSnapshotsSnapshot["Tags"]["Tag"];
 		for (auto valueSnapshotsSnapshotTagsTag : allTagsNode)
 		{
@@ -103,6 +107,8 @@ void DescribeSnapshotsResult::parse(const std::string &payload)
 		pageNumber_ = std::stoi(value["PageNumber"].asString());
 	if(!value["PageSize"].isNull())
 		pageSize_ = std::stoi(value["PageSize"].asString());
+	if(!value["NextToken"].isNull())
+		nextToken_ = value["NextToken"].asString();
 
 }
 
@@ -116,6 +122,11 @@ int DescribeSnapshotsResult::getPageSize()const
 	return pageSize_;
 }
 
+std::string DescribeSnapshotsResult::getNextToken()const
+{
+	return nextToken_;
+}
+
 int DescribeSnapshotsResult::getPageNumber()const
 {
 	return pageNumber_;

+ 22 - 0
ecs/src/model/JoinSecurityGroupRequest.cc

@@ -49,6 +49,17 @@ void JoinSecurityGroupRequest::setSecurityGroupId(const std::string& securityGro
 	setParameter("SecurityGroupId", securityGroupId);
 }
 
+std::string JoinSecurityGroupRequest::getRegionId()const
+{
+	return regionId_;
+}
+
+void JoinSecurityGroupRequest::setRegionId(const std::string& regionId)
+{
+	regionId_ = regionId;
+	setParameter("RegionId", regionId);
+}
+
 std::string JoinSecurityGroupRequest::getResourceOwnerAccount()const
 {
 	return resourceOwnerAccount_;
@@ -93,3 +104,14 @@ void JoinSecurityGroupRequest::setInstanceId(const std::string& instanceId)
 	setParameter("InstanceId", instanceId);
 }
 
+std::string JoinSecurityGroupRequest::getNetworkInterfaceId()const
+{
+	return networkInterfaceId_;
+}
+
+void JoinSecurityGroupRequest::setNetworkInterfaceId(const std::string& networkInterfaceId)
+{
+	networkInterfaceId_ = networkInterfaceId;
+	setParameter("NetworkInterfaceId", networkInterfaceId);
+}
+

+ 22 - 0
ecs/src/model/LeaveSecurityGroupRequest.cc

@@ -49,6 +49,17 @@ void LeaveSecurityGroupRequest::setSecurityGroupId(const std::string& securityGr
 	setParameter("SecurityGroupId", securityGroupId);
 }
 
+std::string LeaveSecurityGroupRequest::getRegionId()const
+{
+	return regionId_;
+}
+
+void LeaveSecurityGroupRequest::setRegionId(const std::string& regionId)
+{
+	regionId_ = regionId;
+	setParameter("RegionId", regionId);
+}
+
 std::string LeaveSecurityGroupRequest::getResourceOwnerAccount()const
 {
 	return resourceOwnerAccount_;
@@ -93,3 +104,14 @@ void LeaveSecurityGroupRequest::setInstanceId(const std::string& instanceId)
 	setParameter("InstanceId", instanceId);
 }
 
+std::string LeaveSecurityGroupRequest::getNetworkInterfaceId()const
+{
+	return networkInterfaceId_;
+}
+
+void LeaveSecurityGroupRequest::setNetworkInterfaceId(const std::string& networkInterfaceId)
+{
+	networkInterfaceId_ = networkInterfaceId;
+	setParameter("NetworkInterfaceId", networkInterfaceId);
+}
+

+ 11 - 0
ecs/src/model/ModifyImageAttributeRequest.cc

@@ -93,6 +93,17 @@ void ModifyImageAttributeRequest::setImageName(const std::string& imageName)
 	setParameter("ImageName", imageName);
 }
 
+std::string ModifyImageAttributeRequest::getLicenseType()const
+{
+	return licenseType_;
+}
+
+void ModifyImageAttributeRequest::setLicenseType(const std::string& licenseType)
+{
+	licenseType_ = licenseType;
+	setParameter("LicenseType", licenseType);
+}
+
 std::string ModifyImageAttributeRequest::getResourceOwnerAccount()const
 {
 	return resourceOwnerAccount_;

+ 11 - 0
ecs/src/model/ModifySnapshotAttributeRequest.cc

@@ -104,3 +104,14 @@ void ModifySnapshotAttributeRequest::setOwnerId(long ownerId)
 	setParameter("OwnerId", std::to_string(ownerId));
 }
 
+bool ModifySnapshotAttributeRequest::getDisableInstantAccess()const
+{
+	return disableInstantAccess_;
+}
+
+void ModifySnapshotAttributeRequest::setDisableInstantAccess(bool disableInstantAccess)
+{
+	disableInstantAccess_ = disableInstantAccess;
+	setParameter("DisableInstantAccess", disableInstantAccess ? "true" : "false");
+}
+