Browse Source

Add SnapshotLinkId for DescribeSnapshots.

sdk-team 2 years ago
parent
commit
60bb031e74
31 changed files with 277 additions and 22 deletions
  1. 1 1
      VERSION
  2. 3 0
      ecs/include/alibabacloud/ecs/model/AttachDiskRequest.h
  3. 6 0
      ecs/include/alibabacloud/ecs/model/CreateAutoProvisioningGroupRequest.h
  4. 18 0
      ecs/include/alibabacloud/ecs/model/CreateNetworkInterfaceRequest.h
  5. 26 21
      ecs/include/alibabacloud/ecs/model/DescribeDisksResult.h
  6. 1 0
      ecs/include/alibabacloud/ecs/model/DescribeInvocationResultsResult.h
  7. 1 0
      ecs/include/alibabacloud/ecs/model/DescribeInvocationsResult.h
  8. 16 0
      ecs/include/alibabacloud/ecs/model/DescribeNetworkInterfaceAttributeResult.h
  9. 6 0
      ecs/include/alibabacloud/ecs/model/DescribeSecurityGroupAttributeRequest.h
  10. 2 0
      ecs/include/alibabacloud/ecs/model/DescribeSecurityGroupAttributeResult.h
  11. 1 0
      ecs/include/alibabacloud/ecs/model/DescribeSnapshotsResult.h
  12. 3 0
      ecs/include/alibabacloud/ecs/model/InvokeCommandRequest.h
  13. 6 0
      ecs/include/alibabacloud/ecs/model/ModifyInstanceAttributeRequest.h
  14. 18 0
      ecs/include/alibabacloud/ecs/model/ModifyNetworkInterfaceAttributeRequest.h
  15. 3 0
      ecs/include/alibabacloud/ecs/model/RunCommandRequest.h
  16. 6 0
      ecs/include/alibabacloud/ecs/model/RunInstancesRequest.h
  17. 9 0
      ecs/src/model/AttachDiskRequest.cc
  18. 9 0
      ecs/src/model/CreateAutoProvisioningGroupRequest.cc
  19. 24 0
      ecs/src/model/CreateNetworkInterfaceRequest.cc
  20. 3 0
      ecs/src/model/DescribeDisksResult.cc
  21. 2 0
      ecs/src/model/DescribeInvocationResultsResult.cc
  22. 2 0
      ecs/src/model/DescribeInvocationsResult.cc
  23. 24 0
      ecs/src/model/DescribeNetworkInterfaceAttributeResult.cc
  24. 18 0
      ecs/src/model/DescribeSecurityGroupAttributeRequest.cc
  25. 7 0
      ecs/src/model/DescribeSecurityGroupAttributeResult.cc
  26. 2 0
      ecs/src/model/DescribeSnapshotsResult.cc
  27. 9 0
      ecs/src/model/InvokeCommandRequest.cc
  28. 9 0
      ecs/src/model/ModifyInstanceAttributeRequest.cc
  29. 24 0
      ecs/src/model/ModifyNetworkInterfaceAttributeRequest.cc
  30. 9 0
      ecs/src/model/RunCommandRequest.cc
  31. 9 0
      ecs/src/model/RunInstancesRequest.cc

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.36.1912
+1.36.1913

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

@@ -50,6 +50,8 @@ public:
 	void setOwnerId(long ownerId);
 	std::string getInstanceId() const;
 	void setInstanceId(const std::string &instanceId);
+	bool getForce() const;
+	void setForce(bool force);
 	std::string getDevice() const;
 	void setDevice(const std::string &device);
 
@@ -64,6 +66,7 @@ private:
 	std::string ownerAccount_;
 	long ownerId_;
 	std::string instanceId_;
+	bool force_;
 	std::string device_;
 };
 } // namespace Model

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

@@ -87,6 +87,9 @@ public:
 		std::string securityGroupId;
 		std::string instanceType;
 	};
+	struct LaunchConfigurationAdditionalInfo {
+		std::string pvdConfig;
+	};
 	CreateAutoProvisioningGroupRequest();
 	~CreateAutoProvisioningGroupRequest();
 	std::vector<LaunchConfigurationDataDisk> getLaunchConfigurationDataDisk() const;
@@ -219,6 +222,8 @@ public:
 	void setValidFrom(const std::string &validFrom);
 	std::string getAutoProvisioningGroupName() const;
 	void setAutoProvisioningGroupName(const std::string &autoProvisioningGroupName);
+	LaunchConfigurationAdditionalInfo getLaunchConfigurationAdditionalInfo() const;
+	void setLaunchConfigurationAdditionalInfo(const LaunchConfigurationAdditionalInfo &launchConfigurationAdditionalInfo);
 
 private:
 	std::vector<LaunchConfigurationDataDisk> launchConfigurationDataDisk_;
@@ -286,6 +291,7 @@ private:
 	std::vector<LaunchConfigurationNetworkInterface> launchConfigurationNetworkInterface_;
 	std::string validFrom_;
 	std::string autoProvisioningGroupName_;
+	LaunchConfigurationAdditionalInfo launchConfigurationAdditionalInfo_;
 };
 } // namespace Model
 } // namespace Ecs

+ 18 - 0
ecs/include/alibabacloud/ecs/model/CreateNetworkInterfaceRequest.h

