CreateImageRequest.h 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  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_CREATEIMAGEREQUEST_H_
  17. #define ALIBABACLOUD_ECS_MODEL_CREATEIMAGEREQUEST_H_
  18. #include <alibabacloud/ecs/EcsExport.h>
  19. #include <alibabacloud/core/RpcServiceRequest.h>
  20. #include <string>
  21. #include <vector>
  22. #include <map>
  23. namespace AlibabaCloud {
  24. namespace Ecs {
  25. namespace Model {
  26. class ALIBABACLOUD_ECS_EXPORT CreateImageRequest : public RpcServiceRequest {
  27. public:
  28. struct DiskDeviceMapping {
  29. std::string snapshotId;
  30. int size;
  31. std::string diskType;
  32. std::string device;
  33. };
  34. struct Tag {
  35. std::string value;
  36. std::string key;
  37. };
  38. CreateImageRequest();
  39. ~CreateImageRequest();
  40. std::vector<DiskDeviceMapping> getDiskDeviceMapping() const;
  41. void setDiskDeviceMapping(const std::vector<DiskDeviceMapping> &diskDeviceMapping);
  42. long getResourceOwnerId() const;
  43. void setResourceOwnerId(long resourceOwnerId);
  44. std::string getSnapshotId() const;
  45. void setSnapshotId(const std::string &snapshotId);
  46. std::string getClientToken() const;
  47. void setClientToken(const std::string &clientToken);
  48. std::string getDescription() const;
  49. void setDescription(const std::string &description);
  50. std::string getPlatform() const;
  51. void setPlatform(const std::string &platform);
  52. std::string getResourceGroupId() const;
  53. void setResourceGroupId(const std::string &resourceGroupId);
  54. std::string getRegionId() const;
  55. void setRegionId(const std::string &regionId);
  56. std::string getImageName() const;
  57. void setImageName(const std::string &imageName);
  58. std::vector<Tag> getTag() const;
  59. void setTag(const std::vector<Tag> &tag);
  60. std::string getArchitecture() const;
  61. void setArchitecture(const std::string &architecture);
  62. std::string getResourceOwnerAccount() const;
  63. void setResourceOwnerAccount(const std::string &resourceOwnerAccount);
  64. std::string getOwnerAccount() const;
  65. void setOwnerAccount(const std::string &ownerAccount);
  66. long getOwnerId() const;
  67. void setOwnerId(long ownerId);
  68. std::string getInstanceId() const;
  69. void setInstanceId(const std::string &instanceId);
  70. std::string getImageFamily() const;
  71. void setImageFamily(const std::string &imageFamily);
  72. std::string getImageVersion() const;
  73. void setImageVersion(const std::string &imageVersion);
  74. private:
  75. std::vector<DiskDeviceMapping> diskDeviceMapping_;
  76. long resourceOwnerId_;
  77. std::string snapshotId_;
  78. std::string clientToken_;
  79. std::string description_;
  80. std::string platform_;
  81. std::string resourceGroupId_;
  82. std::string regionId_;
  83. std::string imageName_;
  84. std::vector<Tag> tag_;
  85. std::string architecture_;
  86. std::string resourceOwnerAccount_;
  87. std::string ownerAccount_;
  88. long ownerId_;
  89. std::string instanceId_;
  90. std::string imageFamily_;
  91. std::string imageVersion_;
  92. };
  93. } // namespace Model
  94. } // namespace Ecs
  95. } // namespace AlibabaCloud
  96. #endif // !ALIBABACLOUD_ECS_MODEL_CREATEIMAGEREQUEST_H_