CreateInstanceRequest.h 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279
  1. /*
  2. * Copyright 2009-2017 Alibaba Cloud All rights reserved.
  3. *
  4. * Licensed under the Apache License, Version 2.0 (the "License");
  5. * you may not use this file except in compliance with the License.
  6. * You may obtain a copy of the License at
  7. *
  8. * http://www.apache.org/licenses/LICENSE-2.0
  9. *
  10. * Unless required by applicable law or agreed to in writing, software
  11. * distributed under the License is distributed on an "AS IS" BASIS,
  12. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13. * See the License for the specific language governing permissions and
  14. * limitations under the License.
  15. */
  16. #ifndef ALIBABACLOUD_ECS_MODEL_CREATEINSTANCEREQUEST_H_
  17. #define ALIBABACLOUD_ECS_MODEL_CREATEINSTANCEREQUEST_H_
  18. #include <string>
  19. #include <vector>
  20. #include <alibabacloud/core/RpcServiceRequest.h>
  21. #include <alibabacloud/ecs/EcsExport.h>
  22. namespace AlibabaCloud
  23. {
  24. namespace Ecs
  25. {
  26. namespace Model
  27. {
  28. class ALIBABACLOUD_ECS_EXPORT CreateInstanceRequest : public RpcServiceRequest
  29. {
  30. public:
  31. struct Tag
  32. {
  33. std::string value;
  34. std::string key;
  35. };
  36. struct Arn
  37. {
  38. std::string rolearn;
  39. std::string roleType;
  40. long assumeRoleFor;
  41. };
  42. struct DataDisk
  43. {
  44. std::string diskName;
  45. std::string snapshotId;
  46. int size;
  47. bool encrypted;
  48. std::string performanceLevel;
  49. std::string encryptAlgorithm;
  50. std::string description;
  51. std::string storageClusterId;
  52. std::string category;
  53. std::string kMSKeyId;
  54. std::string device;
  55. bool deleteWithInstance;
  56. };
  57. public:
  58. CreateInstanceRequest();
  59. ~CreateInstanceRequest();
  60. long getResourceOwnerId()const;
  61. void setResourceOwnerId(long resourceOwnerId);
  62. std::string getHpcClusterId()const;
  63. void setHpcClusterId(const std::string& hpcClusterId);
  64. int getHttpPutResponseHopLimit()const;
  65. void setHttpPutResponseHopLimit(int httpPutResponseHopLimit);
  66. std::string getSecurityEnhancementStrategy()const;
  67. void setSecurityEnhancementStrategy(const std::string& securityEnhancementStrategy);
  68. std::string getKeyPairName()const;
  69. void setKeyPairName(const std::string& keyPairName);
  70. float getSpotPriceLimit()const;
  71. void setSpotPriceLimit(float spotPriceLimit);
  72. bool getDeletionProtection()const;
  73. void setDeletionProtection(bool deletionProtection);
  74. std::string getResourceGroupId()const;
  75. void setResourceGroupId(const std::string& resourceGroupId);
  76. std::string getPrivatePoolOptionsMatchCriteria()const;
  77. void setPrivatePoolOptionsMatchCriteria(const std::string& privatePoolOptionsMatchCriteria);
  78. std::string getHostName()const;
  79. void setHostName(const std::string& hostName);
  80. std::string getPassword()const;
  81. void setPassword(const std::string& password);
  82. Struct getSystemDisk()const;
  83. void setSystemDisk(const Struct& systemDisk);
  84. int getDeploymentSetGroupNo()const;
  85. void setDeploymentSetGroupNo(int deploymentSetGroupNo);
  86. int getStorageSetPartitionNumber()const;
  87. void setStorageSetPartitionNumber(int storageSetPartitionNumber);
  88. std::vector<Tag> getTag()const;
  89. void setTag(const std::vector<Tag>& tag);
  90. std::string getPrivatePoolOptionsId()const;
  91. void setPrivatePoolOptionsId(const std::string& privatePoolOptionsId);
  92. int getAutoRenewPeriod()const;
  93. void setAutoRenewPeriod(int autoRenewPeriod);
  94. std::string getNodeControllerId()const;
  95. void setNodeControllerId(const std::string& nodeControllerId);
  96. int getPeriod()const;
  97. void setPeriod(int period);
  98. bool getDryRun()const;
  99. void setDryRun(bool dryRun);
  100. long getOwnerId()const;
  101. void setOwnerId(long ownerId);
  102. std::string getCapacityReservationPreference()const;
  103. void setCapacityReservationPreference(const std::string& capacityReservationPreference);
  104. std::string getVSwitchId()const;
  105. void setVSwitchId(const std::string& vSwitchId);
  106. std::string getPrivateIpAddress()const;
  107. void setPrivateIpAddress(const std::string& privateIpAddress);
  108. std::string getSpotStrategy()const;
  109. void setSpotStrategy(const std::string& spotStrategy);
  110. std::string getPeriodUnit()const;
  111. void setPeriodUnit(const std::string& periodUnit);
  112. std::string getInstanceName()const;
  113. void setInstanceName(const std::string& instanceName);
  114. bool getAutoRenew()const;
  115. void setAutoRenew(bool autoRenew);
  116. std::string getInternetChargeType()const;
  117. void setInternetChargeType(const std::string& internetChargeType);
  118. std::string getZoneId()const;
  119. void setZoneId(const std::string& zoneId);
  120. int getInternetMaxBandwidthIn()const;
  121. void setInternetMaxBandwidthIn(int internetMaxBandwidthIn);
  122. bool getUseAdditionalService()const;
  123. void setUseAdditionalService(bool useAdditionalService);
  124. std::string getAffinity()const;
  125. void setAffinity(const std::string& affinity);
  126. std::string getImageId()const;
  127. void setImageId(const std::string& imageId);
  128. std::string getClientToken()const;
  129. void setClientToken(const std::string& clientToken);
  130. std::string getVlanId()const;
  131. void setVlanId(const std::string& vlanId);
  132. std::string getSpotInterruptionBehavior()const;
  133. void setSpotInterruptionBehavior(const std::string& spotInterruptionBehavior);
  134. std::string getIoOptimized()const;
  135. void setIoOptimized(const std::string& ioOptimized);
  136. std::string getSecurityGroupId()const;
  137. void setSecurityGroupId(const std::string& securityGroupId);
  138. int getInternetMaxBandwidthOut()const;
  139. void setInternetMaxBandwidthOut(int internetMaxBandwidthOut);
  140. bool getHibernationOptionsConfigured()const;
  141. void setHibernationOptionsConfigured(bool hibernationOptionsConfigured);
  142. std::string getDescription()const;
  143. void setDescription(const std::string& description);
  144. std::string getSystemDiskCategory()const;
  145. void setSystemDiskCategory(const std::string& systemDiskCategory);
  146. std::string getCapacityReservationId()const;
  147. void setCapacityReservationId(const std::string& capacityReservationId);
  148. std::string getSystemDiskPerformanceLevel()const;
  149. void setSystemDiskPerformanceLevel(const std::string& systemDiskPerformanceLevel);
  150. std::string getUserData()const;
  151. void setUserData(const std::string& userData);
  152. bool getPasswordInherit()const;
  153. void setPasswordInherit(bool passwordInherit);
  154. std::string getRegionId()const;
  155. void setRegionId(const std::string& regionId);
  156. std::string getHttpEndpoint()const;
  157. void setHttpEndpoint(const std::string& httpEndpoint);
  158. std::string getInstanceType()const;
  159. void setInstanceType(const std::string& instanceType);
  160. std::vector<Arn> getArn()const;
  161. void setArn(const std::vector<Arn>& arn);
  162. std::string getInstanceChargeType()const;
  163. void setInstanceChargeType(const std::string& instanceChargeType);
  164. std::string getDeploymentSetId()const;
  165. void setDeploymentSetId(const std::string& deploymentSetId);
  166. std::string getInnerIpAddress()const;
  167. void setInnerIpAddress(const std::string& innerIpAddress);
  168. std::string getResourceOwnerAccount()const;
  169. void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
  170. std::string getOwnerAccount()const;
  171. void setOwnerAccount(const std::string& ownerAccount);
  172. std::string getTenancy()const;
  173. void setTenancy(const std::string& tenancy);
  174. std::string getSystemDiskDiskName()const;
  175. void setSystemDiskDiskName(const std::string& systemDiskDiskName);
  176. std::string getRamRoleName()const;
  177. void setRamRoleName(const std::string& ramRoleName);
  178. std::string getDedicatedHostId()const;
  179. void setDedicatedHostId(const std::string& dedicatedHostId);
  180. std::string getClusterId()const;
  181. void setClusterId(const std::string& clusterId);
  182. std::string getCreditSpecification()const;
  183. void setCreditSpecification(const std::string& creditSpecification);
  184. int getSpotDuration()const;
  185. void setSpotDuration(int spotDuration);
  186. std::vector<DataDisk> getDataDisk()const;
  187. void setDataDisk(const std::vector<DataDisk>& dataDisk);
  188. std::string getStorageSetId()const;
  189. void setStorageSetId(const std::string& storageSetId);
  190. int getSystemDiskSize()const;
  191. void setSystemDiskSize(int systemDiskSize);
  192. std::string getImageFamily()const;
  193. void setImageFamily(const std::string& imageFamily);
  194. std::string getHttpTokens()const;
  195. void setHttpTokens(const std::string& httpTokens);
  196. std::string getSystemDiskDescription()const;
  197. void setSystemDiskDescription(const std::string& systemDiskDescription);
  198. private:
  199. long resourceOwnerId_;
  200. std::string hpcClusterId_;
  201. int httpPutResponseHopLimit_;
  202. std::string securityEnhancementStrategy_;
  203. std::string keyPairName_;
  204. float spotPriceLimit_;
  205. bool deletionProtection_;
  206. std::string resourceGroupId_;
  207. std::string privatePoolOptionsMatchCriteria_;
  208. std::string hostName_;
  209. std::string password_;
  210. Struct systemDisk_;
  211. int deploymentSetGroupNo_;
  212. int storageSetPartitionNumber_;
  213. std::vector<Tag> tag_;
  214. std::string privatePoolOptionsId_;
  215. int autoRenewPeriod_;
  216. std::string nodeControllerId_;
  217. int period_;
  218. bool dryRun_;
  219. long ownerId_;
  220. std::string capacityReservationPreference_;
  221. std::string vSwitchId_;
  222. std::string privateIpAddress_;
  223. std::string spotStrategy_;
  224. std::string periodUnit_;
  225. std::string instanceName_;
  226. bool autoRenew_;
  227. std::string internetChargeType_;
  228. std::string zoneId_;
  229. int internetMaxBandwidthIn_;
  230. bool useAdditionalService_;
  231. std::string affinity_;
  232. std::string imageId_;
  233. std::string clientToken_;
  234. std::string vlanId_;
  235. std::string spotInterruptionBehavior_;
  236. std::string ioOptimized_;
  237. std::string securityGroupId_;
  238. int internetMaxBandwidthOut_;
  239. bool hibernationOptionsConfigured_;
  240. std::string description_;
  241. std::string systemDiskCategory_;
  242. std::string capacityReservationId_;
  243. std::string systemDiskPerformanceLevel_;
  244. std::string userData_;
  245. bool passwordInherit_;
  246. std::string regionId_;
  247. std::string httpEndpoint_;
  248. std::string instanceType_;
  249. std::vector<Arn> arn_;
  250. std::string instanceChargeType_;
  251. std::string deploymentSetId_;
  252. std::string innerIpAddress_;
  253. std::string resourceOwnerAccount_;
  254. std::string ownerAccount_;
  255. std::string tenancy_;
  256. std::string systemDiskDiskName_;
  257. std::string ramRoleName_;
  258. std::string dedicatedHostId_;
  259. std::string clusterId_;
  260. std::string creditSpecification_;
  261. int spotDuration_;
  262. std::vector<DataDisk> dataDisk_;
  263. std::string storageSetId_;
  264. int systemDiskSize_;
  265. std::string imageFamily_;
  266. std::string httpTokens_;
  267. std::string systemDiskDescription_;
  268. };
  269. }
  270. }
  271. }
  272. #endif // !ALIBABACLOUD_ECS_MODEL_CREATEINSTANCEREQUEST_H_