@@ -28,10 +28,22 @@ namespace Ecs {
 namespace Model {
 class ALIBABACLOUD_ECS_EXPORT CreateNetworkInterfaceRequest : public RpcServiceRequest {
 public:
+	struct NetworkInterfaceTrafficConfig {
+		int queueNumber;
+		std::string networkInterfaceTrafficMode;
+		int queuePairNumber;
+		int txQueueSize;
+		int rxQueueSize;
+	};
 	struct Tag {
 		std::string key;
 		std::string value;
 	};
+	struct ConnectionTrackingConfiguration {
+		int tcpEstablishedTimeout;
+		int tcpClosedAndTimeWaitTimeout;
+		int udpTimeout;
+	};
 	CreateNetworkInterfaceRequest();
 	~CreateNetworkInterfaceRequest();
 	int getQueueNumber() const;
@@ -40,6 +52,8 @@ public:
 	void setResourceOwnerId(long resourceOwnerId);
 	std::vector<std::string> getIpv4Prefix() const;
 	void setIpv4Prefix(const std::vector<std::string> &ipv4Prefix);
+	NetworkInterfaceTrafficConfig getNetworkInterfaceTrafficConfig() const;
+	void setNetworkInterfaceTrafficConfig(const NetworkInterfaceTrafficConfig &networkInterfaceTrafficConfig);
 	int getSecondaryPrivateIpAddressCount() const;
 	void setSecondaryPrivateIpAddressCount(int secondaryPrivateIpAddressCount);
 	std::string getBusinessType() const;
@@ -94,6 +108,8 @@ public:
 	void setNetworkInterfaceTrafficMode(const std::string &networkInterfaceTrafficMode);
 	int getIpv4PrefixCount() const;
 	void setIpv4PrefixCount(int ipv4PrefixCount);
+	ConnectionTrackingConfiguration getConnectionTrackingConfiguration() const;
+	void setConnectionTrackingConfiguration(const ConnectionTrackingConfiguration &connectionTrackingConfiguration);
 	std::string getPrimaryIpAddress() const;
 	void setPrimaryIpAddress(const std::string &primaryIpAddress);
 
@@ -101,6 +117,7 @@ private:
 	int queueNumber_;
 	long resourceOwnerId_;
 	std::vector<std::string> ipv4Prefix_;
+	NetworkInterfaceTrafficConfig networkInterfaceTrafficConfig_;
 	int secondaryPrivateIpAddressCount_;
 	std::string businessType_;
 	std::string resourceGroupId_;
@@ -128,6 +145,7 @@ private:
 	std::vector<std::string> securityGroupIds_;
 	std::string networkInterfaceTrafficMode_;
 	int ipv4PrefixCount_;
+	ConnectionTrackingConfiguration connectionTrackingConfiguration_;
 	std::string primaryIpAddress_;
 };
 } // namespace Model

+ 26 - 21
ecs/include/alibabacloud/ecs/model/DescribeDisksResult.h

@@ -34,6 +34,10 @@ namespace AlibabaCloud
 			public:
 				struct Disk
 				{
+					struct Placement
+					{
+						std::string zoneIds;
+					};
 					struct OperationLock
 					{
 						std::string lockReason;
@@ -55,21 +59,14 @@ namespace AlibabaCloud
 						std::string instanceId;
 						std::string device;
 					};
-					std::string detachedTime;
-					std::string description;
 					std::string kMSKeyId;
-					std::string category;
-					int throughputRead;
 					std::string resourceGroupId;
 					bool encrypted;
 					int size;
 					bool deleteAutoSnapshot;
-					std::string diskChargeType;
-					int throughput;
-					int storageSetPartitionNumber;
 					int iOPS;
-					std::vector<Disk::Attachment> attachments;
 					std::string multiAttach;
+					Placement placement;
 					std::string expiredTime;
 					std::string imageId;
 					std::string storageSetId;
@@ -77,32 +74,40 @@ namespace AlibabaCloud
 					std::string status;
 					int iOPSRead;
 					std::string attachedTime;
-					bool burstingEnabled;
-					std::string storageClusterId;
 					int iOPSWrite;
-					std::string zoneId;
-					std::string sourceSnapshotId;
 					std::string instanceId;
 					std::string productCode;
-					std::string performanceLevel;
 					std::string device;
 					bool deleteWithInstance;
-					bool enableAutomatedSnapshotPolicy;
-					bool enableAutoSnapshot;
-					std::string autoSnapshotPolicyId;
-					std::string diskName;
 					long provisionedIops;
-					std::vector<Disk::OperationLock> operationLocks;
 					std::string bdfId;
 					int throughputWrite;
 					bool portable;
-					std::string type;
 					int mountInstanceNum;
 					std::string serialNumber;
-					std::vector<Disk::MountInstance> mountInstances;
 					std::string creationTime;
-					std::string regionId;
 					std::string diskId;
+					std::string detachedTime;
+					std::string description;
+					std::string category;
+					int throughputRead;
+					std::string diskChargeType;
+					int throughput;
+					int storageSetPartitionNumber;
+					std::vector<Disk::Attachment> attachments;
+					bool burstingEnabled;
+					std::string storageClusterId;
+					std::string zoneId;
+					std::string sourceSnapshotId;
+					std::string performanceLevel;
+					bool enableAutomatedSnapshotPolicy;
+					bool enableAutoSnapshot;
+					std::string autoSnapshotPolicyId;
+					std::string diskName;
+					std::vector<Disk::OperationLock> operationLocks;
+					std::string type;
+					std::vector<Disk::MountInstance> mountInstances;
+					std::string regionId;
 				};
 
 

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

@@ -58,6 +58,7 @@ namespace AlibabaCloud
 						std::string errorCode;
 						std::vector<InvocationResult::Tag> tags;
 						std::string invokeId;
+						std::string terminationMode;
 						std::string stopTime;
 					};
 					std::vector<InvocationResult> invocationResults;

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

