/aws-cpp-sdk-rds/include/aws/rds/model/CreateDBParameterGroupRequest.h

https://github.com/aws/aws-sdk-cpp · C Header · 312 lines · 67 code · 48 blank · 197 comment · 0 complexity · 189709f012f5e00c611e3b5d860cc581 MD5 · raw file

  1. /**
  2. * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
  3. * SPDX-License-Identifier: Apache-2.0.
  4. */
  5. #pragma once
  6. #include <aws/rds/RDS_EXPORTS.h>
  7. #include <aws/rds/RDSRequest.h>
  8. #include <aws/core/utils/memory/stl/AWSString.h>
  9. #include <aws/core/utils/memory/stl/AWSVector.h>
  10. #include <aws/rds/model/Tag.h>
  11. #include <utility>
  12. namespace Aws
  13. {
  14. namespace RDS
  15. {
  16. namespace Model
  17. {
  18. /**
  19. * <p/><p><h3>See Also:</h3> <a
  20. * href="http://docs.aws.amazon.com/goto/WebAPI/rds-2014-10-31/CreateDBParameterGroupMessage">AWS
  21. * API Reference</a></p>
  22. */
  23. class AWS_RDS_API CreateDBParameterGroupRequest : public RDSRequest
  24. {
  25. public:
  26. CreateDBParameterGroupRequest();
  27. // Service request name is the Operation name which will send this request out,
  28. // each operation should has unique request name, so that we can get operation's name from this request.
  29. // Note: this is not true for response, multiple operations may have the same response name,
  30. // so we can not get operation's name from response.
  31. inline virtual const char* GetServiceRequestName() const override { return "CreateDBParameterGroup"; }
  32. Aws::String SerializePayload() const override;
  33. protected:
  34. void DumpBodyToUrl(Aws::Http::URI& uri ) const override;
  35. public:
  36. /**
  37. * <p>The name of the DB parameter group.</p> <p>Constraints:</p> <ul> <li> <p>Must
  38. * be 1 to 255 letters, numbers, or hyphens.</p> </li> <li> <p>First character must
  39. * be a letter</p> </li> <li> <p>Can't end with a hyphen or contain two consecutive
  40. * hyphens</p> </li> </ul> <p>This value is stored as a lowercase
  41. * string.</p>
  42. */
  43. inline const Aws::String& GetDBParameterGroupName() const{ return m_dBParameterGroupName; }
  44. /**
  45. * <p>The name of the DB parameter group.</p> <p>Constraints:</p> <ul> <li> <p>Must
  46. * be 1 to 255 letters, numbers, or hyphens.</p> </li> <li> <p>First character must
  47. * be a letter</p> </li> <li> <p>Can't end with a hyphen or contain two consecutive
  48. * hyphens</p> </li> </ul> <p>This value is stored as a lowercase
  49. * string.</p>
  50. */
  51. inline bool DBParameterGroupNameHasBeenSet() const { return m_dBParameterGroupNameHasBeenSet; }
  52. /**
  53. * <p>The name of the DB parameter group.</p> <p>Constraints:</p> <ul> <li> <p>Must
  54. * be 1 to 255 letters, numbers, or hyphens.</p> </li> <li> <p>First character must
  55. * be a letter</p> </li> <li> <p>Can't end with a hyphen or contain two consecutive
  56. * hyphens</p> </li> </ul> <p>This value is stored as a lowercase
  57. * string.</p>
  58. */
  59. inline void SetDBParameterGroupName(const Aws::String& value) { m_dBParameterGroupNameHasBeenSet = true; m_dBParameterGroupName = value; }
  60. /**
  61. * <p>The name of the DB parameter group.</p> <p>Constraints:</p> <ul> <li> <p>Must
  62. * be 1 to 255 letters, numbers, or hyphens.</p> </li> <li> <p>First character must
  63. * be a letter</p> </li> <li> <p>Can't end with a hyphen or contain two consecutive
  64. * hyphens</p> </li> </ul> <p>This value is stored as a lowercase
  65. * string.</p>
  66. */
  67. inline void SetDBParameterGroupName(Aws::String&& value) { m_dBParameterGroupNameHasBeenSet = true; m_dBParameterGroupName = std::move(value); }
  68. /**
  69. * <p>The name of the DB parameter group.</p> <p>Constraints:</p> <ul> <li> <p>Must
  70. * be 1 to 255 letters, numbers, or hyphens.</p> </li> <li> <p>First character must
  71. * be a letter</p> </li> <li> <p>Can't end with a hyphen or contain two consecutive
  72. * hyphens</p> </li> </ul> <p>This value is stored as a lowercase
  73. * string.</p>
  74. */
  75. inline void SetDBParameterGroupName(const char* value) { m_dBParameterGroupNameHasBeenSet = true; m_dBParameterGroupName.assign(value); }
  76. /**
  77. * <p>The name of the DB parameter group.</p> <p>Constraints:</p> <ul> <li> <p>Must
  78. * be 1 to 255 letters, numbers, or hyphens.</p> </li> <li> <p>First character must
  79. * be a letter</p> </li> <li> <p>Can't end with a hyphen or contain two consecutive
  80. * hyphens</p> </li> </ul> <p>This value is stored as a lowercase
  81. * string.</p>
  82. */
  83. inline CreateDBParameterGroupRequest& WithDBParameterGroupName(const Aws::String& value) { SetDBParameterGroupName(value); return *this;}
  84. /**
  85. * <p>The name of the DB parameter group.</p> <p>Constraints:</p> <ul> <li> <p>Must
  86. * be 1 to 255 letters, numbers, or hyphens.</p> </li> <li> <p>First character must
  87. * be a letter</p> </li> <li> <p>Can't end with a hyphen or contain two consecutive
  88. * hyphens</p> </li> </ul> <p>This value is stored as a lowercase
  89. * string.</p>
  90. */
  91. inline CreateDBParameterGroupRequest& WithDBParameterGroupName(Aws::String&& value) { SetDBParameterGroupName(std::move(value)); return *this;}
  92. /**
  93. * <p>The name of the DB parameter group.</p> <p>Constraints:</p> <ul> <li> <p>Must
  94. * be 1 to 255 letters, numbers, or hyphens.</p> </li> <li> <p>First character must
  95. * be a letter</p> </li> <li> <p>Can't end with a hyphen or contain two consecutive
  96. * hyphens</p> </li> </ul> <p>This value is stored as a lowercase
  97. * string.</p>
  98. */
  99. inline CreateDBParameterGroupRequest& WithDBParameterGroupName(const char* value) { SetDBParameterGroupName(value); return *this;}
  100. /**
  101. * <p>The DB parameter group family name. A DB parameter group can be associated
  102. * with one and only one DB parameter group family, and can be applied only to a DB
  103. * instance running a database engine and engine version compatible with that DB
  104. * parameter group family.</p> <p>To list all of the available parameter group
  105. * families, use the following command:</p> <p> <code>aws rds
  106. * describe-db-engine-versions --query
  107. * "DBEngineVersions[].DBParameterGroupFamily"</code> </p> <p>The output
  108. * contains duplicates.</p>
  109. */
  110. inline const Aws::String& GetDBParameterGroupFamily() const{ return m_dBParameterGroupFamily; }
  111. /**
  112. * <p>The DB parameter group family name. A DB parameter group can be associated
  113. * with one and only one DB parameter group family, and can be applied only to a DB
  114. * instance running a database engine and engine version compatible with that DB
  115. * parameter group family.</p> <p>To list all of the available parameter group
  116. * families, use the following command:</p> <p> <code>aws rds
  117. * describe-db-engine-versions --query
  118. * "DBEngineVersions[].DBParameterGroupFamily"</code> </p> <p>The output
  119. * contains duplicates.</p>
  120. */
  121. inline bool DBParameterGroupFamilyHasBeenSet() const { return m_dBParameterGroupFamilyHasBeenSet; }
  122. /**
  123. * <p>The DB parameter group family name. A DB parameter group can be associated
  124. * with one and only one DB parameter group family, and can be applied only to a DB
  125. * instance running a database engine and engine version compatible with that DB
  126. * parameter group family.</p> <p>To list all of the available parameter group
  127. * families, use the following command:</p> <p> <code>aws rds
  128. * describe-db-engine-versions --query
  129. * "DBEngineVersions[].DBParameterGroupFamily"</code> </p> <p>The output
  130. * contains duplicates.</p>
  131. */
  132. inline void SetDBParameterGroupFamily(const Aws::String& value) { m_dBParameterGroupFamilyHasBeenSet = true; m_dBParameterGroupFamily = value; }
  133. /**
  134. * <p>The DB parameter group family name. A DB parameter group can be associated
  135. * with one and only one DB parameter group family, and can be applied only to a DB
  136. * instance running a database engine and engine version compatible with that DB
  137. * parameter group family.</p> <p>To list all of the available parameter group
  138. * families, use the following command:</p> <p> <code>aws rds
  139. * describe-db-engine-versions --query
  140. * "DBEngineVersions[].DBParameterGroupFamily"</code> </p> <p>The output
  141. * contains duplicates.</p>
  142. */
  143. inline void SetDBParameterGroupFamily(Aws::String&& value) { m_dBParameterGroupFamilyHasBeenSet = true; m_dBParameterGroupFamily = std::move(value); }
  144. /**
  145. * <p>The DB parameter group family name. A DB parameter group can be associated
  146. * with one and only one DB parameter group family, and can be applied only to a DB
  147. * instance running a database engine and engine version compatible with that DB
  148. * parameter group family.</p> <p>To list all of the available parameter group
  149. * families, use the following command:</p> <p> <code>aws rds
  150. * describe-db-engine-versions --query
  151. * "DBEngineVersions[].DBParameterGroupFamily"</code> </p> <p>The output
  152. * contains duplicates.</p>
  153. */
  154. inline void SetDBParameterGroupFamily(const char* value) { m_dBParameterGroupFamilyHasBeenSet = true; m_dBParameterGroupFamily.assign(value); }
  155. /**
  156. * <p>The DB parameter group family name. A DB parameter group can be associated
  157. * with one and only one DB parameter group family, and can be applied only to a DB
  158. * instance running a database engine and engine version compatible with that DB
  159. * parameter group family.</p> <p>To list all of the available parameter group
  160. * families, use the following command:</p> <p> <code>aws rds
  161. * describe-db-engine-versions --query
  162. * "DBEngineVersions[].DBParameterGroupFamily"</code> </p> <p>The output
  163. * contains duplicates.</p>
  164. */
  165. inline CreateDBParameterGroupRequest& WithDBParameterGroupFamily(const Aws::String& value) { SetDBParameterGroupFamily(value); return *this;}
  166. /**
  167. * <p>The DB parameter group family name. A DB parameter group can be associated
  168. * with one and only one DB parameter group family, and can be applied only to a DB
  169. * instance running a database engine and engine version compatible with that DB
  170. * parameter group family.</p> <p>To list all of the available parameter group
  171. * families, use the following command:</p> <p> <code>aws rds
  172. * describe-db-engine-versions --query
  173. * "DBEngineVersions[].DBParameterGroupFamily"</code> </p> <p>The output
  174. * contains duplicates.</p>
  175. */
  176. inline CreateDBParameterGroupRequest& WithDBParameterGroupFamily(Aws::String&& value) { SetDBParameterGroupFamily(std::move(value)); return *this;}
  177. /**
  178. * <p>The DB parameter group family name. A DB parameter group can be associated
  179. * with one and only one DB parameter group family, and can be applied only to a DB
  180. * instance running a database engine and engine version compatible with that DB
  181. * parameter group family.</p> <p>To list all of the available parameter group
  182. * families, use the following command:</p> <p> <code>aws rds
  183. * describe-db-engine-versions --query
  184. * "DBEngineVersions[].DBParameterGroupFamily"</code> </p> <p>The output
  185. * contains duplicates.</p>
  186. */
  187. inline CreateDBParameterGroupRequest& WithDBParameterGroupFamily(const char* value) { SetDBParameterGroupFamily(value); return *this;}
  188. /**
  189. * <p>The description for the DB parameter group.</p>
  190. */
  191. inline const Aws::String& GetDescription() const{ return m_description; }
  192. /**
  193. * <p>The description for the DB parameter group.</p>
  194. */
  195. inline bool DescriptionHasBeenSet() const { return m_descriptionHasBeenSet; }
  196. /**
  197. * <p>The description for the DB parameter group.</p>
  198. */
  199. inline void SetDescription(const Aws::String& value) { m_descriptionHasBeenSet = true; m_description = value; }
  200. /**
  201. * <p>The description for the DB parameter group.</p>
  202. */
  203. inline void SetDescription(Aws::String&& value) { m_descriptionHasBeenSet = true; m_description = std::move(value); }
  204. /**
  205. * <p>The description for the DB parameter group.</p>
  206. */
  207. inline void SetDescription(const char* value) { m_descriptionHasBeenSet = true; m_description.assign(value); }
  208. /**
  209. * <p>The description for the DB parameter group.</p>
  210. */
  211. inline CreateDBParameterGroupRequest& WithDescription(const Aws::String& value) { SetDescription(value); return *this;}
  212. /**
  213. * <p>The description for the DB parameter group.</p>
  214. */
  215. inline CreateDBParameterGroupRequest& WithDescription(Aws::String&& value) { SetDescription(std::move(value)); return *this;}
  216. /**
  217. * <p>The description for the DB parameter group.</p>
  218. */
  219. inline CreateDBParameterGroupRequest& WithDescription(const char* value) { SetDescription(value); return *this;}
  220. /**
  221. * <p>Tags to assign to the DB parameter group.</p>
  222. */
  223. inline const Aws::Vector<Tag>& GetTags() const{ return m_tags; }
  224. /**
  225. * <p>Tags to assign to the DB parameter group.</p>
  226. */
  227. inline bool TagsHasBeenSet() const { return m_tagsHasBeenSet; }
  228. /**
  229. * <p>Tags to assign to the DB parameter group.</p>
  230. */
  231. inline void SetTags(const Aws::Vector<Tag>& value) { m_tagsHasBeenSet = true; m_tags = value; }
  232. /**
  233. * <p>Tags to assign to the DB parameter group.</p>
  234. */
  235. inline void SetTags(Aws::Vector<Tag>&& value) { m_tagsHasBeenSet = true; m_tags = std::move(value); }
  236. /**
  237. * <p>Tags to assign to the DB parameter group.</p>
  238. */
  239. inline CreateDBParameterGroupRequest& WithTags(const Aws::Vector<Tag>& value) { SetTags(value); return *this;}
  240. /**
  241. * <p>Tags to assign to the DB parameter group.</p>
  242. */
  243. inline CreateDBParameterGroupRequest& WithTags(Aws::Vector<Tag>&& value) { SetTags(std::move(value)); return *this;}
  244. /**
  245. * <p>Tags to assign to the DB parameter group.</p>
  246. */
  247. inline CreateDBParameterGroupRequest& AddTags(const Tag& value) { m_tagsHasBeenSet = true; m_tags.push_back(value); return *this; }
  248. /**
  249. * <p>Tags to assign to the DB parameter group.</p>
  250. */
  251. inline CreateDBParameterGroupRequest& AddTags(Tag&& value) { m_tagsHasBeenSet = true; m_tags.push_back(std::move(value)); return *this; }
  252. private:
  253. Aws::String m_dBParameterGroupName;
  254. bool m_dBParameterGroupNameHasBeenSet;
  255. Aws::String m_dBParameterGroupFamily;
  256. bool m_dBParameterGroupFamilyHasBeenSet;
  257. Aws::String m_description;
  258. bool m_descriptionHasBeenSet;
  259. Aws::Vector<Tag> m_tags;
  260. bool m_tagsHasBeenSet;
  261. };
  262. } // namespace Model
  263. } // namespace RDS
  264. } // namespace Aws