@@ -77,6 +77,7 @@ namespace AlibabaCloud
 					std::string commandName;
 					std::vector<Invocation::Tag> tags;
 					std::string invokeId;
+					std::string terminationMode;
 				};
 
 

+ 16 - 0
ecs/include/alibabacloud/ecs/model/DescribeNetworkInterfaceAttributeResult.h

@@ -62,6 +62,18 @@ namespace AlibabaCloud
 					std::string workState;
 					std::string slaveNetworkInterfaceId;
 				};
+				struct NetworkInterfaceTrafficConfig
+				{
+					std::string networkInterfaceTrafficMode;
+					int queueNumber;
+					int queuePairNumber;
+				};
+				struct ConnectionTrackingConfiguration
+				{
+					int tcpClosedAndTimeWaitTimeout;
+					int udpTimeout;
+					int tcpEstablishedTimeout;
+				};
 				struct PrivateIpSet
 				{
 					struct AssociatedPublicIp1
@@ -124,6 +136,8 @@ namespace AlibabaCloud
 				std::vector<Ipv6PrefixSet> getIpv6PrefixSets()const;
 				BondInterfaceSpecification getBondInterfaceSpecification()const;
 				std::string getCreationTime()const;
+				NetworkInterfaceTrafficConfig getNetworkInterfaceTrafficConfig()const;
+				ConnectionTrackingConfiguration getConnectionTrackingConfiguration()const;
 				std::vector<Ipv4PrefixSet> getIpv4PrefixSets()const;
 				std::vector<PrivateIpSet> getPrivateIpSets()const;
 
@@ -159,6 +173,8 @@ namespace AlibabaCloud
 				std::vector<Ipv6PrefixSet> ipv6PrefixSets_;
 				BondInterfaceSpecification bondInterfaceSpecification_;
 				std::string creationTime_;
+				NetworkInterfaceTrafficConfig networkInterfaceTrafficConfig_;
+				ConnectionTrackingConfiguration connectionTrackingConfiguration_;
 				std::vector<Ipv4PrefixSet> ipv4PrefixSets_;
 				std::vector<PrivateIpSet> privateIpSets_;
 

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

@@ -38,6 +38,8 @@ public:
 	void setSecurityGroupId(const std::string &securityGroupId);
 	std::string getRegionId() const;
 	void setRegionId(const std::string &regionId);
+	std::string getNextToken() const;
+	void setNextToken(const std::string &nextToken);
 	std::string getDirection() const;
 	void setDirection(const std::string &direction);
 	std::string getResourceOwnerAccount() const;
@@ -46,16 +48,20 @@ public:
 	void setOwnerAccount(const std::string &ownerAccount);
 	long getOwnerId() const;
 	void setOwnerId(long ownerId);
+	int getMaxResults() const;
+	void setMaxResults(int maxResults);
 
 private:
 	std::string nicType_;
 	long resourceOwnerId_;
 	std::string securityGroupId_;
 	std::string regionId_;
+	std::string nextToken_;
 	std::string direction_;
 	std::string resourceOwnerAccount_;
 	std::string ownerAccount_;
 	long ownerId_;
+	int maxResults_;
 };
 } // namespace Model
 } // namespace Ecs

+ 2 - 0
ecs/include/alibabacloud/ecs/model/DescribeSecurityGroupAttributeResult.h

@@ -76,6 +76,7 @@ namespace AlibabaCloud
 				std::string getDescription()const;
 				std::string getVpcId()const;
 				std::string getSecurityGroupName()const;
+				std::string getNextToken()const;
 				std::string getSecurityGroupId()const;
 				std::vector<Permission> getPermissions()const;
 				std::string getInnerAccessPolicy()const;
@@ -88,6 +89,7 @@ namespace AlibabaCloud
 				std::string description_;
 				std::string vpcId_;
 				std::string securityGroupName_;
+				std::string nextToken_;
 				std::string securityGroupId_;
 				std::vector<Permission> permissions_;
 				std::string innerAccessPolicy_;

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

@@ -45,6 +45,7 @@ namespace AlibabaCloud
 					std::string kMSKeyId;
 					std::string resourceGroupId;
 					bool encrypted;
+					std::string snapshotLinkId;
 					std::string snapshotName;
 					int instantAccessRetentionDays;
 					std::string sourceDiskId;

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

@@ -77,6 +77,8 @@ public:
 	void setOwnerAccount(const std::string &ownerAccount);
 	long getOwnerId() const;
 	void setOwnerId(long ownerId);
+	std::string getTerminationMode() const;
+	void setTerminationMode(const std::string &terminationMode);
 	std::vector<std::string> getInstanceId() const;
 	void setInstanceId(const std::vector<std::string> &instanceId);
 	std::string getContainerId() const;
@@ -104,6 +106,7 @@ private:
 	std::string resourceOwnerAccount_;
 	std::string ownerAccount_;
 	long ownerId_;
+	std::string terminationMode_;
 	std::vector<std::string> instanceId_;
 	std::string containerId_;
 	std::map<std::string, std::string> parameters_;

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

@@ -28,6 +28,9 @@ namespace Ecs {
 namespace Model {
 class ALIBABACLOUD_ECS_EXPORT ModifyInstanceAttributeRequest : public RpcServiceRequest {
 public:
+	struct AdditionalInfo {
+		std::string pvdConfig;
+	};
 	struct RemoteConnectionOptions {
 		std::string password;
 		std::string type;
@@ -64,6 +67,8 @@ public:
 	void setOwnerId(long ownerId);
 	std::vector<std::string> getSecurityGroupIds() const;
 	void setSecurityGroupIds(const std::vector<std::string> &securityGroupIds);
+	AdditionalInfo getAdditionalInfo() const;
+	void setAdditionalInfo(const AdditionalInfo &additionalInfo);
 	std::string getInstanceId() const;
 	void setInstanceId(const std::string &instanceId);
 	std::string getInstanceName() const;
@@ -87,6 +92,7 @@ private:
 	std::string creditSpecification_;
 	long ownerId_;
 	std::vector<std::string> securityGroupIds_;
+	AdditionalInfo additionalInfo_;
 	std::string instanceId_;
 	std::string instanceName_;
 	RemoteConnectionOptions remoteConnectionOptions_;

+ 18 - 0
ecs/include/alibabacloud/ecs/model/ModifyNetworkInterfaceAttributeRequest.h

@@ -28,6 +28,18 @@ namespace Ecs {
 namespace Model {
 class ALIBABACLOUD_ECS_EXPORT ModifyNetworkInterfaceAttributeRequest : public RpcServiceRequest {
 public:
+	struct NetworkInterfaceTrafficConfig {
+		std::string networkInterfaceTrafficMode;
+		int queueNumber;
+		int queuePairNumber;
+		int rxQueueSize;
+		int txQueueSize;
+	};
+	struct ConnectionTrackingConfiguration {
+		int tcpEstablishedTimeout;
+		int tcpClosedAndTimeWaitTimeout;
+		int udpTimeout;
+	};
 	ModifyNetworkInterfaceAttributeRequest();
 	~ModifyNetworkInterfaceAttributeRequest();
 	int getQueueNumber() const;
@@ -38,6 +50,8 @@ public:
 	void setSecurityGroupId(const std::vector<std::string> &securityGroupId);
 	std::string getDescription() const;
 	void setDescription(const std::string &description);
+	NetworkInterfaceTrafficConfig getNetworkInterfaceTrafficConfig() const;
+	void setNetworkInterfaceTrafficConfig(const NetworkInterfaceTrafficConfig &networkInterfaceTrafficConfig);
 	std::string getRegionId() const;
 	void setRegionId(const std::string &regionId);
 	std::string getNetworkInterfaceName() const;
@@ -54,6 +68,8 @@ public:
 	void setRxQueueSize(int rxQueueSize);
 	long getOwnerId() const;
 	void setOwnerId(long ownerId);
+	ConnectionTrackingConfiguration getConnectionTrackingConfiguration() const;
+	void setConnectionTrackingConfiguration(const ConnectionTrackingConfiguration &connectionTrackingConfiguration);
 	std::string getNetworkInterfaceId() const;
 	void setNetworkInterfaceId(const std::string &networkInterfaceId);
 
@@ -62,6 +78,7 @@ private:
 	long resourceOwnerId_;
 	std::vector<std::string> securityGroupId_;
 	std::string description_;
+	NetworkInterfaceTrafficConfig networkInterfaceTrafficConfig_;
 	std::string regionId_;
 	std::string networkInterfaceName_;
 	int txQueueSize_;
@@ -70,6 +87,7 @@ private:
 	std::string ownerAccount_;
 	int rxQueueSize_;
 	long ownerId_;
+	ConnectionTrackingConfiguration connectionTrackingConfiguration_;
 	std::string networkInterfaceId_;
 };
 } // namespace Model

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

@@ -88,6 +88,8 @@ public:
 	void setResourceOwnerAccount(const std::string &resourceOwnerAccount);
 	std::string getOwnerAccount() const;
 	void setOwnerAccount(const std::string &ownerAccount);
+	std::string getTerminationMode() const;
+	void setTerminationMode(const std::string &terminationMode);
 	bool getEnableParameter() const;
 	void setEnableParameter(bool enableParameter);
 	std::string getUsername() const;
@@ -119,6 +121,7 @@ private:
 	std::vector<ResourceTag> resourceTag_;
 	std::string resourceOwnerAccount_;
 	std::string ownerAccount_;
+	std::string terminationMode_;
 	bool enableParameter_;
 	std::string username_;
 };

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

@@ -56,6 +56,9 @@ public:
 		std::string key;
 		std::string value;
 	};
+	struct AdditionalInfo {
+		std::string pvdConfig;
+	};
 	struct NetworkInterface {
 		std::string vSwitchId;
 		std::string networkInterfaceName;
@@ -212,6 +215,8 @@ public:
 	void setHostNames(const std::vector<std::string> &hostNames);
 	std::string getCapacityReservationPreference() const;
 	void setCapacityReservationPreference(const std::string &capacityReservationPreference);
+	AdditionalInfo getAdditionalInfo() const;
+	void setAdditionalInfo(const AdditionalInfo &additionalInfo);
 	std::string getVSwitchId() const;
 	void setVSwitchId(const std::string &vSwitchId);
 	std::string getInstanceName() const;
@@ -336,6 +341,7 @@ private:
 	int ipv6AddressCount_;
 	std::vector<std::string> hostNames_;
 	std::string capacityReservationPreference_;
+	AdditionalInfo additionalInfo_;
 	std::string vSwitchId_;
 	std::string instanceName_;
 	std::string zoneId_;

+ 9 - 0
ecs/src/model/AttachDiskRequest.cc

@@ -115,6 +115,15 @@ void AttachDiskRequest::setInstanceId(const std::string &instanceId) {
   setParameter(std::string("InstanceId"), instanceId);
 }
 
+bool AttachDiskRequest::getForce() const {
+  return force_;
+}
+
+void AttachDiskRequest::setForce(bool force) {
+  force_ = force;
+  setParameter(std::string("Force"), force ? "true" : "false");
+}
+
 std::string AttachDiskRequest::getDevice() const {
   return device_;
 }

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

@@ -673,3 +673,12 @@ void CreateAutoProvisioningGroupRequest::setAutoProvisioningGroupName(const std:
   setParameter(std::string("AutoProvisioningGroupName"), autoProvisioningGroupName);
 }
 
+CreateAutoProvisioningGroupRequest::LaunchConfigurationAdditionalInfo CreateAutoProvisioningGroupRequest::getLaunchConfigurationAdditionalInfo() const {
+  return launchConfigurationAdditionalInfo_;
+}
+
+void CreateAutoProvisioningGroupRequest::setLaunchConfigurationAdditionalInfo(const CreateAutoProvisioningGroupRequest::LaunchConfigurationAdditionalInfo &launchConfigurationAdditionalInfo) {
+  launchConfigurationAdditionalInfo_ = launchConfigurationAdditionalInfo;
+  setParameter(std::string("LaunchConfiguration.AdditionalInfo") + ".PvdConfig", launchConfigurationAdditionalInfo.pvdConfig);
+}
+

+ 24 - 0
ecs/src/model/CreateNetworkInterfaceRequest.cc

@@ -51,6 +51,19 @@ void CreateNetworkInterfaceRequest::setIpv4Prefix(const std::vector<std::string>
   ipv4Prefix_ = ipv4Prefix;
 }
 
+CreateNetworkInterfaceRequest::NetworkInterfaceTrafficConfig CreateNetworkInterfaceRequest::getNetworkInterfaceTrafficConfig() const {
+  return networkInterfaceTrafficConfig_;
+}
+
+void CreateNetworkInterfaceRequest::setNetworkInterfaceTrafficConfig(const CreateNetworkInterfaceRequest::NetworkInterfaceTrafficConfig &networkInterfaceTrafficConfig) {
+  networkInterfaceTrafficConfig_ = networkInterfaceTrafficConfig;
+  setParameter(std::string("NetworkInterfaceTrafficConfig") + ".QueueNumber", std::to_string(networkInterfaceTrafficConfig.queueNumber));
+  setParameter(std::string("NetworkInterfaceTrafficConfig") + ".NetworkInterfaceTrafficMode", networkInterfaceTrafficConfig.networkInterfaceTrafficMode);
+  setParameter(std::string("NetworkInterfaceTrafficConfig") + ".QueuePairNumber", std::to_string(networkInterfaceTrafficConfig.queuePairNumber));
+  setParameter(std::string("NetworkInterfaceTrafficConfig") + ".TxQueueSize", std::to_string(networkInterfaceTrafficConfig.txQueueSize));
+  setParameter(std::string("NetworkInterfaceTrafficConfig") + ".RxQueueSize", std::to_string(networkInterfaceTrafficConfig.rxQueueSize));
+}
+
 int CreateNetworkInterfaceRequest::getSecondaryPrivateIpAddressCount() const {
   return secondaryPrivateIpAddressCount_;
 }
@@ -295,6 +308,17 @@ void CreateNetworkInterfaceRequest::setIpv4PrefixCount(int ipv4PrefixCount) {
   setParameter(std::string("Ipv4PrefixCount"), std::to_string(ipv4PrefixCount));
 }
 
+CreateNetworkInterfaceRequest::ConnectionTrackingConfiguration CreateNetworkInterfaceRequest::getConnectionTrackingConfiguration() const {
+  return connectionTrackingConfiguration_;
+}
+
+void CreateNetworkInterfaceRequest::setConnectionTrackingConfiguration(const CreateNetworkInterfaceRequest::ConnectionTrackingConfiguration &connectionTrackingConfiguration) {
+  connectionTrackingConfiguration_ = connectionTrackingConfiguration;
+  setParameter(std::string("ConnectionTrackingConfiguration") + ".TcpEstablishedTimeout", std::to_string(connectionTrackingConfiguration.tcpEstablishedTimeout));
+  setParameter(std::string("ConnectionTrackingConfiguration") + ".TcpClosedAndTimeWaitTimeout", std::to_string(connectionTrackingConfiguration.tcpClosedAndTimeWaitTimeout));
+  setParameter(std::string("ConnectionTrackingConfiguration") + ".UdpTimeout", std::to_string(connectionTrackingConfiguration.udpTimeout));
+}
+
 std::string CreateNetworkInterfaceRequest::getPrimaryIpAddress() const {
   return primaryIpAddress_;
 }

+ 3 - 0
ecs/src/model/DescribeDisksResult.cc

@@ -173,6 +173,9 @@ void DescribeDisksResult::parse(const std::string &payload)
 				attachmentsObject.attachedTime = valueDisksDiskAttachmentsAttachment["AttachedTime"].asString();
 			disksObject.attachments.push_back(attachmentsObject);
 		}
+		auto placementNode = value["Placement"];
+		if(!placementNode["ZoneIds"].isNull())
+			disksObject.placement.zoneIds = placementNode["ZoneIds"].asString();
 		disks_.push_back(disksObject);
 	}
 	if(!value["NextToken"].isNull())

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

@@ -86,6 +86,8 @@ void DescribeInvocationResultsResult::parse(const std::string &payload)
 			invocationResultObject.containerId = invocationNodeInvocationResultsInvocationResult["ContainerId"].asString();
 		if(!invocationNodeInvocationResultsInvocationResult["ContainerName"].isNull())
 			invocationResultObject.containerName = invocationNodeInvocationResultsInvocationResult["ContainerName"].asString();
+		if(!invocationNodeInvocationResultsInvocationResult["TerminationMode"].isNull())
+			invocationResultObject.terminationMode = invocationNodeInvocationResultsInvocationResult["TerminationMode"].asString();
 		auto allTagsNode = invocationNodeInvocationResultsInvocationResult["Tags"]["Tag"];
 		for (auto invocationNodeInvocationResultsInvocationResultTagsTag : allTagsNode)
 		{

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

@@ -79,6 +79,8 @@ void DescribeInvocationsResult::parse(const std::string &payload)
 			invocationsObject.containerId = valueInvocationsInvocation["ContainerId"].asString();
 		if(!valueInvocationsInvocation["ContainerName"].isNull())
 			invocationsObject.containerName = valueInvocationsInvocation["ContainerName"].asString();
+		if(!valueInvocationsInvocation["TerminationMode"].isNull())
+			invocationsObject.terminationMode = valueInvocationsInvocation["TerminationMode"].asString();
 		auto allInvokeInstancesNode = valueInvocationsInvocation["InvokeInstances"]["InvokeInstance"];
 		for (auto valueInvocationsInvocationInvokeInstancesInvokeInstance : allInvokeInstancesNode)
 		{

+ 24 - 0
ecs/src/model/DescribeNetworkInterfaceAttributeResult.cc

@@ -127,6 +127,20 @@ void DescribeNetworkInterfaceAttributeResult::parse(const std::string &payload)
 		slaveInterfaceSpecification_.workState = slaveInterfaceSpecificationNode["WorkState"].asString();
 	if(!slaveInterfaceSpecificationNode["BondNetworkInterfaceId"].isNull())
 		slaveInterfaceSpecification_.bondNetworkInterfaceId = slaveInterfaceSpecificationNode["BondNetworkInterfaceId"].asString();
+	auto networkInterfaceTrafficConfigNode = value["NetworkInterfaceTrafficConfig"];
+	if(!networkInterfaceTrafficConfigNode["NetworkInterfaceTrafficMode"].isNull())
+		networkInterfaceTrafficConfig_.networkInterfaceTrafficMode = networkInterfaceTrafficConfigNode["NetworkInterfaceTrafficMode"].asString();
+	if(!networkInterfaceTrafficConfigNode["QueueNumber"].isNull())
+		networkInterfaceTrafficConfig_.queueNumber = std::stoi(networkInterfaceTrafficConfigNode["QueueNumber"].asString());
+	if(!networkInterfaceTrafficConfigNode["QueuePairNumber"].isNull())
+		networkInterfaceTrafficConfig_.queuePairNumber = std::stoi(networkInterfaceTrafficConfigNode["QueuePairNumber"].asString());
+	auto connectionTrackingConfigurationNode = value["ConnectionTrackingConfiguration"];
+	if(!connectionTrackingConfigurationNode["TcpEstablishedTimeout"].isNull())
+		connectionTrackingConfiguration_.tcpEstablishedTimeout = std::stoi(connectionTrackingConfigurationNode["TcpEstablishedTimeout"].asString());
+	if(!connectionTrackingConfigurationNode["TcpClosedAndTimeWaitTimeout"].isNull())
+		connectionTrackingConfiguration_.tcpClosedAndTimeWaitTimeout = std::stoi(connectionTrackingConfigurationNode["TcpClosedAndTimeWaitTimeout"].asString());
+	if(!connectionTrackingConfigurationNode["UdpTimeout"].isNull())
+		connectionTrackingConfiguration_.udpTimeout = std::stoi(connectionTrackingConfigurationNode["UdpTimeout"].asString());
 	auto allSecurityGroupIds = value["SecurityGroupIds"]["SecurityGroupId"];
 	for (const auto &item : allSecurityGroupIds)
 		securityGroupIds_.push_back(item.asString());
@@ -320,6 +334,16 @@ std::string DescribeNetworkInterfaceAttributeResult::getCreationTime()const
 	return creationTime_;
 }
 
+DescribeNetworkInterfaceAttributeResult::NetworkInterfaceTrafficConfig DescribeNetworkInterfaceAttributeResult::getNetworkInterfaceTrafficConfig()const
+{
+	return networkInterfaceTrafficConfig_;
+}
+
+DescribeNetworkInterfaceAttributeResult::ConnectionTrackingConfiguration DescribeNetworkInterfaceAttributeResult::getConnectionTrackingConfiguration()const
+{
+	return connectionTrackingConfiguration_;
+}
+
 std::vector<DescribeNetworkInterfaceAttributeResult::Ipv4PrefixSet> DescribeNetworkInterfaceAttributeResult::getIpv4PrefixSets()const
 {
 	return ipv4PrefixSets_;

+ 18 - 0
ecs/src/model/DescribeSecurityGroupAttributeRequest.cc

@@ -61,6 +61,15 @@ void DescribeSecurityGroupAttributeRequest::setRegionId(const std::string &regio
   setParameter(std::string("RegionId"), regionId);
 }
 
+std::string DescribeSecurityGroupAttributeRequest::getNextToken() const {
+  return nextToken_;
+}
+
+void DescribeSecurityGroupAttributeRequest::setNextToken(const std::string &nextToken) {
+  nextToken_ = nextToken;
+  setParameter(std::string("NextToken"), nextToken);
+}
+
 std::string DescribeSecurityGroupAttributeRequest::getDirection() const {
   return direction_;
 }
@@ -97,3 +106,12 @@ void DescribeSecurityGroupAttributeRequest::setOwnerId(long ownerId) {
   setParameter(std::string("OwnerId"), std::to_string(ownerId));
 }
 
+int DescribeSecurityGroupAttributeRequest::getMaxResults() const {
+  return maxResults_;
+}
+
+void DescribeSecurityGroupAttributeRequest::setMaxResults(int maxResults) {
+  maxResults_ = maxResults;
+  setParameter(std::string("MaxResults"), std::to_string(maxResults));
+}
+

+ 7 - 0
ecs/src/model/DescribeSecurityGroupAttributeResult.cc

@@ -116,6 +116,8 @@ void DescribeSecurityGroupAttributeResult::parse(const std::string &payload)
 		securityGroupName_ = value["SecurityGroupName"].asString();
 	if(!value["RegionId"].isNull())
 		regionId_ = value["RegionId"].asString();
+	if(!value["NextToken"].isNull())
+		nextToken_ = value["NextToken"].asString();
 
 }
 
@@ -134,6 +136,11 @@ std::string DescribeSecurityGroupAttributeResult::getSecurityGroupName()const
 	return securityGroupName_;
 }
 
+std::string DescribeSecurityGroupAttributeResult::getNextToken()const
+{
+	return nextToken_;
+}
+
 std::string DescribeSecurityGroupAttributeResult::getSecurityGroupId()const
 {
 	return securityGroupId_;

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

@@ -97,6 +97,8 @@ void DescribeSnapshotsResult::parse(const std::string &payload)
 			snapshotsObject.sourceSnapshotId = valueSnapshotsSnapshot["SourceSnapshotId"].asString();
 		if(!valueSnapshotsSnapshot["SourceRegionId"].isNull())
 			snapshotsObject.sourceRegionId = valueSnapshotsSnapshot["SourceRegionId"].asString();
+		if(!valueSnapshotsSnapshot["SnapshotLinkId"].isNull())
+			snapshotsObject.snapshotLinkId = valueSnapshotsSnapshot["SnapshotLinkId"].asString();
 		auto allTagsNode = valueSnapshotsSnapshot["Tags"]["Tag"];
 		for (auto valueSnapshotsSnapshotTagsTag : allTagsNode)
 		{

+ 9 - 0
ecs/src/model/InvokeCommandRequest.cc

@@ -194,6 +194,15 @@ void InvokeCommandRequest::setOwnerId(long ownerId) {
   setParameter(std::string("OwnerId"), std::to_string(ownerId));
 }
 
+std::string InvokeCommandRequest::getTerminationMode() const {
+  return terminationMode_;
+}
+
+void InvokeCommandRequest::setTerminationMode(const std::string &terminationMode) {
+  terminationMode_ = terminationMode;
+  setParameter(std::string("TerminationMode"), terminationMode);
+}
+
 std::vector<std::string> InvokeCommandRequest::getInstanceId() const {
   return instanceId_;
 }

+ 9 - 0
ecs/src/model/ModifyInstanceAttributeRequest.cc

@@ -159,6 +159,15 @@ void ModifyInstanceAttributeRequest::setSecurityGroupIds(const std::vector<std::
   securityGroupIds_ = securityGroupIds;
 }
 
+ModifyInstanceAttributeRequest::AdditionalInfo ModifyInstanceAttributeRequest::getAdditionalInfo() const {
+  return additionalInfo_;
+}
+
+void ModifyInstanceAttributeRequest::setAdditionalInfo(const ModifyInstanceAttributeRequest::AdditionalInfo &additionalInfo) {
+  additionalInfo_ = additionalInfo;
+  setParameter(std::string("AdditionalInfo") + ".PvdConfig", additionalInfo.pvdConfig);
+}
+
 std::string ModifyInstanceAttributeRequest::getInstanceId() const {
   return instanceId_;
 }

+ 24 - 0
ecs/src/model/ModifyNetworkInterfaceAttributeRequest.cc

@@ -60,6 +60,19 @@ void ModifyNetworkInterfaceAttributeRequest::setDescription(const std::string &d
   setParameter(std::string("Description"), description);
 }
 
+ModifyNetworkInterfaceAttributeRequest::NetworkInterfaceTrafficConfig ModifyNetworkInterfaceAttributeRequest::getNetworkInterfaceTrafficConfig() const {
+  return networkInterfaceTrafficConfig_;
+}
+
+void ModifyNetworkInterfaceAttributeRequest::setNetworkInterfaceTrafficConfig(const ModifyNetworkInterfaceAttributeRequest::NetworkInterfaceTrafficConfig &networkInterfaceTrafficConfig) {
+  networkInterfaceTrafficConfig_ = networkInterfaceTrafficConfig;
+  setParameter(std::string("NetworkInterfaceTrafficConfig") + ".NetworkInterfaceTrafficMode", networkInterfaceTrafficConfig.networkInterfaceTrafficMode);
+  setParameter(std::string("NetworkInterfaceTrafficConfig") + ".QueueNumber", std::to_string(networkInterfaceTrafficConfig.queueNumber));
+  setParameter(std::string("NetworkInterfaceTrafficConfig") + ".QueuePairNumber", std::to_string(networkInterfaceTrafficConfig.queuePairNumber));
+  setParameter(std::string("NetworkInterfaceTrafficConfig") + ".RxQueueSize", std::to_string(networkInterfaceTrafficConfig.rxQueueSize));
+  setParameter(std::string("NetworkInterfaceTrafficConfig") + ".TxQueueSize", std::to_string(networkInterfaceTrafficConfig.txQueueSize));
+}
+
 std::string ModifyNetworkInterfaceAttributeRequest::getRegionId() const {
   return regionId_;
 }
@@ -132,6 +145,17 @@ void ModifyNetworkInterfaceAttributeRequest::setOwnerId(long ownerId) {
   setParameter(std::string("OwnerId"), std::to_string(ownerId));
 }
 
+ModifyNetworkInterfaceAttributeRequest::ConnectionTrackingConfiguration ModifyNetworkInterfaceAttributeRequest::getConnectionTrackingConfiguration() const {
+  return connectionTrackingConfiguration_;
+}
+
+void ModifyNetworkInterfaceAttributeRequest::setConnectionTrackingConfiguration(const ModifyNetworkInterfaceAttributeRequest::ConnectionTrackingConfiguration &connectionTrackingConfiguration) {
+  connectionTrackingConfiguration_ = connectionTrackingConfiguration;
+  setParameter(std::string("ConnectionTrackingConfiguration") + ".TcpEstablishedTimeout", std::to_string(connectionTrackingConfiguration.tcpEstablishedTimeout));
+  setParameter(std::string("ConnectionTrackingConfiguration") + ".TcpClosedAndTimeWaitTimeout", std::to_string(connectionTrackingConfiguration.tcpClosedAndTimeWaitTimeout));
+  setParameter(std::string("ConnectionTrackingConfiguration") + ".UdpTimeout", std::to_string(connectionTrackingConfiguration.udpTimeout));
+}
+
 std::string ModifyNetworkInterfaceAttributeRequest::getNetworkInterfaceId() const {
   return networkInterfaceId_;
 }

+ 9 - 0
ecs/src/model/RunCommandRequest.cc

@@ -259,6 +259,15 @@ void RunCommandRequest::setOwnerAccount(const std::string &ownerAccount) {
   setParameter(std::string("OwnerAccount"), ownerAccount);
 }
 
+std::string RunCommandRequest::getTerminationMode() const {
+  return terminationMode_;
+}
+
+void RunCommandRequest::setTerminationMode(const std::string &terminationMode) {
+  terminationMode_ = terminationMode;
+  setParameter(std::string("TerminationMode"), terminationMode);
+}
+
 bool RunCommandRequest::getEnableParameter() const {
   return enableParameter_;
 }

+ 9 - 0
ecs/src/model/RunInstancesRequest.cc

@@ -585,6 +585,15 @@ void RunInstancesRequest::setCapacityReservationPreference(const std::string &ca
   setParameter(std::string("CapacityReservationPreference"), capacityReservationPreference);
 }
 
+RunInstancesRequest::AdditionalInfo RunInstancesRequest::getAdditionalInfo() const {
+  return additionalInfo_;
+}
+
+void RunInstancesRequest::setAdditionalInfo(const RunInstancesRequest::AdditionalInfo &additionalInfo) {
+  additionalInfo_ = additionalInfo;
+  setParameter(std::string("AdditionalInfo") + ".PvdConfig", additionalInfo.pvdConfig);
+}
+
 std::string RunInstancesRequest::getVSwitchId() const {
   return vSwitchId_;
 }