Просмотр исходного кода

GPDB SDK Auto Released By shenshi,Version:1.34.20

Signed-off-by: haowei.yao <haowei.yao@alibaba-inc.com>
haowei.yao 7 лет назад
Родитель
Сommit
996c9b497a
100 измененных файлов с 7833 добавлено и 2 удалено
  1. 3 0
      CHANGELOG
  2. 2 1
      CMakeLists.txt
  3. 1 1
      VERSION
  4. 222 0
      gpdb/CMakeLists.txt
  5. 326 0
      gpdb/include/alibabacloud/gpdb/GpdbClient.h
  6. 32 0
      gpdb/include/alibabacloud/gpdb/GpdbExport.h
  7. 57 0
      gpdb/include/alibabacloud/gpdb/model/AddBuDBInstanceRelationRequest.h
  8. 53 0
      gpdb/include/alibabacloud/gpdb/model/AddBuDBInstanceRelationResult.h
  9. 66 0
      gpdb/include/alibabacloud/gpdb/model/AllocateInstancePublicConnectionRequest.h
  10. 49 0
      gpdb/include/alibabacloud/gpdb/model/AllocateInstancePublicConnectionResult.h
  11. 66 0
      gpdb/include/alibabacloud/gpdb/model/CreateAccountRequest.h
  12. 49 0
      gpdb/include/alibabacloud/gpdb/model/CreateAccountResult.h
  13. 99 0
      gpdb/include/alibabacloud/gpdb/model/CreateDBInstanceRequest.h
  14. 57 0
      gpdb/include/alibabacloud/gpdb/model/CreateDBInstanceResult.h
  15. 57 0
      gpdb/include/alibabacloud/gpdb/model/DeleteDBInstanceRequest.h
  16. 49 0
      gpdb/include/alibabacloud/gpdb/model/DeleteDBInstanceResult.h
  17. 54 0
      gpdb/include/alibabacloud/gpdb/model/DeleteDatabaseRequest.h
  18. 49 0
      gpdb/include/alibabacloud/gpdb/model/DeleteDatabaseResult.h
  19. 54 0
      gpdb/include/alibabacloud/gpdb/model/DescribeAccountsRequest.h
  20. 58 0
      gpdb/include/alibabacloud/gpdb/model/DescribeAccountsResult.h
  21. 54 0
      gpdb/include/alibabacloud/gpdb/model/DescribeDBInstanceAttributeRequest.h
  22. 92 0
      gpdb/include/alibabacloud/gpdb/model/DescribeDBInstanceAttributeResult.h
  23. 51 0
      gpdb/include/alibabacloud/gpdb/model/DescribeDBInstanceIPArrayListRequest.h
  24. 57 0
      gpdb/include/alibabacloud/gpdb/model/DescribeDBInstanceIPArrayListResult.h
  25. 51 0
      gpdb/include/alibabacloud/gpdb/model/DescribeDBInstanceNetInfoRequest.h
  26. 62 0
      gpdb/include/alibabacloud/gpdb/model/DescribeDBInstanceNetInfoResult.h
  27. 60 0
      gpdb/include/alibabacloud/gpdb/model/DescribeDBInstancePerformanceRequest.h
  28. 59 0
      gpdb/include/alibabacloud/gpdb/model/DescribeDBInstancePerformanceResult.h
  29. 77 0
      gpdb/include/alibabacloud/gpdb/model/DescribeDBInstancesRequest.h
  30. 83 0
      gpdb/include/alibabacloud/gpdb/model/DescribeDBInstancesResult.h
  31. 72 0
      gpdb/include/alibabacloud/gpdb/model/DescribeRdsVSwitchsRequest.h
  32. 69 0
      gpdb/include/alibabacloud/gpdb/model/DescribeRdsVSwitchsResult.h
  33. 69 0
      gpdb/include/alibabacloud/gpdb/model/DescribeRdsVpcsRequest.h
  34. 80 0
      gpdb/include/alibabacloud/gpdb/model/DescribeRdsVpcsResult.h
  35. 48 0
      gpdb/include/alibabacloud/gpdb/model/DescribeRegionsRequest.h
  36. 61 0
      gpdb/include/alibabacloud/gpdb/model/DescribeRegionsResult.h
  37. 51 0
      gpdb/include/alibabacloud/gpdb/model/DescribeResourceUsageRequest.h
  38. 61 0
      gpdb/include/alibabacloud/gpdb/model/DescribeResourceUsageResult.h
  39. 51 0
      gpdb/include/alibabacloud/gpdb/model/DescribeSQLCollectorPolicyRequest.h
  40. 51 0
      gpdb/include/alibabacloud/gpdb/model/DescribeSQLCollectorPolicyResult.h
  41. 60 0
      gpdb/include/alibabacloud/gpdb/model/DescribeSQLLogFilesRequest.h
  42. 66 0
      gpdb/include/alibabacloud/gpdb/model/DescribeSQLLogFilesResult.h
  43. 75 0
      gpdb/include/alibabacloud/gpdb/model/DescribeSQLLogRecordsRequest.h
  44. 68 0
      gpdb/include/alibabacloud/gpdb/model/DescribeSQLLogRecordsResult.h
  45. 69 0
      gpdb/include/alibabacloud/gpdb/model/DescribeSlowLogRecordsRequest.h
  46. 70 0
      gpdb/include/alibabacloud/gpdb/model/DescribeSlowLogRecordsResult.h
  47. 80 0
      gpdb/include/alibabacloud/gpdb/model/ListTagResourcesRequest.h
  48. 60 0
      gpdb/include/alibabacloud/gpdb/model/ListTagResourcesResult.h
  49. 57 0
      gpdb/include/alibabacloud/gpdb/model/ModifyAccountDescriptionRequest.h
  50. 49 0
      gpdb/include/alibabacloud/gpdb/model/ModifyAccountDescriptionResult.h
  51. 54 0
      gpdb/include/alibabacloud/gpdb/model/ModifyDBInstanceConnectionModeRequest.h
  52. 49 0
      gpdb/include/alibabacloud/gpdb/model/ModifyDBInstanceConnectionModeResult.h
  53. 60 0
      gpdb/include/alibabacloud/gpdb/model/ModifyDBInstanceConnectionStringRequest.h
  54. 49 0
      gpdb/include/alibabacloud/gpdb/model/ModifyDBInstanceConnectionStringResult.h
  55. 54 0
      gpdb/include/alibabacloud/gpdb/model/ModifyDBInstanceDescriptionRequest.h
  56. 49 0
      gpdb/include/alibabacloud/gpdb/model/ModifyDBInstanceDescriptionResult.h
  57. 57 0
      gpdb/include/alibabacloud/gpdb/model/ModifyDBInstanceMaintainTimeRequest.h
  58. 49 0
      gpdb/include/alibabacloud/gpdb/model/ModifyDBInstanceMaintainTimeResult.h
  59. 63 0
      gpdb/include/alibabacloud/gpdb/model/ModifyDBInstanceNetworkTypeRequest.h
  60. 49 0
      gpdb/include/alibabacloud/gpdb/model/ModifyDBInstanceNetworkTypeResult.h
  61. 54 0
      gpdb/include/alibabacloud/gpdb/model/ModifySQLCollectorPolicyRequest.h
  62. 49 0
      gpdb/include/alibabacloud/gpdb/model/ModifySQLCollectorPolicyResult.h
  63. 60 0
      gpdb/include/alibabacloud/gpdb/model/ModifySecurityIpsRequest.h
  64. 49 0
      gpdb/include/alibabacloud/gpdb/model/ModifySecurityIpsResult.h
  65. 54 0
      gpdb/include/alibabacloud/gpdb/model/ReleaseInstancePublicConnectionRequest.h
  66. 49 0
      gpdb/include/alibabacloud/gpdb/model/ReleaseInstancePublicConnectionResult.h
  67. 57 0
      gpdb/include/alibabacloud/gpdb/model/ResetAccountPasswordRequest.h
  68. 49 0
      gpdb/include/alibabacloud/gpdb/model/ResetAccountPasswordResult.h
  69. 54 0
      gpdb/include/alibabacloud/gpdb/model/RestartDBInstanceRequest.h
  70. 49 0
      gpdb/include/alibabacloud/gpdb/model/RestartDBInstanceResult.h
  71. 57 0
      gpdb/include/alibabacloud/gpdb/model/SwitchDBInstanceNetTypeRequest.h
  72. 49 0
      gpdb/include/alibabacloud/gpdb/model/SwitchDBInstanceNetTypeResult.h
  73. 77 0
      gpdb/include/alibabacloud/gpdb/model/TagResourcesRequest.h
  74. 49 0
      gpdb/include/alibabacloud/gpdb/model/TagResourcesResult.h
  75. 75 0
      gpdb/include/alibabacloud/gpdb/model/UntagResourcesRequest.h
  76. 49 0
      gpdb/include/alibabacloud/gpdb/model/UntagResourcesResult.h
  77. 1313 0
      gpdb/src/GpdbClient.cc
  78. 71 0
      gpdb/src/model/AddBuDBInstanceRelationRequest.cc
  79. 59 0
      gpdb/src/model/AddBuDBInstanceRelationResult.cc
  80. 104 0
      gpdb/src/model/AllocateInstancePublicConnectionRequest.cc
  81. 45 0
      gpdb/src/model/AllocateInstancePublicConnectionResult.cc
  82. 104 0
      gpdb/src/model/CreateAccountRequest.cc
  83. 45 0
      gpdb/src/model/CreateAccountResult.cc
  84. 225 0
      gpdb/src/model/CreateDBInstanceRequest.cc
  85. 73 0
      gpdb/src/model/CreateDBInstanceResult.cc
  86. 71 0
      gpdb/src/model/DeleteDBInstanceRequest.cc
  87. 45 0
      gpdb/src/model/DeleteDBInstanceResult.cc
  88. 60 0
      gpdb/src/model/DeleteDatabaseRequest.cc
  89. 45 0
      gpdb/src/model/DeleteDatabaseResult.cc
  90. 60 0
      gpdb/src/model/DescribeAccountsRequest.cc
  91. 64 0
      gpdb/src/model/DescribeAccountsResult.cc
  92. 60 0
      gpdb/src/model/DescribeDBInstanceAttributeRequest.cc
  93. 130 0
      gpdb/src/model/DescribeDBInstanceAttributeResult.cc
  94. 49 0
      gpdb/src/model/DescribeDBInstanceIPArrayListRequest.cc
  95. 62 0
      gpdb/src/model/DescribeDBInstanceIPArrayListResult.cc
  96. 49 0
      gpdb/src/model/DescribeDBInstanceNetInfoRequest.cc
  97. 75 0
      gpdb/src/model/DescribeDBInstanceNetInfoResult.cc
  98. 82 0
      gpdb/src/model/DescribeDBInstancePerformanceRequest.cc
  99. 81 0
      gpdb/src/model/DescribeDBInstancePerformanceResult.cc
  100. 132 0
      gpdb/src/model/DescribeDBInstancesRequest.cc

+ 3 - 0
CHANGELOG

@@ -1,3 +1,6 @@
+2019-03-14 Version: 1.34.20
+1,  Update Dependency
+
 2019-03-14 Version: 1.34.19
 1, Update Dependency
 

+ 2 - 1
CMakeLists.txt

@@ -96,4 +96,5 @@ add_subdirectory(jarvis-public)
 add_subdirectory(cbn)
 add_subdirectory(emr)
 add_subdirectory(ram)
-add_subdirectory(sts)
+add_subdirectory(sts)
+add_subdirectory(gpdb)

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.34.19
+1.34.20

+ 222 - 0
gpdb/CMakeLists.txt

@@ -0,0 +1,222 @@
+#
+# Copyright 2009-2017 Alibaba Cloud All rights reserved.
+# 
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# 
+#      http://www.apache.org/licenses/LICENSE-2.0
+# 
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+set(public_header_dir ${CMAKE_CURRENT_SOURCE_DIR}/../include)
+
+set(gpdb_public_header 
+	include/alibabacloud/gpdb/GpdbClient.h
+	include/alibabacloud/gpdb/GpdbExport.h )
+
+set(gpdb_public_header_model 
+	include/alibabacloud/gpdb/model/ModifyDBInstanceMaintainTimeRequest.h
+	include/alibabacloud/gpdb/model/ModifyDBInstanceMaintainTimeResult.h
+	include/alibabacloud/gpdb/model/ModifyDBInstanceDescriptionRequest.h
+	include/alibabacloud/gpdb/model/ModifyDBInstanceDescriptionResult.h
+	include/alibabacloud/gpdb/model/DescribeDBInstancePerformanceRequest.h
+	include/alibabacloud/gpdb/model/DescribeDBInstancePerformanceResult.h
+	include/alibabacloud/gpdb/model/ListTagResourcesRequest.h
+	include/alibabacloud/gpdb/model/ListTagResourcesResult.h
+	include/alibabacloud/gpdb/model/DescribeDBInstancesRequest.h
+	include/alibabacloud/gpdb/model/DescribeDBInstancesResult.h
+	include/alibabacloud/gpdb/model/UntagResourcesRequest.h
+	include/alibabacloud/gpdb/model/UntagResourcesResult.h
+	include/alibabacloud/gpdb/model/SwitchDBInstanceNetTypeRequest.h
+	include/alibabacloud/gpdb/model/SwitchDBInstanceNetTypeResult.h
+	include/alibabacloud/gpdb/model/AllocateInstancePublicConnectionRequest.h
+	include/alibabacloud/gpdb/model/AllocateInstancePublicConnectionResult.h
+	include/alibabacloud/gpdb/model/DescribeDBInstanceAttributeRequest.h
+	include/alibabacloud/gpdb/model/DescribeDBInstanceAttributeResult.h
+	include/alibabacloud/gpdb/model/ModifyAccountDescriptionRequest.h
+	include/alibabacloud/gpdb/model/ModifyAccountDescriptionResult.h
+	include/alibabacloud/gpdb/model/DescribeResourceUsageRequest.h
+	include/alibabacloud/gpdb/model/DescribeResourceUsageResult.h
+	include/alibabacloud/gpdb/model/DescribeSQLCollectorPolicyRequest.h
+	include/alibabacloud/gpdb/model/DescribeSQLCollectorPolicyResult.h
+	include/alibabacloud/gpdb/model/ModifySQLCollectorPolicyRequest.h
+	include/alibabacloud/gpdb/model/ModifySQLCollectorPolicyResult.h
+	include/alibabacloud/gpdb/model/CreateDBInstanceRequest.h
+	include/alibabacloud/gpdb/model/CreateDBInstanceResult.h
+	include/alibabacloud/gpdb/model/DescribeRdsVpcsRequest.h
+	include/alibabacloud/gpdb/model/DescribeRdsVpcsResult.h
+	include/alibabacloud/gpdb/model/DescribeRegionsRequest.h
+	include/alibabacloud/gpdb/model/DescribeRegionsResult.h
+	include/alibabacloud/gpdb/model/ModifyDBInstanceConnectionStringRequest.h
+	include/alibabacloud/gpdb/model/ModifyDBInstanceConnectionStringResult.h
+	include/alibabacloud/gpdb/model/DeleteDBInstanceRequest.h
+	include/alibabacloud/gpdb/model/DeleteDBInstanceResult.h
+	include/alibabacloud/gpdb/model/DescribeSlowLogRecordsRequest.h
+	include/alibabacloud/gpdb/model/DescribeSlowLogRecordsResult.h
+	include/alibabacloud/gpdb/model/ModifyDBInstanceConnectionModeRequest.h
+	include/alibabacloud/gpdb/model/ModifyDBInstanceConnectionModeResult.h
+	include/alibabacloud/gpdb/model/RestartDBInstanceRequest.h
+	include/alibabacloud/gpdb/model/RestartDBInstanceResult.h
+	include/alibabacloud/gpdb/model/DescribeDBInstanceNetInfoRequest.h
+	include/alibabacloud/gpdb/model/DescribeDBInstanceNetInfoResult.h
+	include/alibabacloud/gpdb/model/AddBuDBInstanceRelationRequest.h
+	include/alibabacloud/gpdb/model/AddBuDBInstanceRelationResult.h
+	include/alibabacloud/gpdb/model/DescribeRdsVSwitchsRequest.h
+	include/alibabacloud/gpdb/model/DescribeRdsVSwitchsResult.h
+	include/alibabacloud/gpdb/model/ResetAccountPasswordRequest.h
+	include/alibabacloud/gpdb/model/ResetAccountPasswordResult.h
+	include/alibabacloud/gpdb/model/CreateAccountRequest.h
+	include/alibabacloud/gpdb/model/CreateAccountResult.h
+	include/alibabacloud/gpdb/model/DescribeAccountsRequest.h
+	include/alibabacloud/gpdb/model/DescribeAccountsResult.h
+	include/alibabacloud/gpdb/model/DescribeSQLLogRecordsRequest.h
+	include/alibabacloud/gpdb/model/DescribeSQLLogRecordsResult.h
+	include/alibabacloud/gpdb/model/ModifySecurityIpsRequest.h
+	include/alibabacloud/gpdb/model/ModifySecurityIpsResult.h
+	include/alibabacloud/gpdb/model/ReleaseInstancePublicConnectionRequest.h
+	include/alibabacloud/gpdb/model/ReleaseInstancePublicConnectionResult.h
+	include/alibabacloud/gpdb/model/DescribeSQLLogFilesRequest.h
+	include/alibabacloud/gpdb/model/DescribeSQLLogFilesResult.h
+	include/alibabacloud/gpdb/model/ModifyDBInstanceNetworkTypeRequest.h
+	include/alibabacloud/gpdb/model/ModifyDBInstanceNetworkTypeResult.h
+	include/alibabacloud/gpdb/model/TagResourcesRequest.h
+	include/alibabacloud/gpdb/model/TagResourcesResult.h
+	include/alibabacloud/gpdb/model/DeleteDatabaseRequest.h
+	include/alibabacloud/gpdb/model/DeleteDatabaseResult.h
+	include/alibabacloud/gpdb/model/DescribeDBInstanceIPArrayListRequest.h
+	include/alibabacloud/gpdb/model/DescribeDBInstanceIPArrayListResult.h )
+
+set(gpdb_src 
+	src/GpdbClient.cc
+	src/model/ModifyDBInstanceMaintainTimeRequest.cc
+	src/model/ModifyDBInstanceMaintainTimeResult.cc
+	src/model/ModifyDBInstanceDescriptionRequest.cc
+	src/model/ModifyDBInstanceDescriptionResult.cc
+	src/model/DescribeDBInstancePerformanceRequest.cc
+	src/model/DescribeDBInstancePerformanceResult.cc
+	src/model/ListTagResourcesRequest.cc
+	src/model/ListTagResourcesResult.cc
+	src/model/DescribeDBInstancesRequest.cc
+	src/model/DescribeDBInstancesResult.cc
+	src/model/UntagResourcesRequest.cc
+	src/model/UntagResourcesResult.cc
+	src/model/SwitchDBInstanceNetTypeRequest.cc
+	src/model/SwitchDBInstanceNetTypeResult.cc
+	src/model/AllocateInstancePublicConnectionRequest.cc
+	src/model/AllocateInstancePublicConnectionResult.cc
+	src/model/DescribeDBInstanceAttributeRequest.cc
+	src/model/DescribeDBInstanceAttributeResult.cc
+	src/model/ModifyAccountDescriptionRequest.cc
+	src/model/ModifyAccountDescriptionResult.cc
+	src/model/DescribeResourceUsageRequest.cc
+	src/model/DescribeResourceUsageResult.cc
+	src/model/DescribeSQLCollectorPolicyRequest.cc
+	src/model/DescribeSQLCollectorPolicyResult.cc
+	src/model/ModifySQLCollectorPolicyRequest.cc
+	src/model/ModifySQLCollectorPolicyResult.cc
+	src/model/CreateDBInstanceRequest.cc
+	src/model/CreateDBInstanceResult.cc
+	src/model/DescribeRdsVpcsRequest.cc
+	src/model/DescribeRdsVpcsResult.cc
+	src/model/DescribeRegionsRequest.cc
+	src/model/DescribeRegionsResult.cc
+	src/model/ModifyDBInstanceConnectionStringRequest.cc
+	src/model/ModifyDBInstanceConnectionStringResult.cc
+	src/model/DeleteDBInstanceRequest.cc
+	src/model/DeleteDBInstanceResult.cc
+	src/model/DescribeSlowLogRecordsRequest.cc
+	src/model/DescribeSlowLogRecordsResult.cc
+	src/model/ModifyDBInstanceConnectionModeRequest.cc
+	src/model/ModifyDBInstanceConnectionModeResult.cc
+	src/model/RestartDBInstanceRequest.cc
+	src/model/RestartDBInstanceResult.cc
+	src/model/DescribeDBInstanceNetInfoRequest.cc
+	src/model/DescribeDBInstanceNetInfoResult.cc
+	src/model/AddBuDBInstanceRelationRequest.cc
+	src/model/AddBuDBInstanceRelationResult.cc
+	src/model/DescribeRdsVSwitchsRequest.cc
+	src/model/DescribeRdsVSwitchsResult.cc
+	src/model/ResetAccountPasswordRequest.cc
+	src/model/ResetAccountPasswordResult.cc
+	src/model/CreateAccountRequest.cc
+	src/model/CreateAccountResult.cc
+	src/model/DescribeAccountsRequest.cc
+	src/model/DescribeAccountsResult.cc
+	src/model/DescribeSQLLogRecordsRequest.cc
+	src/model/DescribeSQLLogRecordsResult.cc
+	src/model/ModifySecurityIpsRequest.cc
+	src/model/ModifySecurityIpsResult.cc
+	src/model/ReleaseInstancePublicConnectionRequest.cc
+	src/model/ReleaseInstancePublicConnectionResult.cc
+	src/model/DescribeSQLLogFilesRequest.cc
+	src/model/DescribeSQLLogFilesResult.cc
+	src/model/ModifyDBInstanceNetworkTypeRequest.cc
+	src/model/ModifyDBInstanceNetworkTypeResult.cc
+	src/model/TagResourcesRequest.cc
+	src/model/TagResourcesResult.cc
+	src/model/DeleteDatabaseRequest.cc
+	src/model/DeleteDatabaseResult.cc
+	src/model/DescribeDBInstanceIPArrayListRequest.cc
+	src/model/DescribeDBInstanceIPArrayListResult.cc )
+
+add_library(gpdb ${LIB_TYPE}
+	${gpdb_public_header}
+	${gpdb_public_header_model}
+	${gpdb_src})
+
+set_target_properties(gpdb
+	PROPERTIES
+	LINKER_LANGUAGE CXX
+	ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib
+	LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib
+	RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin
+	OUTPUT_NAME ${TARGET_OUTPUT_NAME_PREFIX}gpdb
+	)
+
+if(${LIB_TYPE} STREQUAL "SHARED")
+	set_target_properties(gpdb
+		PROPERTIES
+		DEFINE_SYMBOL ALIBABACLOUD_GPDB_LIBRARY)
+endif()
+
+target_include_directories(gpdb
+	PRIVATE include
+		${CMAKE_SOURCE_DIR}/core/include
+	)
+target_link_libraries(gpdb
+	core)
+
+if(CMAKE_HOST_WIN32)
+	ExternalProject_Get_Property(jsoncpp INSTALL_DIR)
+	set(jsoncpp_install_dir ${INSTALL_DIR})
+	add_dependencies(gpdb
+		jsoncpp)
+	target_include_directories(gpdb
+		PRIVATE	${jsoncpp_install_dir}/include)
+	target_link_libraries(gpdb
+		${jsoncpp_install_dir}/lib/jsoncpp.lib)
+	set_target_properties(gpdb
+    	PROPERTIES
+    		COMPILE_OPTIONS "/bigobj")
+else()
+	target_include_directories(gpdb
+		PRIVATE /usr/include/jsoncpp)
+	target_link_libraries(gpdb
+		jsoncpp)
+endif()
+
+install(FILES ${gpdb_public_header}
+	DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/alibabacloud/gpdb)
+install(FILES ${gpdb_public_header_model}
+	DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/alibabacloud/gpdb/model)
+install(TARGETS gpdb
+	ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+	LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+	RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+	)

+ 326 - 0
gpdb/include/alibabacloud/gpdb/GpdbClient.h

@@ -0,0 +1,326 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_GPDBCLIENT_H_
+#define ALIBABACLOUD_GPDB_GPDBCLIENT_H_
+
+#include <future>
+#include <alibabacloud/core/AsyncCallerContext.h>
+#include <alibabacloud/core/EndpointProvider.h>
+#include <alibabacloud/core/RpcServiceClient.h>
+#include "GpdbExport.h"
+#include "model/ModifyDBInstanceMaintainTimeRequest.h"
+#include "model/ModifyDBInstanceMaintainTimeResult.h"
+#include "model/ModifyDBInstanceDescriptionRequest.h"
+#include "model/ModifyDBInstanceDescriptionResult.h"
+#include "model/DescribeDBInstancePerformanceRequest.h"
+#include "model/DescribeDBInstancePerformanceResult.h"
+#include "model/ListTagResourcesRequest.h"
+#include "model/ListTagResourcesResult.h"
+#include "model/DescribeDBInstancesRequest.h"
+#include "model/DescribeDBInstancesResult.h"
+#include "model/UntagResourcesRequest.h"
+#include "model/UntagResourcesResult.h"
+#include "model/SwitchDBInstanceNetTypeRequest.h"
+#include "model/SwitchDBInstanceNetTypeResult.h"
+#include "model/AllocateInstancePublicConnectionRequest.h"
+#include "model/AllocateInstancePublicConnectionResult.h"
+#include "model/DescribeDBInstanceAttributeRequest.h"
+#include "model/DescribeDBInstanceAttributeResult.h"
+#include "model/ModifyAccountDescriptionRequest.h"
+#include "model/ModifyAccountDescriptionResult.h"
+#include "model/DescribeResourceUsageRequest.h"
+#include "model/DescribeResourceUsageResult.h"
+#include "model/DescribeSQLCollectorPolicyRequest.h"
+#include "model/DescribeSQLCollectorPolicyResult.h"
+#include "model/ModifySQLCollectorPolicyRequest.h"
+#include "model/ModifySQLCollectorPolicyResult.h"
+#include "model/CreateDBInstanceRequest.h"
+#include "model/CreateDBInstanceResult.h"
+#include "model/DescribeRdsVpcsRequest.h"
+#include "model/DescribeRdsVpcsResult.h"
+#include "model/DescribeRegionsRequest.h"
+#include "model/DescribeRegionsResult.h"
+#include "model/ModifyDBInstanceConnectionStringRequest.h"
+#include "model/ModifyDBInstanceConnectionStringResult.h"
+#include "model/DeleteDBInstanceRequest.h"
+#include "model/DeleteDBInstanceResult.h"
+#include "model/DescribeSlowLogRecordsRequest.h"
+#include "model/DescribeSlowLogRecordsResult.h"
+#include "model/ModifyDBInstanceConnectionModeRequest.h"
+#include "model/ModifyDBInstanceConnectionModeResult.h"
+#include "model/RestartDBInstanceRequest.h"
+#include "model/RestartDBInstanceResult.h"
+#include "model/DescribeDBInstanceNetInfoRequest.h"
+#include "model/DescribeDBInstanceNetInfoResult.h"
+#include "model/AddBuDBInstanceRelationRequest.h"
+#include "model/AddBuDBInstanceRelationResult.h"
+#include "model/DescribeRdsVSwitchsRequest.h"
+#include "model/DescribeRdsVSwitchsResult.h"
+#include "model/ResetAccountPasswordRequest.h"
+#include "model/ResetAccountPasswordResult.h"
+#include "model/CreateAccountRequest.h"
+#include "model/CreateAccountResult.h"
+#include "model/DescribeAccountsRequest.h"
+#include "model/DescribeAccountsResult.h"
+#include "model/DescribeSQLLogRecordsRequest.h"
+#include "model/DescribeSQLLogRecordsResult.h"
+#include "model/ModifySecurityIpsRequest.h"
+#include "model/ModifySecurityIpsResult.h"
+#include "model/ReleaseInstancePublicConnectionRequest.h"
+#include "model/ReleaseInstancePublicConnectionResult.h"
+#include "model/DescribeSQLLogFilesRequest.h"
+#include "model/DescribeSQLLogFilesResult.h"
+#include "model/ModifyDBInstanceNetworkTypeRequest.h"
+#include "model/ModifyDBInstanceNetworkTypeResult.h"
+#include "model/TagResourcesRequest.h"
+#include "model/TagResourcesResult.h"
+#include "model/DeleteDatabaseRequest.h"
+#include "model/DeleteDatabaseResult.h"
+#include "model/DescribeDBInstanceIPArrayListRequest.h"
+#include "model/DescribeDBInstanceIPArrayListResult.h"
+
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		class ALIBABACLOUD_GPDB_EXPORT GpdbClient : public RpcServiceClient
+		{
+		public:
+			typedef Outcome<Error, Model::ModifyDBInstanceMaintainTimeResult> ModifyDBInstanceMaintainTimeOutcome;
+			typedef std::future<ModifyDBInstanceMaintainTimeOutcome> ModifyDBInstanceMaintainTimeOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::ModifyDBInstanceMaintainTimeRequest&, const ModifyDBInstanceMaintainTimeOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyDBInstanceMaintainTimeAsyncHandler;
+			typedef Outcome<Error, Model::ModifyDBInstanceDescriptionResult> ModifyDBInstanceDescriptionOutcome;
+			typedef std::future<ModifyDBInstanceDescriptionOutcome> ModifyDBInstanceDescriptionOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::ModifyDBInstanceDescriptionRequest&, const ModifyDBInstanceDescriptionOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyDBInstanceDescriptionAsyncHandler;
+			typedef Outcome<Error, Model::DescribeDBInstancePerformanceResult> DescribeDBInstancePerformanceOutcome;
+			typedef std::future<DescribeDBInstancePerformanceOutcome> DescribeDBInstancePerformanceOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::DescribeDBInstancePerformanceRequest&, const DescribeDBInstancePerformanceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeDBInstancePerformanceAsyncHandler;
+			typedef Outcome<Error, Model::ListTagResourcesResult> ListTagResourcesOutcome;
+			typedef std::future<ListTagResourcesOutcome> ListTagResourcesOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::ListTagResourcesRequest&, const ListTagResourcesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListTagResourcesAsyncHandler;
+			typedef Outcome<Error, Model::DescribeDBInstancesResult> DescribeDBInstancesOutcome;
+			typedef std::future<DescribeDBInstancesOutcome> DescribeDBInstancesOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::DescribeDBInstancesRequest&, const DescribeDBInstancesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeDBInstancesAsyncHandler;
+			typedef Outcome<Error, Model::UntagResourcesResult> UntagResourcesOutcome;
+			typedef std::future<UntagResourcesOutcome> UntagResourcesOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::UntagResourcesRequest&, const UntagResourcesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UntagResourcesAsyncHandler;
+			typedef Outcome<Error, Model::SwitchDBInstanceNetTypeResult> SwitchDBInstanceNetTypeOutcome;
+			typedef std::future<SwitchDBInstanceNetTypeOutcome> SwitchDBInstanceNetTypeOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::SwitchDBInstanceNetTypeRequest&, const SwitchDBInstanceNetTypeOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SwitchDBInstanceNetTypeAsyncHandler;
+			typedef Outcome<Error, Model::AllocateInstancePublicConnectionResult> AllocateInstancePublicConnectionOutcome;
+			typedef std::future<AllocateInstancePublicConnectionOutcome> AllocateInstancePublicConnectionOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::AllocateInstancePublicConnectionRequest&, const AllocateInstancePublicConnectionOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AllocateInstancePublicConnectionAsyncHandler;
+			typedef Outcome<Error, Model::DescribeDBInstanceAttributeResult> DescribeDBInstanceAttributeOutcome;
+			typedef std::future<DescribeDBInstanceAttributeOutcome> DescribeDBInstanceAttributeOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::DescribeDBInstanceAttributeRequest&, const DescribeDBInstanceAttributeOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeDBInstanceAttributeAsyncHandler;
+			typedef Outcome<Error, Model::ModifyAccountDescriptionResult> ModifyAccountDescriptionOutcome;
+			typedef std::future<ModifyAccountDescriptionOutcome> ModifyAccountDescriptionOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::ModifyAccountDescriptionRequest&, const ModifyAccountDescriptionOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyAccountDescriptionAsyncHandler;
+			typedef Outcome<Error, Model::DescribeResourceUsageResult> DescribeResourceUsageOutcome;
+			typedef std::future<DescribeResourceUsageOutcome> DescribeResourceUsageOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::DescribeResourceUsageRequest&, const DescribeResourceUsageOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeResourceUsageAsyncHandler;
+			typedef Outcome<Error, Model::DescribeSQLCollectorPolicyResult> DescribeSQLCollectorPolicyOutcome;
+			typedef std::future<DescribeSQLCollectorPolicyOutcome> DescribeSQLCollectorPolicyOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::DescribeSQLCollectorPolicyRequest&, const DescribeSQLCollectorPolicyOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeSQLCollectorPolicyAsyncHandler;
+			typedef Outcome<Error, Model::ModifySQLCollectorPolicyResult> ModifySQLCollectorPolicyOutcome;
+			typedef std::future<ModifySQLCollectorPolicyOutcome> ModifySQLCollectorPolicyOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::ModifySQLCollectorPolicyRequest&, const ModifySQLCollectorPolicyOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifySQLCollectorPolicyAsyncHandler;
+			typedef Outcome<Error, Model::CreateDBInstanceResult> CreateDBInstanceOutcome;
+			typedef std::future<CreateDBInstanceOutcome> CreateDBInstanceOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::CreateDBInstanceRequest&, const CreateDBInstanceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateDBInstanceAsyncHandler;
+			typedef Outcome<Error, Model::DescribeRdsVpcsResult> DescribeRdsVpcsOutcome;
+			typedef std::future<DescribeRdsVpcsOutcome> DescribeRdsVpcsOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::DescribeRdsVpcsRequest&, const DescribeRdsVpcsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeRdsVpcsAsyncHandler;
+			typedef Outcome<Error, Model::DescribeRegionsResult> DescribeRegionsOutcome;
+			typedef std::future<DescribeRegionsOutcome> DescribeRegionsOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::DescribeRegionsRequest&, const DescribeRegionsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeRegionsAsyncHandler;
+			typedef Outcome<Error, Model::ModifyDBInstanceConnectionStringResult> ModifyDBInstanceConnectionStringOutcome;
+			typedef std::future<ModifyDBInstanceConnectionStringOutcome> ModifyDBInstanceConnectionStringOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::ModifyDBInstanceConnectionStringRequest&, const ModifyDBInstanceConnectionStringOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyDBInstanceConnectionStringAsyncHandler;
+			typedef Outcome<Error, Model::DeleteDBInstanceResult> DeleteDBInstanceOutcome;
+			typedef std::future<DeleteDBInstanceOutcome> DeleteDBInstanceOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::DeleteDBInstanceRequest&, const DeleteDBInstanceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteDBInstanceAsyncHandler;
+			typedef Outcome<Error, Model::DescribeSlowLogRecordsResult> DescribeSlowLogRecordsOutcome;
+			typedef std::future<DescribeSlowLogRecordsOutcome> DescribeSlowLogRecordsOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::DescribeSlowLogRecordsRequest&, const DescribeSlowLogRecordsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeSlowLogRecordsAsyncHandler;
+			typedef Outcome<Error, Model::ModifyDBInstanceConnectionModeResult> ModifyDBInstanceConnectionModeOutcome;
+			typedef std::future<ModifyDBInstanceConnectionModeOutcome> ModifyDBInstanceConnectionModeOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::ModifyDBInstanceConnectionModeRequest&, const ModifyDBInstanceConnectionModeOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyDBInstanceConnectionModeAsyncHandler;
+			typedef Outcome<Error, Model::RestartDBInstanceResult> RestartDBInstanceOutcome;
+			typedef std::future<RestartDBInstanceOutcome> RestartDBInstanceOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::RestartDBInstanceRequest&, const RestartDBInstanceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RestartDBInstanceAsyncHandler;
+			typedef Outcome<Error, Model::DescribeDBInstanceNetInfoResult> DescribeDBInstanceNetInfoOutcome;
+			typedef std::future<DescribeDBInstanceNetInfoOutcome> DescribeDBInstanceNetInfoOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::DescribeDBInstanceNetInfoRequest&, const DescribeDBInstanceNetInfoOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeDBInstanceNetInfoAsyncHandler;
+			typedef Outcome<Error, Model::AddBuDBInstanceRelationResult> AddBuDBInstanceRelationOutcome;
+			typedef std::future<AddBuDBInstanceRelationOutcome> AddBuDBInstanceRelationOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::AddBuDBInstanceRelationRequest&, const AddBuDBInstanceRelationOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AddBuDBInstanceRelationAsyncHandler;
+			typedef Outcome<Error, Model::DescribeRdsVSwitchsResult> DescribeRdsVSwitchsOutcome;
+			typedef std::future<DescribeRdsVSwitchsOutcome> DescribeRdsVSwitchsOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::DescribeRdsVSwitchsRequest&, const DescribeRdsVSwitchsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeRdsVSwitchsAsyncHandler;
+			typedef Outcome<Error, Model::ResetAccountPasswordResult> ResetAccountPasswordOutcome;
+			typedef std::future<ResetAccountPasswordOutcome> ResetAccountPasswordOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::ResetAccountPasswordRequest&, const ResetAccountPasswordOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ResetAccountPasswordAsyncHandler;
+			typedef Outcome<Error, Model::CreateAccountResult> CreateAccountOutcome;
+			typedef std::future<CreateAccountOutcome> CreateAccountOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::CreateAccountRequest&, const CreateAccountOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateAccountAsyncHandler;
+			typedef Outcome<Error, Model::DescribeAccountsResult> DescribeAccountsOutcome;
+			typedef std::future<DescribeAccountsOutcome> DescribeAccountsOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::DescribeAccountsRequest&, const DescribeAccountsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeAccountsAsyncHandler;
+			typedef Outcome<Error, Model::DescribeSQLLogRecordsResult> DescribeSQLLogRecordsOutcome;
+			typedef std::future<DescribeSQLLogRecordsOutcome> DescribeSQLLogRecordsOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::DescribeSQLLogRecordsRequest&, const DescribeSQLLogRecordsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeSQLLogRecordsAsyncHandler;
+			typedef Outcome<Error, Model::ModifySecurityIpsResult> ModifySecurityIpsOutcome;
+			typedef std::future<ModifySecurityIpsOutcome> ModifySecurityIpsOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::ModifySecurityIpsRequest&, const ModifySecurityIpsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifySecurityIpsAsyncHandler;
+			typedef Outcome<Error, Model::ReleaseInstancePublicConnectionResult> ReleaseInstancePublicConnectionOutcome;
+			typedef std::future<ReleaseInstancePublicConnectionOutcome> ReleaseInstancePublicConnectionOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::ReleaseInstancePublicConnectionRequest&, const ReleaseInstancePublicConnectionOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ReleaseInstancePublicConnectionAsyncHandler;
+			typedef Outcome<Error, Model::DescribeSQLLogFilesResult> DescribeSQLLogFilesOutcome;
+			typedef std::future<DescribeSQLLogFilesOutcome> DescribeSQLLogFilesOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::DescribeSQLLogFilesRequest&, const DescribeSQLLogFilesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeSQLLogFilesAsyncHandler;
+			typedef Outcome<Error, Model::ModifyDBInstanceNetworkTypeResult> ModifyDBInstanceNetworkTypeOutcome;
+			typedef std::future<ModifyDBInstanceNetworkTypeOutcome> ModifyDBInstanceNetworkTypeOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::ModifyDBInstanceNetworkTypeRequest&, const ModifyDBInstanceNetworkTypeOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyDBInstanceNetworkTypeAsyncHandler;
+			typedef Outcome<Error, Model::TagResourcesResult> TagResourcesOutcome;
+			typedef std::future<TagResourcesOutcome> TagResourcesOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::TagResourcesRequest&, const TagResourcesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> TagResourcesAsyncHandler;
+			typedef Outcome<Error, Model::DeleteDatabaseResult> DeleteDatabaseOutcome;
+			typedef std::future<DeleteDatabaseOutcome> DeleteDatabaseOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::DeleteDatabaseRequest&, const DeleteDatabaseOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteDatabaseAsyncHandler;
+			typedef Outcome<Error, Model::DescribeDBInstanceIPArrayListResult> DescribeDBInstanceIPArrayListOutcome;
+			typedef std::future<DescribeDBInstanceIPArrayListOutcome> DescribeDBInstanceIPArrayListOutcomeCallable;
+			typedef std::function<void(const GpdbClient*, const Model::DescribeDBInstanceIPArrayListRequest&, const DescribeDBInstanceIPArrayListOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeDBInstanceIPArrayListAsyncHandler;
+
+			GpdbClient(const Credentials &credentials, const ClientConfiguration &configuration);
+			GpdbClient(const std::shared_ptr<CredentialsProvider> &credentialsProvider, const ClientConfiguration &configuration);
+			GpdbClient(const std::string &accessKeyId, const std::string &accessKeySecret, const ClientConfiguration &configuration);
+			~GpdbClient();
+			ModifyDBInstanceMaintainTimeOutcome modifyDBInstanceMaintainTime(const Model::ModifyDBInstanceMaintainTimeRequest &request)const;
+			void modifyDBInstanceMaintainTimeAsync(const Model::ModifyDBInstanceMaintainTimeRequest& request, const ModifyDBInstanceMaintainTimeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyDBInstanceMaintainTimeOutcomeCallable modifyDBInstanceMaintainTimeCallable(const Model::ModifyDBInstanceMaintainTimeRequest& request) const;
+			ModifyDBInstanceDescriptionOutcome modifyDBInstanceDescription(const Model::ModifyDBInstanceDescriptionRequest &request)const;
+			void modifyDBInstanceDescriptionAsync(const Model::ModifyDBInstanceDescriptionRequest& request, const ModifyDBInstanceDescriptionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyDBInstanceDescriptionOutcomeCallable modifyDBInstanceDescriptionCallable(const Model::ModifyDBInstanceDescriptionRequest& request) const;
+			DescribeDBInstancePerformanceOutcome describeDBInstancePerformance(const Model::DescribeDBInstancePerformanceRequest &request)const;
+			void describeDBInstancePerformanceAsync(const Model::DescribeDBInstancePerformanceRequest& request, const DescribeDBInstancePerformanceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeDBInstancePerformanceOutcomeCallable describeDBInstancePerformanceCallable(const Model::DescribeDBInstancePerformanceRequest& request) const;
+			ListTagResourcesOutcome listTagResources(const Model::ListTagResourcesRequest &request)const;
+			void listTagResourcesAsync(const Model::ListTagResourcesRequest& request, const ListTagResourcesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListTagResourcesOutcomeCallable listTagResourcesCallable(const Model::ListTagResourcesRequest& request) const;
+			DescribeDBInstancesOutcome describeDBInstances(const Model::DescribeDBInstancesRequest &request)const;
+			void describeDBInstancesAsync(const Model::DescribeDBInstancesRequest& request, const DescribeDBInstancesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeDBInstancesOutcomeCallable describeDBInstancesCallable(const Model::DescribeDBInstancesRequest& request) const;
+			UntagResourcesOutcome untagResources(const Model::UntagResourcesRequest &request)const;
+			void untagResourcesAsync(const Model::UntagResourcesRequest& request, const UntagResourcesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			UntagResourcesOutcomeCallable untagResourcesCallable(const Model::UntagResourcesRequest& request) const;
+			SwitchDBInstanceNetTypeOutcome switchDBInstanceNetType(const Model::SwitchDBInstanceNetTypeRequest &request)const;
+			void switchDBInstanceNetTypeAsync(const Model::SwitchDBInstanceNetTypeRequest& request, const SwitchDBInstanceNetTypeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			SwitchDBInstanceNetTypeOutcomeCallable switchDBInstanceNetTypeCallable(const Model::SwitchDBInstanceNetTypeRequest& request) const;
+			AllocateInstancePublicConnectionOutcome allocateInstancePublicConnection(const Model::AllocateInstancePublicConnectionRequest &request)const;
+			void allocateInstancePublicConnectionAsync(const Model::AllocateInstancePublicConnectionRequest& request, const AllocateInstancePublicConnectionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			AllocateInstancePublicConnectionOutcomeCallable allocateInstancePublicConnectionCallable(const Model::AllocateInstancePublicConnectionRequest& request) const;
+			DescribeDBInstanceAttributeOutcome describeDBInstanceAttribute(const Model::DescribeDBInstanceAttributeRequest &request)const;
+			void describeDBInstanceAttributeAsync(const Model::DescribeDBInstanceAttributeRequest& request, const DescribeDBInstanceAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeDBInstanceAttributeOutcomeCallable describeDBInstanceAttributeCallable(const Model::DescribeDBInstanceAttributeRequest& request) const;
+			ModifyAccountDescriptionOutcome modifyAccountDescription(const Model::ModifyAccountDescriptionRequest &request)const;
+			void modifyAccountDescriptionAsync(const Model::ModifyAccountDescriptionRequest& request, const ModifyAccountDescriptionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyAccountDescriptionOutcomeCallable modifyAccountDescriptionCallable(const Model::ModifyAccountDescriptionRequest& request) const;
+			DescribeResourceUsageOutcome describeResourceUsage(const Model::DescribeResourceUsageRequest &request)const;
+			void describeResourceUsageAsync(const Model::DescribeResourceUsageRequest& request, const DescribeResourceUsageAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeResourceUsageOutcomeCallable describeResourceUsageCallable(const Model::DescribeResourceUsageRequest& request) const;
+			DescribeSQLCollectorPolicyOutcome describeSQLCollectorPolicy(const Model::DescribeSQLCollectorPolicyRequest &request)const;
+			void describeSQLCollectorPolicyAsync(const Model::DescribeSQLCollectorPolicyRequest& request, const DescribeSQLCollectorPolicyAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeSQLCollectorPolicyOutcomeCallable describeSQLCollectorPolicyCallable(const Model::DescribeSQLCollectorPolicyRequest& request) const;
+			ModifySQLCollectorPolicyOutcome modifySQLCollectorPolicy(const Model::ModifySQLCollectorPolicyRequest &request)const;
+			void modifySQLCollectorPolicyAsync(const Model::ModifySQLCollectorPolicyRequest& request, const ModifySQLCollectorPolicyAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifySQLCollectorPolicyOutcomeCallable modifySQLCollectorPolicyCallable(const Model::ModifySQLCollectorPolicyRequest& request) const;
+			CreateDBInstanceOutcome createDBInstance(const Model::CreateDBInstanceRequest &request)const;
+			void createDBInstanceAsync(const Model::CreateDBInstanceRequest& request, const CreateDBInstanceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateDBInstanceOutcomeCallable createDBInstanceCallable(const Model::CreateDBInstanceRequest& request) const;
+			DescribeRdsVpcsOutcome describeRdsVpcs(const Model::DescribeRdsVpcsRequest &request)const;
+			void describeRdsVpcsAsync(const Model::DescribeRdsVpcsRequest& request, const DescribeRdsVpcsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeRdsVpcsOutcomeCallable describeRdsVpcsCallable(const Model::DescribeRdsVpcsRequest& request) const;
+			DescribeRegionsOutcome describeRegions(const Model::DescribeRegionsRequest &request)const;
+			void describeRegionsAsync(const Model::DescribeRegionsRequest& request, const DescribeRegionsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeRegionsOutcomeCallable describeRegionsCallable(const Model::DescribeRegionsRequest& request) const;
+			ModifyDBInstanceConnectionStringOutcome modifyDBInstanceConnectionString(const Model::ModifyDBInstanceConnectionStringRequest &request)const;
+			void modifyDBInstanceConnectionStringAsync(const Model::ModifyDBInstanceConnectionStringRequest& request, const ModifyDBInstanceConnectionStringAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyDBInstanceConnectionStringOutcomeCallable modifyDBInstanceConnectionStringCallable(const Model::ModifyDBInstanceConnectionStringRequest& request) const;
+			DeleteDBInstanceOutcome deleteDBInstance(const Model::DeleteDBInstanceRequest &request)const;
+			void deleteDBInstanceAsync(const Model::DeleteDBInstanceRequest& request, const DeleteDBInstanceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteDBInstanceOutcomeCallable deleteDBInstanceCallable(const Model::DeleteDBInstanceRequest& request) const;
+			DescribeSlowLogRecordsOutcome describeSlowLogRecords(const Model::DescribeSlowLogRecordsRequest &request)const;
+			void describeSlowLogRecordsAsync(const Model::DescribeSlowLogRecordsRequest& request, const DescribeSlowLogRecordsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeSlowLogRecordsOutcomeCallable describeSlowLogRecordsCallable(const Model::DescribeSlowLogRecordsRequest& request) const;
+			ModifyDBInstanceConnectionModeOutcome modifyDBInstanceConnectionMode(const Model::ModifyDBInstanceConnectionModeRequest &request)const;
+			void modifyDBInstanceConnectionModeAsync(const Model::ModifyDBInstanceConnectionModeRequest& request, const ModifyDBInstanceConnectionModeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyDBInstanceConnectionModeOutcomeCallable modifyDBInstanceConnectionModeCallable(const Model::ModifyDBInstanceConnectionModeRequest& request) const;
+			RestartDBInstanceOutcome restartDBInstance(const Model::RestartDBInstanceRequest &request)const;
+			void restartDBInstanceAsync(const Model::RestartDBInstanceRequest& request, const RestartDBInstanceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			RestartDBInstanceOutcomeCallable restartDBInstanceCallable(const Model::RestartDBInstanceRequest& request) const;
+			DescribeDBInstanceNetInfoOutcome describeDBInstanceNetInfo(const Model::DescribeDBInstanceNetInfoRequest &request)const;
+			void describeDBInstanceNetInfoAsync(const Model::DescribeDBInstanceNetInfoRequest& request, const DescribeDBInstanceNetInfoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeDBInstanceNetInfoOutcomeCallable describeDBInstanceNetInfoCallable(const Model::DescribeDBInstanceNetInfoRequest& request) const;
+			AddBuDBInstanceRelationOutcome addBuDBInstanceRelation(const Model::AddBuDBInstanceRelationRequest &request)const;
+			void addBuDBInstanceRelationAsync(const Model::AddBuDBInstanceRelationRequest& request, const AddBuDBInstanceRelationAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			AddBuDBInstanceRelationOutcomeCallable addBuDBInstanceRelationCallable(const Model::AddBuDBInstanceRelationRequest& request) const;
+			DescribeRdsVSwitchsOutcome describeRdsVSwitchs(const Model::DescribeRdsVSwitchsRequest &request)const;
+			void describeRdsVSwitchsAsync(const Model::DescribeRdsVSwitchsRequest& request, const DescribeRdsVSwitchsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeRdsVSwitchsOutcomeCallable describeRdsVSwitchsCallable(const Model::DescribeRdsVSwitchsRequest& request) const;
+			ResetAccountPasswordOutcome resetAccountPassword(const Model::ResetAccountPasswordRequest &request)const;
+			void resetAccountPasswordAsync(const Model::ResetAccountPasswordRequest& request, const ResetAccountPasswordAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ResetAccountPasswordOutcomeCallable resetAccountPasswordCallable(const Model::ResetAccountPasswordRequest& request) const;
+			CreateAccountOutcome createAccount(const Model::CreateAccountRequest &request)const;
+			void createAccountAsync(const Model::CreateAccountRequest& request, const CreateAccountAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateAccountOutcomeCallable createAccountCallable(const Model::CreateAccountRequest& request) const;
+			DescribeAccountsOutcome describeAccounts(const Model::DescribeAccountsRequest &request)const;
+			void describeAccountsAsync(const Model::DescribeAccountsRequest& request, const DescribeAccountsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeAccountsOutcomeCallable describeAccountsCallable(const Model::DescribeAccountsRequest& request) const;
+			DescribeSQLLogRecordsOutcome describeSQLLogRecords(const Model::DescribeSQLLogRecordsRequest &request)const;
+			void describeSQLLogRecordsAsync(const Model::DescribeSQLLogRecordsRequest& request, const DescribeSQLLogRecordsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeSQLLogRecordsOutcomeCallable describeSQLLogRecordsCallable(const Model::DescribeSQLLogRecordsRequest& request) const;
+			ModifySecurityIpsOutcome modifySecurityIps(const Model::ModifySecurityIpsRequest &request)const;
+			void modifySecurityIpsAsync(const Model::ModifySecurityIpsRequest& request, const ModifySecurityIpsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifySecurityIpsOutcomeCallable modifySecurityIpsCallable(const Model::ModifySecurityIpsRequest& request) const;
+			ReleaseInstancePublicConnectionOutcome releaseInstancePublicConnection(const Model::ReleaseInstancePublicConnectionRequest &request)const;
+			void releaseInstancePublicConnectionAsync(const Model::ReleaseInstancePublicConnectionRequest& request, const ReleaseInstancePublicConnectionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ReleaseInstancePublicConnectionOutcomeCallable releaseInstancePublicConnectionCallable(const Model::ReleaseInstancePublicConnectionRequest& request) const;
+			DescribeSQLLogFilesOutcome describeSQLLogFiles(const Model::DescribeSQLLogFilesRequest &request)const;
+			void describeSQLLogFilesAsync(const Model::DescribeSQLLogFilesRequest& request, const DescribeSQLLogFilesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeSQLLogFilesOutcomeCallable describeSQLLogFilesCallable(const Model::DescribeSQLLogFilesRequest& request) const;
+			ModifyDBInstanceNetworkTypeOutcome modifyDBInstanceNetworkType(const Model::ModifyDBInstanceNetworkTypeRequest &request)const;
+			void modifyDBInstanceNetworkTypeAsync(const Model::ModifyDBInstanceNetworkTypeRequest& request, const ModifyDBInstanceNetworkTypeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyDBInstanceNetworkTypeOutcomeCallable modifyDBInstanceNetworkTypeCallable(const Model::ModifyDBInstanceNetworkTypeRequest& request) const;
+			TagResourcesOutcome tagResources(const Model::TagResourcesRequest &request)const;
+			void tagResourcesAsync(const Model::TagResourcesRequest& request, const TagResourcesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			TagResourcesOutcomeCallable tagResourcesCallable(const Model::TagResourcesRequest& request) const;
+			DeleteDatabaseOutcome deleteDatabase(const Model::DeleteDatabaseRequest &request)const;
+			void deleteDatabaseAsync(const Model::DeleteDatabaseRequest& request, const DeleteDatabaseAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteDatabaseOutcomeCallable deleteDatabaseCallable(const Model::DeleteDatabaseRequest& request) const;
+			DescribeDBInstanceIPArrayListOutcome describeDBInstanceIPArrayList(const Model::DescribeDBInstanceIPArrayListRequest &request)const;
+			void describeDBInstanceIPArrayListAsync(const Model::DescribeDBInstanceIPArrayListRequest& request, const DescribeDBInstanceIPArrayListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeDBInstanceIPArrayListOutcomeCallable describeDBInstanceIPArrayListCallable(const Model::DescribeDBInstanceIPArrayListRequest& request) const;
+	
+		private:
+			std::shared_ptr<EndpointProvider> endpointProvider_;
+		};
+	}
+}
+
+#endif // !ALIBABACLOUD_GPDB_GPDBCLIENT_H_

+ 32 - 0
gpdb/include/alibabacloud/gpdb/GpdbExport.h

@@ -0,0 +1,32 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_GPDBEXPORT_H_
+#define ALIBABACLOUD_GPDB_GPDBEXPORT_H_
+
+#include <alibabacloud/core/Global.h>
+
+#if defined(ALIBABACLOUD_SHARED)
+#	if defined(ALIBABACLOUD_GPDB_LIBRARY)
+#		define ALIBABACLOUD_GPDB_EXPORT ALIBABACLOUD_DECL_EXPORT
+#	else
+#		define ALIBABACLOUD_GPDB_EXPORT ALIBABACLOUD_DECL_IMPORT
+#	endif
+#else
+#	define ALIBABACLOUD_GPDB_EXPORT
+#endif
+
+#endif // !ALIBABACLOUD_GPDB_GPDBEXPORT_H_

+ 57 - 0
gpdb/include/alibabacloud/gpdb/model/AddBuDBInstanceRelationRequest.h

@@ -0,0 +1,57 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_ADDBUDBINSTANCERELATIONREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_ADDBUDBINSTANCERELATIONREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT AddBuDBInstanceRelationRequest : public RpcServiceRequest
+			{
+
+			public:
+				AddBuDBInstanceRelationRequest();
+				~AddBuDBInstanceRelationRequest();
+
+				std::string getBusinessUnit()const;
+				void setBusinessUnit(const std::string& businessUnit);
+				std::string getDBInstanceId()const;
+				void setDBInstanceId(const std::string& dBInstanceId);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string businessUnit_;
+				std::string dBInstanceId_;
+				long ownerId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_ADDBUDBINSTANCERELATIONREQUEST_H_

+ 53 - 0
gpdb/include/alibabacloud/gpdb/model/AddBuDBInstanceRelationResult.h

@@ -0,0 +1,53 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_ADDBUDBINSTANCERELATIONRESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_ADDBUDBINSTANCERELATIONRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT AddBuDBInstanceRelationResult : public ServiceResult
+			{
+			public:
+
+
+				AddBuDBInstanceRelationResult();
+				explicit AddBuDBInstanceRelationResult(const std::string &payload);
+				~AddBuDBInstanceRelationResult();
+				std::string getBusinessUnit()const;
+				std::string getDBInstanceName()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string businessUnit_;
+				std::string dBInstanceName_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_ADDBUDBINSTANCERELATIONRESULT_H_

+ 66 - 0
gpdb/include/alibabacloud/gpdb/model/AllocateInstancePublicConnectionRequest.h

@@ -0,0 +1,66 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_ALLOCATEINSTANCEPUBLICCONNECTIONREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_ALLOCATEINSTANCEPUBLICCONNECTIONREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT AllocateInstancePublicConnectionRequest : public RpcServiceRequest
+			{
+
+			public:
+				AllocateInstancePublicConnectionRequest();
+				~AllocateInstancePublicConnectionRequest();
+
+				long getResourceOwnerId()const;
+				void setResourceOwnerId(long resourceOwnerId);
+				std::string getConnectionStringPrefix()const;
+				void setConnectionStringPrefix(const std::string& connectionStringPrefix);
+				std::string getResourceOwnerAccount()const;
+				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
+				std::string getPort()const;
+				void setPort(const std::string& port);
+				std::string getDBInstanceId()const;
+				void setDBInstanceId(const std::string& dBInstanceId);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				long resourceOwnerId_;
+				std::string connectionStringPrefix_;
+				std::string resourceOwnerAccount_;
+				std::string port_;
+				std::string dBInstanceId_;
+				long ownerId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_ALLOCATEINSTANCEPUBLICCONNECTIONREQUEST_H_

+ 49 - 0
gpdb/include/alibabacloud/gpdb/model/AllocateInstancePublicConnectionResult.h

@@ -0,0 +1,49 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_ALLOCATEINSTANCEPUBLICCONNECTIONRESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_ALLOCATEINSTANCEPUBLICCONNECTIONRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT AllocateInstancePublicConnectionResult : public ServiceResult
+			{
+			public:
+
+
+				AllocateInstancePublicConnectionResult();
+				explicit AllocateInstancePublicConnectionResult(const std::string &payload);
+				~AllocateInstancePublicConnectionResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_ALLOCATEINSTANCEPUBLICCONNECTIONRESULT_H_

+ 66 - 0
gpdb/include/alibabacloud/gpdb/model/CreateAccountRequest.h

@@ -0,0 +1,66 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_CREATEACCOUNTREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_CREATEACCOUNTREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT CreateAccountRequest : public RpcServiceRequest
+			{
+
+			public:
+				CreateAccountRequest();
+				~CreateAccountRequest();
+
+				std::string getAccountPassword()const;
+				void setAccountPassword(const std::string& accountPassword);
+				std::string getAccountName()const;
+				void setAccountName(const std::string& accountName);
+				std::string getDatabaseName()const;
+				void setDatabaseName(const std::string& databaseName);
+				std::string getDBInstanceId()const;
+				void setDBInstanceId(const std::string& dBInstanceId);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getAccountDescription()const;
+				void setAccountDescription(const std::string& accountDescription);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string accountPassword_;
+				std::string accountName_;
+				std::string databaseName_;
+				std::string dBInstanceId_;
+				long ownerId_;
+				std::string accountDescription_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_CREATEACCOUNTREQUEST_H_

+ 49 - 0
gpdb/include/alibabacloud/gpdb/model/CreateAccountResult.h

@@ -0,0 +1,49 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_CREATEACCOUNTRESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_CREATEACCOUNTRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT CreateAccountResult : public ServiceResult
+			{
+			public:
+
+
+				CreateAccountResult();
+				explicit CreateAccountResult(const std::string &payload);
+				~CreateAccountResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_CREATEACCOUNTRESULT_H_

+ 99 - 0
gpdb/include/alibabacloud/gpdb/model/CreateDBInstanceRequest.h

@@ -0,0 +1,99 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_CREATEDBINSTANCEREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_CREATEDBINSTANCEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT CreateDBInstanceRequest : public RpcServiceRequest
+			{
+
+			public:
+				CreateDBInstanceRequest();
+				~CreateDBInstanceRequest();
+
+				std::string getDBInstanceGroupCount()const;
+				void setDBInstanceGroupCount(const std::string& dBInstanceGroupCount);
+				std::string getPeriod()const;
+				void setPeriod(const std::string& period);
+				std::string getClientToken()const;
+				void setClientToken(const std::string& clientToken);
+				std::string getEngineVersion()const;
+				void setEngineVersion(const std::string& engineVersion);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getUsedTime()const;
+				void setUsedTime(const std::string& usedTime);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				std::string getDBInstanceClass()const;
+				void setDBInstanceClass(const std::string& dBInstanceClass);
+				std::string getSecurityIPList()const;
+				void setSecurityIPList(const std::string& securityIPList);
+				std::string getVSwitchId()const;
+				void setVSwitchId(const std::string& vSwitchId);
+				std::string getPrivateIpAddress()const;
+				void setPrivateIpAddress(const std::string& privateIpAddress);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getEngine()const;
+				void setEngine(const std::string& engine);
+				std::string getVPCId()const;
+				void setVPCId(const std::string& vPCId);
+				std::string getZoneId()const;
+				void setZoneId(const std::string& zoneId);
+				std::string getDBInstanceDescription()const;
+				void setDBInstanceDescription(const std::string& dBInstanceDescription);
+				std::string getPayType()const;
+				void setPayType(const std::string& payType);
+				std::string getInstanceNetworkType()const;
+				void setInstanceNetworkType(const std::string& instanceNetworkType);
+
+            private:
+				std::string dBInstanceGroupCount_;
+				std::string period_;
+				std::string clientToken_;
+				std::string engineVersion_;
+				long ownerId_;
+				std::string usedTime_;
+				std::string accessKeyId_;
+				std::string dBInstanceClass_;
+				std::string securityIPList_;
+				std::string vSwitchId_;
+				std::string privateIpAddress_;
+				std::string regionId_;
+				std::string engine_;
+				std::string vPCId_;
+				std::string zoneId_;
+				std::string dBInstanceDescription_;
+				std::string payType_;
+				std::string instanceNetworkType_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_CREATEDBINSTANCEREQUEST_H_

+ 57 - 0
gpdb/include/alibabacloud/gpdb/model/CreateDBInstanceResult.h

@@ -0,0 +1,57 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_CREATEDBINSTANCERESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_CREATEDBINSTANCERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT CreateDBInstanceResult : public ServiceResult
+			{
+			public:
+
+
+				CreateDBInstanceResult();
+				explicit CreateDBInstanceResult(const std::string &payload);
+				~CreateDBInstanceResult();
+				std::string getDBInstanceId()const;
+				std::string getPort()const;
+				std::string getOrderId()const;
+				std::string getConnectionString()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string dBInstanceId_;
+				std::string port_;
+				std::string orderId_;
+				std::string connectionString_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_CREATEDBINSTANCERESULT_H_

+ 57 - 0
gpdb/include/alibabacloud/gpdb/model/DeleteDBInstanceRequest.h

@@ -0,0 +1,57 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DELETEDBINSTANCEREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_DELETEDBINSTANCEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DeleteDBInstanceRequest : public RpcServiceRequest
+			{
+
+			public:
+				DeleteDBInstanceRequest();
+				~DeleteDBInstanceRequest();
+
+				std::string getClientToken()const;
+				void setClientToken(const std::string& clientToken);
+				std::string getDBInstanceId()const;
+				void setDBInstanceId(const std::string& dBInstanceId);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string clientToken_;
+				std::string dBInstanceId_;
+				long ownerId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DELETEDBINSTANCEREQUEST_H_

+ 49 - 0
gpdb/include/alibabacloud/gpdb/model/DeleteDBInstanceResult.h

@@ -0,0 +1,49 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DELETEDBINSTANCERESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_DELETEDBINSTANCERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DeleteDBInstanceResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteDBInstanceResult();
+				explicit DeleteDBInstanceResult(const std::string &payload);
+				~DeleteDBInstanceResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DELETEDBINSTANCERESULT_H_

+ 54 - 0
gpdb/include/alibabacloud/gpdb/model/DeleteDatabaseRequest.h

@@ -0,0 +1,54 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DELETEDATABASEREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_DELETEDATABASEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DeleteDatabaseRequest : public RpcServiceRequest
+			{
+
+			public:
+				DeleteDatabaseRequest();
+				~DeleteDatabaseRequest();
+
+				std::string getDBName()const;
+				void setDBName(const std::string& dBName);
+				std::string getDBInstanceId()const;
+				void setDBInstanceId(const std::string& dBInstanceId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string dBName_;
+				std::string dBInstanceId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DELETEDATABASEREQUEST_H_

+ 49 - 0
gpdb/include/alibabacloud/gpdb/model/DeleteDatabaseResult.h

@@ -0,0 +1,49 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DELETEDATABASERESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_DELETEDATABASERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DeleteDatabaseResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteDatabaseResult();
+				explicit DeleteDatabaseResult(const std::string &payload);
+				~DeleteDatabaseResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DELETEDATABASERESULT_H_

+ 54 - 0
gpdb/include/alibabacloud/gpdb/model/DescribeAccountsRequest.h

@@ -0,0 +1,54 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DESCRIBEACCOUNTSREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_DESCRIBEACCOUNTSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DescribeAccountsRequest : public RpcServiceRequest
+			{
+
+			public:
+				DescribeAccountsRequest();
+				~DescribeAccountsRequest();
+
+				std::string getAccountName()const;
+				void setAccountName(const std::string& accountName);
+				std::string getDBInstanceId()const;
+				void setDBInstanceId(const std::string& dBInstanceId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string accountName_;
+				std::string dBInstanceId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DESCRIBEACCOUNTSREQUEST_H_

+ 58 - 0
gpdb/include/alibabacloud/gpdb/model/DescribeAccountsResult.h

@@ -0,0 +1,58 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DESCRIBEACCOUNTSRESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_DESCRIBEACCOUNTSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DescribeAccountsResult : public ServiceResult
+			{
+			public:
+				struct DBInstanceAccount
+				{
+					std::string accountDescription;
+					std::string accountStatus;
+					std::string dBInstanceId;
+					std::string accountName;
+				};
+
+
+				DescribeAccountsResult();
+				explicit DescribeAccountsResult(const std::string &payload);
+				~DescribeAccountsResult();
+				std::vector<DBInstanceAccount> getAccounts()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<DBInstanceAccount> accounts_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DESCRIBEACCOUNTSRESULT_H_

+ 54 - 0
gpdb/include/alibabacloud/gpdb/model/DescribeDBInstanceAttributeRequest.h

@@ -0,0 +1,54 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCEATTRIBUTEREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCEATTRIBUTEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DescribeDBInstanceAttributeRequest : public RpcServiceRequest
+			{
+
+			public:
+				DescribeDBInstanceAttributeRequest();
+				~DescribeDBInstanceAttributeRequest();
+
+				std::string getDBInstanceId()const;
+				void setDBInstanceId(const std::string& dBInstanceId);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string dBInstanceId_;
+				long ownerId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCEATTRIBUTEREQUEST_H_

+ 92 - 0
gpdb/include/alibabacloud/gpdb/model/DescribeDBInstanceAttributeResult.h

@@ -0,0 +1,92 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCEATTRIBUTERESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCEATTRIBUTERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DescribeDBInstanceAttributeResult : public ServiceResult
+			{
+			public:
+				struct DBInstanceAttribute
+				{
+					struct Tag
+					{
+						std::string value;
+						std::string key;
+					};
+					long dBInstanceMemory;
+					std::string dBInstanceNetType;
+					std::string port;
+					std::string dBInstanceGroupCount;
+					std::string instanceNetworkType;
+					std::string dBInstanceClassType;
+					std::string hostType;
+					std::string maintainEndTime;
+					std::string dBInstanceId;
+					std::string securityIPList;
+					long dBInstanceStorage;
+					std::string lockReason;
+					std::string availabilityValue;
+					std::vector<DBInstanceAttribute::Tag> tags;
+					std::string engine;
+					std::string dBInstanceDescription;
+					std::string maintainStartTime;
+					long dBInstanceDiskMBPS;
+					std::string engineVersion;
+					std::string dBInstanceStatus;
+					int maxConnections;
+					std::string zoneId;
+					std::string dBInstanceClass;
+					int dBInstanceCpuCores;
+					std::string payType;
+					std::string lockMode;
+					std::string vpcId;
+					std::string readDelayTime;
+					std::string creationTime;
+					std::string connectionMode;
+					std::string regionId;
+					std::string connectionString;
+					std::string expireTime;
+				};
+
+
+				DescribeDBInstanceAttributeResult();
+				explicit DescribeDBInstanceAttributeResult(const std::string &payload);
+				~DescribeDBInstanceAttributeResult();
+				std::vector<DBInstanceAttribute> getItems()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<DBInstanceAttribute> items_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCEATTRIBUTERESULT_H_

+ 51 - 0
gpdb/include/alibabacloud/gpdb/model/DescribeDBInstanceIPArrayListRequest.h

@@ -0,0 +1,51 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCEIPARRAYLISTREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCEIPARRAYLISTREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DescribeDBInstanceIPArrayListRequest : public RpcServiceRequest
+			{
+
+			public:
+				DescribeDBInstanceIPArrayListRequest();
+				~DescribeDBInstanceIPArrayListRequest();
+
+				std::string getDBInstanceId()const;
+				void setDBInstanceId(const std::string& dBInstanceId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string dBInstanceId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCEIPARRAYLISTREQUEST_H_

+ 57 - 0
gpdb/include/alibabacloud/gpdb/model/DescribeDBInstanceIPArrayListResult.h

@@ -0,0 +1,57 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCEIPARRAYLISTRESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCEIPARRAYLISTRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DescribeDBInstanceIPArrayListResult : public ServiceResult
+			{
+			public:
+				struct DBInstanceIPArray
+				{
+					std::string dBInstanceIPArrayAttribute;
+					std::string securityIPList;
+					std::string dBInstanceIPArrayName;
+				};
+
+
+				DescribeDBInstanceIPArrayListResult();
+				explicit DescribeDBInstanceIPArrayListResult(const std::string &payload);
+				~DescribeDBInstanceIPArrayListResult();
+				std::vector<DBInstanceIPArray> getItems()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<DBInstanceIPArray> items_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCEIPARRAYLISTRESULT_H_

+ 51 - 0
gpdb/include/alibabacloud/gpdb/model/DescribeDBInstanceNetInfoRequest.h

@@ -0,0 +1,51 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCENETINFOREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCENETINFOREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DescribeDBInstanceNetInfoRequest : public RpcServiceRequest
+			{
+
+			public:
+				DescribeDBInstanceNetInfoRequest();
+				~DescribeDBInstanceNetInfoRequest();
+
+				std::string getDBInstanceId()const;
+				void setDBInstanceId(const std::string& dBInstanceId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string dBInstanceId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCENETINFOREQUEST_H_

+ 62 - 0
gpdb/include/alibabacloud/gpdb/model/DescribeDBInstanceNetInfoResult.h

@@ -0,0 +1,62 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCENETINFORESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCENETINFORESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DescribeDBInstanceNetInfoResult : public ServiceResult
+			{
+			public:
+				struct DBInstanceNetInfo
+				{
+					std::string iPType;
+					std::string vPCId;
+					std::string port;
+					std::string vSwitchId;
+					std::string connectionString;
+					std::string iPAddress;
+				};
+
+
+				DescribeDBInstanceNetInfoResult();
+				explicit DescribeDBInstanceNetInfoResult(const std::string &payload);
+				~DescribeDBInstanceNetInfoResult();
+				std::vector<DBInstanceNetInfo> getDBInstanceNetInfos()const;
+				std::string getInstanceNetworkType()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<DBInstanceNetInfo> dBInstanceNetInfos_;
+				std::string instanceNetworkType_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCENETINFORESULT_H_

+ 60 - 0
gpdb/include/alibabacloud/gpdb/model/DescribeDBInstancePerformanceRequest.h

@@ -0,0 +1,60 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCEPERFORMANCEREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCEPERFORMANCEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DescribeDBInstancePerformanceRequest : public RpcServiceRequest
+			{
+
+			public:
+				DescribeDBInstancePerformanceRequest();
+				~DescribeDBInstancePerformanceRequest();
+
+				std::string getEndTime()const;
+				void setEndTime(const std::string& endTime);
+				std::string getDBInstanceId()const;
+				void setDBInstanceId(const std::string& dBInstanceId);
+				std::string getStartTime()const;
+				void setStartTime(const std::string& startTime);
+				std::string getKey()const;
+				void setKey(const std::string& key);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string endTime_;
+				std::string dBInstanceId_;
+				std::string startTime_;
+				std::string key_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCEPERFORMANCEREQUEST_H_

+ 59 - 0
gpdb/include/alibabacloud/gpdb/model/DescribeDBInstancePerformanceResult.h

@@ -0,0 +1,59 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCEPERFORMANCERESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCEPERFORMANCERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DescribeDBInstancePerformanceResult : public ServiceResult
+			{
+			public:
+
+
+				DescribeDBInstancePerformanceResult();
+				explicit DescribeDBInstancePerformanceResult(const std::string &payload);
+				~DescribeDBInstancePerformanceResult();
+				std::vector<std::string> getPerformanceKeys()const;
+				std::string getEndTime()const;
+				std::string getDBInstanceId()const;
+				std::string getStartTime()const;
+				std::string getEngine()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<std::string> performanceKeys_;
+				std::string endTime_;
+				std::string dBInstanceId_;
+				std::string startTime_;
+				std::string engine_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCEPERFORMANCERESULT_H_

+ 77 - 0
gpdb/include/alibabacloud/gpdb/model/DescribeDBInstancesRequest.h

@@ -0,0 +1,77 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCESREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCESREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DescribeDBInstancesRequest : public RpcServiceRequest
+			{
+				struct Tag
+				{
+					std::string value;
+					std::string key;
+				};
+
+			public:
+				DescribeDBInstancesRequest();
+				~DescribeDBInstancesRequest();
+
+				std::string getDBInstanceIds()const;
+				void setDBInstanceIds(const std::string& dBInstanceIds);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				int getPageSize()const;
+				void setPageSize(int pageSize);
+				std::string getDBInstanceDescription()const;
+				void setDBInstanceDescription(const std::string& dBInstanceDescription);
+				std::vector<Tag> getTag()const;
+				void setTag(const std::vector<Tag>& tag);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getInstanceNetworkType()const;
+				void setInstanceNetworkType(const std::string& instanceNetworkType);
+				int getPageNumber()const;
+				void setPageNumber(int pageNumber);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string dBInstanceIds_;
+				std::string regionId_;
+				int pageSize_;
+				std::string dBInstanceDescription_;
+				std::vector<Tag> tag_;
+				long ownerId_;
+				std::string instanceNetworkType_;
+				int pageNumber_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCESREQUEST_H_

+ 83 - 0
gpdb/include/alibabacloud/gpdb/model/DescribeDBInstancesResult.h

@@ -0,0 +1,83 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCESRESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DescribeDBInstancesResult : public ServiceResult
+			{
+			public:
+				struct DBInstance
+				{
+					struct Tag
+					{
+						std::string value;
+						std::string key;
+					};
+					std::string engineVersion;
+					std::string zoneId;
+					std::string dBInstanceStatus;
+					std::string dBInstanceNetType;
+					std::string createTime;
+					std::string vSwitchId;
+					std::string payType;
+					std::string lockMode;
+					std::string instanceNetworkType;
+					std::string vpcId;
+					std::string dBInstanceId;
+					std::string connectionMode;
+					std::string regionId;
+					std::string expireTime;
+					std::string lockReason;
+					std::vector<DBInstance::Tag> tags;
+					std::string dBInstanceDescription;
+					std::string engine;
+				};
+
+
+				DescribeDBInstancesResult();
+				explicit DescribeDBInstancesResult(const std::string &payload);
+				~DescribeDBInstancesResult();
+				int getTotalRecordCount()const;
+				int getPageRecordCount()const;
+				int getPageNumber()const;
+				std::vector<DBInstance> getItems()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				int totalRecordCount_;
+				int pageRecordCount_;
+				int pageNumber_;
+				std::vector<DBInstance> items_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DESCRIBEDBINSTANCESRESULT_H_

+ 72 - 0
gpdb/include/alibabacloud/gpdb/model/DescribeRdsVSwitchsRequest.h

@@ -0,0 +1,72 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DESCRIBERDSVSWITCHSREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_DESCRIBERDSVSWITCHSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DescribeRdsVSwitchsRequest : public RpcServiceRequest
+			{
+
+			public:
+				DescribeRdsVSwitchsRequest();
+				~DescribeRdsVSwitchsRequest();
+
+				long getResourceOwnerId()const;
+				void setResourceOwnerId(long resourceOwnerId);
+				std::string getSecurityToken()const;
+				void setSecurityToken(const std::string& securityToken);
+				std::string getResourceOwnerAccount()const;
+				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getOwnerAccount()const;
+				void setOwnerAccount(const std::string& ownerAccount);
+				std::string getVpcId()const;
+				void setVpcId(const std::string& vpcId);
+				std::string getZoneId()const;
+				void setZoneId(const std::string& zoneId);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				long resourceOwnerId_;
+				std::string securityToken_;
+				std::string resourceOwnerAccount_;
+				std::string regionId_;
+				std::string ownerAccount_;
+				std::string vpcId_;
+				std::string zoneId_;
+				long ownerId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DESCRIBERDSVSWITCHSREQUEST_H_

+ 69 - 0
gpdb/include/alibabacloud/gpdb/model/DescribeRdsVSwitchsResult.h

@@ -0,0 +1,69 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DESCRIBERDSVSWITCHSRESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_DESCRIBERDSVSWITCHSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DescribeRdsVSwitchsResult : public ServiceResult
+			{
+			public:
+				struct VSwitches
+				{
+					struct VSwitchItem
+					{
+						bool isDefault;
+						std::string status;
+						std::string izNo;
+						std::string regionNo;
+						std::string gmtCreate;
+						std::string vSwitchId;
+						std::string gmtModified;
+						std::string cidrBlock;
+						std::string vSwitchName;
+						std::string bid;
+						std::string aliUid;
+					};
+					std::vector<VSwitchItem> vSwitch;
+				};
+
+
+				DescribeRdsVSwitchsResult();
+				explicit DescribeRdsVSwitchsResult(const std::string &payload);
+				~DescribeRdsVSwitchsResult();
+				VSwitches getVSwitches()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				VSwitches vSwitches_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DESCRIBERDSVSWITCHSRESULT_H_

+ 69 - 0
gpdb/include/alibabacloud/gpdb/model/DescribeRdsVpcsRequest.h

@@ -0,0 +1,69 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DESCRIBERDSVPCSREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_DESCRIBERDSVPCSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DescribeRdsVpcsRequest : public RpcServiceRequest
+			{
+
+			public:
+				DescribeRdsVpcsRequest();
+				~DescribeRdsVpcsRequest();
+
+				long getResourceOwnerId()const;
+				void setResourceOwnerId(long resourceOwnerId);
+				std::string getSecurityToken()const;
+				void setSecurityToken(const std::string& securityToken);
+				std::string getResourceOwnerAccount()const;
+				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getOwnerAccount()const;
+				void setOwnerAccount(const std::string& ownerAccount);
+				std::string getZoneId()const;
+				void setZoneId(const std::string& zoneId);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				long resourceOwnerId_;
+				std::string securityToken_;
+				std::string resourceOwnerAccount_;
+				std::string regionId_;
+				std::string ownerAccount_;
+				std::string zoneId_;
+				long ownerId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DESCRIBERDSVPCSREQUEST_H_

+ 80 - 0
gpdb/include/alibabacloud/gpdb/model/DescribeRdsVpcsResult.h

@@ -0,0 +1,80 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DESCRIBERDSVPCSRESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_DESCRIBERDSVPCSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DescribeRdsVpcsResult : public ServiceResult
+			{
+			public:
+				struct Vpcs
+				{
+					struct VpcItem
+					{
+						struct VSwitch
+						{
+							bool isDefault;
+							std::string status;
+							std::string izNo;
+							std::string gmtCreate;
+							std::string vSwitchId;
+							std::string gmtModified;
+							std::string cidrBlock;
+							std::string vSwitchName;
+						};
+						bool isDefault;
+						std::string status;
+						std::vector<VpcItem::VSwitch> vSwitchs;
+						std::string regionNo;
+						std::string gmtCreate;
+						std::string vpcId;
+						std::string gmtModified;
+						std::string cidrBlock;
+						std::string vpcName;
+						std::string bid;
+						std::string aliUid;
+					};
+					std::vector<VpcItem> vpc;
+				};
+
+
+				DescribeRdsVpcsResult();
+				explicit DescribeRdsVpcsResult(const std::string &payload);
+				~DescribeRdsVpcsResult();
+				Vpcs getVpcs()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				Vpcs vpcs_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DESCRIBERDSVPCSRESULT_H_

+ 48 - 0
gpdb/include/alibabacloud/gpdb/model/DescribeRegionsRequest.h

@@ -0,0 +1,48 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DESCRIBEREGIONSREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_DESCRIBEREGIONSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DescribeRegionsRequest : public RpcServiceRequest
+			{
+
+			public:
+				DescribeRegionsRequest();
+				~DescribeRegionsRequest();
+
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DESCRIBEREGIONSREQUEST_H_

+ 61 - 0
gpdb/include/alibabacloud/gpdb/model/DescribeRegionsResult.h

@@ -0,0 +1,61 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DESCRIBEREGIONSRESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_DESCRIBEREGIONSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DescribeRegionsResult : public ServiceResult
+			{
+			public:
+				struct Region
+				{
+					struct Zone
+					{
+						bool vpcEnabled;
+						std::string zoneId;
+					};
+					std::string regionId;
+					std::vector<Region::Zone> zones;
+				};
+
+
+				DescribeRegionsResult();
+				explicit DescribeRegionsResult(const std::string &payload);
+				~DescribeRegionsResult();
+				std::vector<Region> getRegions()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<Region> regions_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DESCRIBEREGIONSRESULT_H_

+ 51 - 0
gpdb/include/alibabacloud/gpdb/model/DescribeResourceUsageRequest.h

@@ -0,0 +1,51 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DESCRIBERESOURCEUSAGEREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_DESCRIBERESOURCEUSAGEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DescribeResourceUsageRequest : public RpcServiceRequest
+			{
+
+			public:
+				DescribeResourceUsageRequest();
+				~DescribeResourceUsageRequest();
+
+				std::string getDBInstanceId()const;
+				void setDBInstanceId(const std::string& dBInstanceId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string dBInstanceId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DESCRIBERESOURCEUSAGEREQUEST_H_

+ 61 - 0
gpdb/include/alibabacloud/gpdb/model/DescribeResourceUsageResult.h

@@ -0,0 +1,61 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DESCRIBERESOURCEUSAGERESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_DESCRIBERESOURCEUSAGERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DescribeResourceUsageResult : public ServiceResult
+			{
+			public:
+
+
+				DescribeResourceUsageResult();
+				explicit DescribeResourceUsageResult(const std::string &payload);
+				~DescribeResourceUsageResult();
+				long getLogSize()const;
+				std::string getDBInstanceId()const;
+				long getDataSize()const;
+				long getBackupSize()const;
+				long getDiskUsed()const;
+				std::string getEngine()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				long logSize_;
+				std::string dBInstanceId_;
+				long dataSize_;
+				long backupSize_;
+				long diskUsed_;
+				std::string engine_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DESCRIBERESOURCEUSAGERESULT_H_

+ 51 - 0
gpdb/include/alibabacloud/gpdb/model/DescribeSQLCollectorPolicyRequest.h

@@ -0,0 +1,51 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DESCRIBESQLCOLLECTORPOLICYREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_DESCRIBESQLCOLLECTORPOLICYREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DescribeSQLCollectorPolicyRequest : public RpcServiceRequest
+			{
+
+			public:
+				DescribeSQLCollectorPolicyRequest();
+				~DescribeSQLCollectorPolicyRequest();
+
+				std::string getDBInstanceId()const;
+				void setDBInstanceId(const std::string& dBInstanceId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string dBInstanceId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DESCRIBESQLCOLLECTORPOLICYREQUEST_H_

+ 51 - 0
gpdb/include/alibabacloud/gpdb/model/DescribeSQLCollectorPolicyResult.h

@@ -0,0 +1,51 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DESCRIBESQLCOLLECTORPOLICYRESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_DESCRIBESQLCOLLECTORPOLICYRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DescribeSQLCollectorPolicyResult : public ServiceResult
+			{
+			public:
+
+
+				DescribeSQLCollectorPolicyResult();
+				explicit DescribeSQLCollectorPolicyResult(const std::string &payload);
+				~DescribeSQLCollectorPolicyResult();
+				std::string getSQLCollectorStatus()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string sQLCollectorStatus_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DESCRIBESQLCOLLECTORPOLICYRESULT_H_

+ 60 - 0
gpdb/include/alibabacloud/gpdb/model/DescribeSQLLogFilesRequest.h

@@ -0,0 +1,60 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DESCRIBESQLLOGFILESREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_DESCRIBESQLLOGFILESREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DescribeSQLLogFilesRequest : public RpcServiceRequest
+			{
+
+			public:
+				DescribeSQLLogFilesRequest();
+				~DescribeSQLLogFilesRequest();
+
+				std::string getFileName()const;
+				void setFileName(const std::string& fileName);
+				int getPageSize()const;
+				void setPageSize(int pageSize);
+				std::string getDBInstanceId()const;
+				void setDBInstanceId(const std::string& dBInstanceId);
+				int getPageNumber()const;
+				void setPageNumber(int pageNumber);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string fileName_;
+				int pageSize_;
+				std::string dBInstanceId_;
+				int pageNumber_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DESCRIBESQLLOGFILESREQUEST_H_

+ 66 - 0
gpdb/include/alibabacloud/gpdb/model/DescribeSQLLogFilesResult.h

@@ -0,0 +1,66 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DESCRIBESQLLOGFILESRESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_DESCRIBESQLLOGFILESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DescribeSQLLogFilesResult : public ServiceResult
+			{
+			public:
+				struct LogFile
+				{
+					std::string logStatus;
+					std::string logStartTime;
+					std::string logSize;
+					std::string logDownloadURL;
+					std::string fileID;
+					std::string logEndTime;
+				};
+
+
+				DescribeSQLLogFilesResult();
+				explicit DescribeSQLLogFilesResult(const std::string &payload);
+				~DescribeSQLLogFilesResult();
+				int getTotalRecordCount()const;
+				int getPageRecordCount()const;
+				int getPageNumber()const;
+				std::vector<LogFile> getItems()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				int totalRecordCount_;
+				int pageRecordCount_;
+				int pageNumber_;
+				std::vector<LogFile> items_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DESCRIBESQLLOGFILESRESULT_H_

+ 75 - 0
gpdb/include/alibabacloud/gpdb/model/DescribeSQLLogRecordsRequest.h

@@ -0,0 +1,75 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DESCRIBESQLLOGRECORDSREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_DESCRIBESQLLOGRECORDSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DescribeSQLLogRecordsRequest : public RpcServiceRequest
+			{
+
+			public:
+				DescribeSQLLogRecordsRequest();
+				~DescribeSQLLogRecordsRequest();
+
+				std::string getDatabase()const;
+				void setDatabase(const std::string& database);
+				std::string getForm()const;
+				void setForm(const std::string& form);
+				int getPageSize()const;
+				void setPageSize(int pageSize);
+				std::string getEndTime()const;
+				void setEndTime(const std::string& endTime);
+				std::string getDBInstanceId()const;
+				void setDBInstanceId(const std::string& dBInstanceId);
+				std::string getStartTime()const;
+				void setStartTime(const std::string& startTime);
+				std::string getUser()const;
+				void setUser(const std::string& user);
+				std::string getQueryKeywords()const;
+				void setQueryKeywords(const std::string& queryKeywords);
+				int getPageNumber()const;
+				void setPageNumber(int pageNumber);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string database_;
+				std::string form_;
+				int pageSize_;
+				std::string endTime_;
+				std::string dBInstanceId_;
+				std::string startTime_;
+				std::string user_;
+				std::string queryKeywords_;
+				int pageNumber_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DESCRIBESQLLOGRECORDSREQUEST_H_

+ 68 - 0
gpdb/include/alibabacloud/gpdb/model/DescribeSQLLogRecordsResult.h

@@ -0,0 +1,68 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DESCRIBESQLLOGRECORDSRESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_DESCRIBESQLLOGRECORDSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DescribeSQLLogRecordsResult : public ServiceResult
+			{
+			public:
+				struct SQLRecord
+				{
+					std::string executeTime;
+					std::string threadID;
+					long returnRowCounts;
+					std::string dBName;
+					long totalExecutionTimes;
+					std::string hostAddress;
+					std::string accountName;
+					std::string sQLText;
+				};
+
+
+				DescribeSQLLogRecordsResult();
+				explicit DescribeSQLLogRecordsResult(const std::string &payload);
+				~DescribeSQLLogRecordsResult();
+				int getTotalRecordCount()const;
+				int getPageRecordCount()const;
+				int getPageNumber()const;
+				std::vector<SQLRecord> getItems()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				int totalRecordCount_;
+				int pageRecordCount_;
+				int pageNumber_;
+				std::vector<SQLRecord> items_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DESCRIBESQLLOGRECORDSRESULT_H_

+ 69 - 0
gpdb/include/alibabacloud/gpdb/model/DescribeSlowLogRecordsRequest.h

@@ -0,0 +1,69 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DESCRIBESLOWLOGRECORDSREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_DESCRIBESLOWLOGRECORDSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DescribeSlowLogRecordsRequest : public RpcServiceRequest
+			{
+
+			public:
+				DescribeSlowLogRecordsRequest();
+				~DescribeSlowLogRecordsRequest();
+
+				long getSQLId()const;
+				void setSQLId(long sQLId);
+				std::string getDBName()const;
+				void setDBName(const std::string& dBName);
+				int getPageSize()const;
+				void setPageSize(int pageSize);
+				std::string getEndTime()const;
+				void setEndTime(const std::string& endTime);
+				std::string getDBInstanceId()const;
+				void setDBInstanceId(const std::string& dBInstanceId);
+				std::string getStartTime()const;
+				void setStartTime(const std::string& startTime);
+				int getPageNumber()const;
+				void setPageNumber(int pageNumber);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				long sQLId_;
+				std::string dBName_;
+				int pageSize_;
+				std::string endTime_;
+				std::string dBInstanceId_;
+				std::string startTime_;
+				int pageNumber_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DESCRIBESLOWLOGRECORDSREQUEST_H_

+ 70 - 0
gpdb/include/alibabacloud/gpdb/model/DescribeSlowLogRecordsResult.h

@@ -0,0 +1,70 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_DESCRIBESLOWLOGRECORDSRESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_DESCRIBESLOWLOGRECORDSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT DescribeSlowLogRecordsResult : public ServiceResult
+			{
+			public:
+				struct SQLSlowRecord
+				{
+					long queryTimes;
+					std::string executionStartTime;
+					long returnRowCounts;
+					long lockTimes;
+					std::string dBName;
+					long parseRowCounts;
+					std::string hostAddress;
+					std::string sQLText;
+				};
+
+
+				DescribeSlowLogRecordsResult();
+				explicit DescribeSlowLogRecordsResult(const std::string &payload);
+				~DescribeSlowLogRecordsResult();
+				int getTotalRecordCount()const;
+				int getPageRecordCount()const;
+				int getPageNumber()const;
+				std::vector<SQLSlowRecord> getItems()const;
+				std::string getEngine()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				int totalRecordCount_;
+				int pageRecordCount_;
+				int pageNumber_;
+				std::vector<SQLSlowRecord> items_;
+				std::string engine_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_DESCRIBESLOWLOGRECORDSRESULT_H_

+ 80 - 0
gpdb/include/alibabacloud/gpdb/model/ListTagResourcesRequest.h

@@ -0,0 +1,80 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_LISTTAGRESOURCESREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_LISTTAGRESOURCESREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT ListTagResourcesRequest : public RpcServiceRequest
+			{
+				struct Tag
+				{
+					std::string value;
+					std::string key;
+				};
+
+			public:
+				ListTagResourcesRequest();
+				~ListTagResourcesRequest();
+
+				long getResourceOwnerId()const;
+				void setResourceOwnerId(long resourceOwnerId);
+				std::vector<std::string> getResourceId()const;
+				void setResourceId(const std::vector<std::string>& resourceId);
+				std::string getResourceOwnerAccount()const;
+				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getNextToken()const;
+				void setNextToken(const std::string& nextToken);
+				std::string getOwnerAccount()const;
+				void setOwnerAccount(const std::string& ownerAccount);
+				std::vector<Tag> getTag()const;
+				void setTag(const std::vector<Tag>& tag);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getResourceType()const;
+				void setResourceType(const std::string& resourceType);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				long resourceOwnerId_;
+				std::vector<std::string> resourceId_;
+				std::string resourceOwnerAccount_;
+				std::string regionId_;
+				std::string nextToken_;
+				std::string ownerAccount_;
+				std::vector<Tag> tag_;
+				long ownerId_;
+				std::string resourceType_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_LISTTAGRESOURCESREQUEST_H_

+ 60 - 0
gpdb/include/alibabacloud/gpdb/model/ListTagResourcesResult.h

@@ -0,0 +1,60 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_LISTTAGRESOURCESRESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_LISTTAGRESOURCESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT ListTagResourcesResult : public ServiceResult
+			{
+			public:
+				struct TagResource
+				{
+					std::string resourceId;
+					std::string tagKey;
+					std::string resourceType;
+					std::string tagValue;
+				};
+
+
+				ListTagResourcesResult();
+				explicit ListTagResourcesResult(const std::string &payload);
+				~ListTagResourcesResult();
+				std::string getNextToken()const;
+				std::vector<TagResource> getTagResources()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string nextToken_;
+				std::vector<TagResource> tagResources_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_LISTTAGRESOURCESRESULT_H_

+ 57 - 0
gpdb/include/alibabacloud/gpdb/model/ModifyAccountDescriptionRequest.h

@@ -0,0 +1,57 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_MODIFYACCOUNTDESCRIPTIONREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_MODIFYACCOUNTDESCRIPTIONREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT ModifyAccountDescriptionRequest : public RpcServiceRequest
+			{
+
+			public:
+				ModifyAccountDescriptionRequest();
+				~ModifyAccountDescriptionRequest();
+
+				std::string getAccountName()const;
+				void setAccountName(const std::string& accountName);
+				std::string getDBInstanceId()const;
+				void setDBInstanceId(const std::string& dBInstanceId);
+				std::string getAccountDescription()const;
+				void setAccountDescription(const std::string& accountDescription);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string accountName_;
+				std::string dBInstanceId_;
+				std::string accountDescription_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_MODIFYACCOUNTDESCRIPTIONREQUEST_H_

+ 49 - 0
gpdb/include/alibabacloud/gpdb/model/ModifyAccountDescriptionResult.h

@@ -0,0 +1,49 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_MODIFYACCOUNTDESCRIPTIONRESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_MODIFYACCOUNTDESCRIPTIONRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT ModifyAccountDescriptionResult : public ServiceResult
+			{
+			public:
+
+
+				ModifyAccountDescriptionResult();
+				explicit ModifyAccountDescriptionResult(const std::string &payload);
+				~ModifyAccountDescriptionResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_MODIFYACCOUNTDESCRIPTIONRESULT_H_

+ 54 - 0
gpdb/include/alibabacloud/gpdb/model/ModifyDBInstanceConnectionModeRequest.h

@@ -0,0 +1,54 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCECONNECTIONMODEREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCECONNECTIONMODEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT ModifyDBInstanceConnectionModeRequest : public RpcServiceRequest
+			{
+
+			public:
+				ModifyDBInstanceConnectionModeRequest();
+				~ModifyDBInstanceConnectionModeRequest();
+
+				std::string getConnectionMode()const;
+				void setConnectionMode(const std::string& connectionMode);
+				std::string getDBInstanceId()const;
+				void setDBInstanceId(const std::string& dBInstanceId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string connectionMode_;
+				std::string dBInstanceId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCECONNECTIONMODEREQUEST_H_

+ 49 - 0
gpdb/include/alibabacloud/gpdb/model/ModifyDBInstanceConnectionModeResult.h

@@ -0,0 +1,49 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCECONNECTIONMODERESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCECONNECTIONMODERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT ModifyDBInstanceConnectionModeResult : public ServiceResult
+			{
+			public:
+
+
+				ModifyDBInstanceConnectionModeResult();
+				explicit ModifyDBInstanceConnectionModeResult(const std::string &payload);
+				~ModifyDBInstanceConnectionModeResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCECONNECTIONMODERESULT_H_

+ 60 - 0
gpdb/include/alibabacloud/gpdb/model/ModifyDBInstanceConnectionStringRequest.h

@@ -0,0 +1,60 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCECONNECTIONSTRINGREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCECONNECTIONSTRINGREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT ModifyDBInstanceConnectionStringRequest : public RpcServiceRequest
+			{
+
+			public:
+				ModifyDBInstanceConnectionStringRequest();
+				~ModifyDBInstanceConnectionStringRequest();
+
+				std::string getConnectionStringPrefix()const;
+				void setConnectionStringPrefix(const std::string& connectionStringPrefix);
+				std::string getPort()const;
+				void setPort(const std::string& port);
+				std::string getDBInstanceId()const;
+				void setDBInstanceId(const std::string& dBInstanceId);
+				std::string getCurrentConnectionString()const;
+				void setCurrentConnectionString(const std::string& currentConnectionString);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string connectionStringPrefix_;
+				std::string port_;
+				std::string dBInstanceId_;
+				std::string currentConnectionString_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCECONNECTIONSTRINGREQUEST_H_

+ 49 - 0
gpdb/include/alibabacloud/gpdb/model/ModifyDBInstanceConnectionStringResult.h

@@ -0,0 +1,49 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCECONNECTIONSTRINGRESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCECONNECTIONSTRINGRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT ModifyDBInstanceConnectionStringResult : public ServiceResult
+			{
+			public:
+
+
+				ModifyDBInstanceConnectionStringResult();
+				explicit ModifyDBInstanceConnectionStringResult(const std::string &payload);
+				~ModifyDBInstanceConnectionStringResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCECONNECTIONSTRINGRESULT_H_

+ 54 - 0
gpdb/include/alibabacloud/gpdb/model/ModifyDBInstanceDescriptionRequest.h

@@ -0,0 +1,54 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCEDESCRIPTIONREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCEDESCRIPTIONREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT ModifyDBInstanceDescriptionRequest : public RpcServiceRequest
+			{
+
+			public:
+				ModifyDBInstanceDescriptionRequest();
+				~ModifyDBInstanceDescriptionRequest();
+
+				std::string getDBInstanceId()const;
+				void setDBInstanceId(const std::string& dBInstanceId);
+				std::string getDBInstanceDescription()const;
+				void setDBInstanceDescription(const std::string& dBInstanceDescription);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string dBInstanceId_;
+				std::string dBInstanceDescription_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCEDESCRIPTIONREQUEST_H_

+ 49 - 0
gpdb/include/alibabacloud/gpdb/model/ModifyDBInstanceDescriptionResult.h

@@ -0,0 +1,49 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCEDESCRIPTIONRESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCEDESCRIPTIONRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT ModifyDBInstanceDescriptionResult : public ServiceResult
+			{
+			public:
+
+
+				ModifyDBInstanceDescriptionResult();
+				explicit ModifyDBInstanceDescriptionResult(const std::string &payload);
+				~ModifyDBInstanceDescriptionResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCEDESCRIPTIONRESULT_H_

+ 57 - 0
gpdb/include/alibabacloud/gpdb/model/ModifyDBInstanceMaintainTimeRequest.h

@@ -0,0 +1,57 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCEMAINTAINTIMEREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCEMAINTAINTIMEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT ModifyDBInstanceMaintainTimeRequest : public RpcServiceRequest
+			{
+
+			public:
+				ModifyDBInstanceMaintainTimeRequest();
+				~ModifyDBInstanceMaintainTimeRequest();
+
+				std::string getEndTime()const;
+				void setEndTime(const std::string& endTime);
+				std::string getDBInstanceId()const;
+				void setDBInstanceId(const std::string& dBInstanceId);
+				std::string getStartTime()const;
+				void setStartTime(const std::string& startTime);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string endTime_;
+				std::string dBInstanceId_;
+				std::string startTime_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCEMAINTAINTIMEREQUEST_H_

+ 49 - 0
gpdb/include/alibabacloud/gpdb/model/ModifyDBInstanceMaintainTimeResult.h

@@ -0,0 +1,49 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCEMAINTAINTIMERESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCEMAINTAINTIMERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT ModifyDBInstanceMaintainTimeResult : public ServiceResult
+			{
+			public:
+
+
+				ModifyDBInstanceMaintainTimeResult();
+				explicit ModifyDBInstanceMaintainTimeResult(const std::string &payload);
+				~ModifyDBInstanceMaintainTimeResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCEMAINTAINTIMERESULT_H_

+ 63 - 0
gpdb/include/alibabacloud/gpdb/model/ModifyDBInstanceNetworkTypeRequest.h

@@ -0,0 +1,63 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCENETWORKTYPEREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCENETWORKTYPEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT ModifyDBInstanceNetworkTypeRequest : public RpcServiceRequest
+			{
+
+			public:
+				ModifyDBInstanceNetworkTypeRequest();
+				~ModifyDBInstanceNetworkTypeRequest();
+
+				std::string getVSwitchId()const;
+				void setVSwitchId(const std::string& vSwitchId);
+				std::string getPrivateIpAddress()const;
+				void setPrivateIpAddress(const std::string& privateIpAddress);
+				std::string getVPCId()const;
+				void setVPCId(const std::string& vPCId);
+				std::string getDBInstanceId()const;
+				void setDBInstanceId(const std::string& dBInstanceId);
+				std::string getInstanceNetworkType()const;
+				void setInstanceNetworkType(const std::string& instanceNetworkType);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string vSwitchId_;
+				std::string privateIpAddress_;
+				std::string vPCId_;
+				std::string dBInstanceId_;
+				std::string instanceNetworkType_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCENETWORKTYPEREQUEST_H_

+ 49 - 0
gpdb/include/alibabacloud/gpdb/model/ModifyDBInstanceNetworkTypeResult.h

@@ -0,0 +1,49 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCENETWORKTYPERESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCENETWORKTYPERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT ModifyDBInstanceNetworkTypeResult : public ServiceResult
+			{
+			public:
+
+
+				ModifyDBInstanceNetworkTypeResult();
+				explicit ModifyDBInstanceNetworkTypeResult(const std::string &payload);
+				~ModifyDBInstanceNetworkTypeResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_MODIFYDBINSTANCENETWORKTYPERESULT_H_

+ 54 - 0
gpdb/include/alibabacloud/gpdb/model/ModifySQLCollectorPolicyRequest.h

@@ -0,0 +1,54 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_MODIFYSQLCOLLECTORPOLICYREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_MODIFYSQLCOLLECTORPOLICYREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT ModifySQLCollectorPolicyRequest : public RpcServiceRequest
+			{
+
+			public:
+				ModifySQLCollectorPolicyRequest();
+				~ModifySQLCollectorPolicyRequest();
+
+				std::string getSQLCollectorStatus()const;
+				void setSQLCollectorStatus(const std::string& sQLCollectorStatus);
+				std::string getDBInstanceId()const;
+				void setDBInstanceId(const std::string& dBInstanceId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string sQLCollectorStatus_;
+				std::string dBInstanceId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_MODIFYSQLCOLLECTORPOLICYREQUEST_H_

+ 49 - 0
gpdb/include/alibabacloud/gpdb/model/ModifySQLCollectorPolicyResult.h

@@ -0,0 +1,49 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_MODIFYSQLCOLLECTORPOLICYRESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_MODIFYSQLCOLLECTORPOLICYRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT ModifySQLCollectorPolicyResult : public ServiceResult
+			{
+			public:
+
+
+				ModifySQLCollectorPolicyResult();
+				explicit ModifySQLCollectorPolicyResult(const std::string &payload);
+				~ModifySQLCollectorPolicyResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_MODIFYSQLCOLLECTORPOLICYRESULT_H_

+ 60 - 0
gpdb/include/alibabacloud/gpdb/model/ModifySecurityIpsRequest.h

@@ -0,0 +1,60 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_MODIFYSECURITYIPSREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_MODIFYSECURITYIPSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT ModifySecurityIpsRequest : public RpcServiceRequest
+			{
+
+			public:
+				ModifySecurityIpsRequest();
+				~ModifySecurityIpsRequest();
+
+				std::string getSecurityIPList()const;
+				void setSecurityIPList(const std::string& securityIPList);
+				std::string getDBInstanceIPArrayName()const;
+				void setDBInstanceIPArrayName(const std::string& dBInstanceIPArrayName);
+				std::string getDBInstanceIPArrayAttribute()const;
+				void setDBInstanceIPArrayAttribute(const std::string& dBInstanceIPArrayAttribute);
+				std::string getDBInstanceId()const;
+				void setDBInstanceId(const std::string& dBInstanceId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string securityIPList_;
+				std::string dBInstanceIPArrayName_;
+				std::string dBInstanceIPArrayAttribute_;
+				std::string dBInstanceId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_MODIFYSECURITYIPSREQUEST_H_

+ 49 - 0
gpdb/include/alibabacloud/gpdb/model/ModifySecurityIpsResult.h

@@ -0,0 +1,49 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_MODIFYSECURITYIPSRESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_MODIFYSECURITYIPSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT ModifySecurityIpsResult : public ServiceResult
+			{
+			public:
+
+
+				ModifySecurityIpsResult();
+				explicit ModifySecurityIpsResult(const std::string &payload);
+				~ModifySecurityIpsResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_MODIFYSECURITYIPSRESULT_H_

+ 54 - 0
gpdb/include/alibabacloud/gpdb/model/ReleaseInstancePublicConnectionRequest.h

@@ -0,0 +1,54 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_RELEASEINSTANCEPUBLICCONNECTIONREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_RELEASEINSTANCEPUBLICCONNECTIONREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT ReleaseInstancePublicConnectionRequest : public RpcServiceRequest
+			{
+
+			public:
+				ReleaseInstancePublicConnectionRequest();
+				~ReleaseInstancePublicConnectionRequest();
+
+				std::string getDBInstanceId()const;
+				void setDBInstanceId(const std::string& dBInstanceId);
+				std::string getCurrentConnectionString()const;
+				void setCurrentConnectionString(const std::string& currentConnectionString);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string dBInstanceId_;
+				std::string currentConnectionString_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_RELEASEINSTANCEPUBLICCONNECTIONREQUEST_H_

+ 49 - 0
gpdb/include/alibabacloud/gpdb/model/ReleaseInstancePublicConnectionResult.h

@@ -0,0 +1,49 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_RELEASEINSTANCEPUBLICCONNECTIONRESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_RELEASEINSTANCEPUBLICCONNECTIONRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT ReleaseInstancePublicConnectionResult : public ServiceResult
+			{
+			public:
+
+
+				ReleaseInstancePublicConnectionResult();
+				explicit ReleaseInstancePublicConnectionResult(const std::string &payload);
+				~ReleaseInstancePublicConnectionResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_RELEASEINSTANCEPUBLICCONNECTIONRESULT_H_

+ 57 - 0
gpdb/include/alibabacloud/gpdb/model/ResetAccountPasswordRequest.h

@@ -0,0 +1,57 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_RESETACCOUNTPASSWORDREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_RESETACCOUNTPASSWORDREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT ResetAccountPasswordRequest : public RpcServiceRequest
+			{
+
+			public:
+				ResetAccountPasswordRequest();
+				~ResetAccountPasswordRequest();
+
+				std::string getAccountPassword()const;
+				void setAccountPassword(const std::string& accountPassword);
+				std::string getAccountName()const;
+				void setAccountName(const std::string& accountName);
+				std::string getDBInstanceId()const;
+				void setDBInstanceId(const std::string& dBInstanceId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string accountPassword_;
+				std::string accountName_;
+				std::string dBInstanceId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_RESETACCOUNTPASSWORDREQUEST_H_

+ 49 - 0
gpdb/include/alibabacloud/gpdb/model/ResetAccountPasswordResult.h

@@ -0,0 +1,49 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_RESETACCOUNTPASSWORDRESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_RESETACCOUNTPASSWORDRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT ResetAccountPasswordResult : public ServiceResult
+			{
+			public:
+
+
+				ResetAccountPasswordResult();
+				explicit ResetAccountPasswordResult(const std::string &payload);
+				~ResetAccountPasswordResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_RESETACCOUNTPASSWORDRESULT_H_

+ 54 - 0
gpdb/include/alibabacloud/gpdb/model/RestartDBInstanceRequest.h

@@ -0,0 +1,54 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_RESTARTDBINSTANCEREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_RESTARTDBINSTANCEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT RestartDBInstanceRequest : public RpcServiceRequest
+			{
+
+			public:
+				RestartDBInstanceRequest();
+				~RestartDBInstanceRequest();
+
+				std::string getClientToken()const;
+				void setClientToken(const std::string& clientToken);
+				std::string getDBInstanceId()const;
+				void setDBInstanceId(const std::string& dBInstanceId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string clientToken_;
+				std::string dBInstanceId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_RESTARTDBINSTANCEREQUEST_H_

+ 49 - 0
gpdb/include/alibabacloud/gpdb/model/RestartDBInstanceResult.h

@@ -0,0 +1,49 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_RESTARTDBINSTANCERESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_RESTARTDBINSTANCERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT RestartDBInstanceResult : public ServiceResult
+			{
+			public:
+
+
+				RestartDBInstanceResult();
+				explicit RestartDBInstanceResult(const std::string &payload);
+				~RestartDBInstanceResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_RESTARTDBINSTANCERESULT_H_

+ 57 - 0
gpdb/include/alibabacloud/gpdb/model/SwitchDBInstanceNetTypeRequest.h

@@ -0,0 +1,57 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_SWITCHDBINSTANCENETTYPEREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_SWITCHDBINSTANCENETTYPEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT SwitchDBInstanceNetTypeRequest : public RpcServiceRequest
+			{
+
+			public:
+				SwitchDBInstanceNetTypeRequest();
+				~SwitchDBInstanceNetTypeRequest();
+
+				std::string getConnectionStringPrefix()const;
+				void setConnectionStringPrefix(const std::string& connectionStringPrefix);
+				std::string getPort()const;
+				void setPort(const std::string& port);
+				std::string getDBInstanceId()const;
+				void setDBInstanceId(const std::string& dBInstanceId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string connectionStringPrefix_;
+				std::string port_;
+				std::string dBInstanceId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_SWITCHDBINSTANCENETTYPEREQUEST_H_

+ 49 - 0
gpdb/include/alibabacloud/gpdb/model/SwitchDBInstanceNetTypeResult.h

@@ -0,0 +1,49 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_SWITCHDBINSTANCENETTYPERESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_SWITCHDBINSTANCENETTYPERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT SwitchDBInstanceNetTypeResult : public ServiceResult
+			{
+			public:
+
+
+				SwitchDBInstanceNetTypeResult();
+				explicit SwitchDBInstanceNetTypeResult(const std::string &payload);
+				~SwitchDBInstanceNetTypeResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_SWITCHDBINSTANCENETTYPERESULT_H_

+ 77 - 0
gpdb/include/alibabacloud/gpdb/model/TagResourcesRequest.h

@@ -0,0 +1,77 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_TAGRESOURCESREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_TAGRESOURCESREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT TagResourcesRequest : public RpcServiceRequest
+			{
+				struct Tag
+				{
+					std::string value;
+					std::string key;
+				};
+
+			public:
+				TagResourcesRequest();
+				~TagResourcesRequest();
+
+				long getResourceOwnerId()const;
+				void setResourceOwnerId(long resourceOwnerId);
+				std::vector<std::string> getResourceId()const;
+				void setResourceId(const std::vector<std::string>& resourceId);
+				std::string getResourceOwnerAccount()const;
+				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getOwnerAccount()const;
+				void setOwnerAccount(const std::string& ownerAccount);
+				std::vector<Tag> getTag()const;
+				void setTag(const std::vector<Tag>& tag);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::string getResourceType()const;
+				void setResourceType(const std::string& resourceType);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				long resourceOwnerId_;
+				std::vector<std::string> resourceId_;
+				std::string resourceOwnerAccount_;
+				std::string regionId_;
+				std::string ownerAccount_;
+				std::vector<Tag> tag_;
+				long ownerId_;
+				std::string resourceType_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_TAGRESOURCESREQUEST_H_

+ 49 - 0
gpdb/include/alibabacloud/gpdb/model/TagResourcesResult.h

@@ -0,0 +1,49 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_TAGRESOURCESRESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_TAGRESOURCESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT TagResourcesResult : public ServiceResult
+			{
+			public:
+
+
+				TagResourcesResult();
+				explicit TagResourcesResult(const std::string &payload);
+				~TagResourcesResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_TAGRESOURCESRESULT_H_

+ 75 - 0
gpdb/include/alibabacloud/gpdb/model/UntagResourcesRequest.h

@@ -0,0 +1,75 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_UNTAGRESOURCESREQUEST_H_
+#define ALIBABACLOUD_GPDB_MODEL_UNTAGRESOURCESREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT UntagResourcesRequest : public RpcServiceRequest
+			{
+
+			public:
+				UntagResourcesRequest();
+				~UntagResourcesRequest();
+
+				bool getAll()const;
+				void setAll(bool all);
+				long getResourceOwnerId()const;
+				void setResourceOwnerId(long resourceOwnerId);
+				std::vector<std::string> getResourceId()const;
+				void setResourceId(const std::vector<std::string>& resourceId);
+				std::string getResourceOwnerAccount()const;
+				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getOwnerAccount()const;
+				void setOwnerAccount(const std::string& ownerAccount);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				std::vector<std::string> getTagKey()const;
+				void setTagKey(const std::vector<std::string>& tagKey);
+				std::string getResourceType()const;
+				void setResourceType(const std::string& resourceType);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				bool all_;
+				long resourceOwnerId_;
+				std::vector<std::string> resourceId_;
+				std::string resourceOwnerAccount_;
+				std::string regionId_;
+				std::string ownerAccount_;
+				long ownerId_;
+				std::vector<std::string> tagKey_;
+				std::string resourceType_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_UNTAGRESOURCESREQUEST_H_

+ 49 - 0
gpdb/include/alibabacloud/gpdb/model/UntagResourcesResult.h

@@ -0,0 +1,49 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_GPDB_MODEL_UNTAGRESOURCESRESULT_H_
+#define ALIBABACLOUD_GPDB_MODEL_UNTAGRESOURCESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/gpdb/GpdbExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Gpdb
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_GPDB_EXPORT UntagResourcesResult : public ServiceResult
+			{
+			public:
+
+
+				UntagResourcesResult();
+				explicit UntagResourcesResult(const std::string &payload);
+				~UntagResourcesResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_GPDB_MODEL_UNTAGRESOURCESRESULT_H_

+ 1313 - 0
gpdb/src/GpdbClient.cc

@@ -0,0 +1,1313 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/gpdb/GpdbClient.h>
+#include <alibabacloud/core/SimpleCredentialsProvider.h>
+
+using namespace AlibabaCloud;
+using namespace AlibabaCloud::Location;
+using namespace AlibabaCloud::Gpdb;
+using namespace AlibabaCloud::Gpdb::Model;
+
+namespace
+{
+	const std::string SERVICE_NAME = "gpdb";
+}
+
+GpdbClient::GpdbClient(const Credentials &credentials, const ClientConfiguration &configuration) :
+	RpcServiceClient(SERVICE_NAME, std::make_shared<SimpleCredentialsProvider>(credentials), configuration)
+{
+	auto locationClient = std::make_shared<LocationClient>(credentials, configuration);
+	endpointProvider_ = std::make_shared<EndpointProvider>(locationClient, configuration.regionId(), SERVICE_NAME, "gpdb");
+}
+
+GpdbClient::GpdbClient(const std::shared_ptr<CredentialsProvider>& credentialsProvider, const ClientConfiguration & configuration) :
+	RpcServiceClient(SERVICE_NAME, credentialsProvider, configuration)
+{
+	auto locationClient = std::make_shared<LocationClient>(credentialsProvider, configuration);
+	endpointProvider_ = std::make_shared<EndpointProvider>(locationClient, configuration.regionId(), SERVICE_NAME, "gpdb");
+}
+
+GpdbClient::GpdbClient(const std::string & accessKeyId, const std::string & accessKeySecret, const ClientConfiguration & configuration) :
+	RpcServiceClient(SERVICE_NAME, std::make_shared<SimpleCredentialsProvider>(accessKeyId, accessKeySecret), configuration)
+{
+	auto locationClient = std::make_shared<LocationClient>(accessKeyId, accessKeySecret, configuration);
+	endpointProvider_ = std::make_shared<EndpointProvider>(locationClient, configuration.regionId(), SERVICE_NAME, "gpdb");
+}
+
+GpdbClient::~GpdbClient()
+{}
+
+GpdbClient::ModifyDBInstanceMaintainTimeOutcome GpdbClient::modifyDBInstanceMaintainTime(const ModifyDBInstanceMaintainTimeRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ModifyDBInstanceMaintainTimeOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ModifyDBInstanceMaintainTimeOutcome(ModifyDBInstanceMaintainTimeResult(outcome.result()));
+	else
+		return ModifyDBInstanceMaintainTimeOutcome(outcome.error());
+}
+
+void GpdbClient::modifyDBInstanceMaintainTimeAsync(const ModifyDBInstanceMaintainTimeRequest& request, const ModifyDBInstanceMaintainTimeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, modifyDBInstanceMaintainTime(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::ModifyDBInstanceMaintainTimeOutcomeCallable GpdbClient::modifyDBInstanceMaintainTimeCallable(const ModifyDBInstanceMaintainTimeRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ModifyDBInstanceMaintainTimeOutcome()>>(
+			[this, request]()
+			{
+			return this->modifyDBInstanceMaintainTime(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::ModifyDBInstanceDescriptionOutcome GpdbClient::modifyDBInstanceDescription(const ModifyDBInstanceDescriptionRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ModifyDBInstanceDescriptionOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ModifyDBInstanceDescriptionOutcome(ModifyDBInstanceDescriptionResult(outcome.result()));
+	else
+		return ModifyDBInstanceDescriptionOutcome(outcome.error());
+}
+
+void GpdbClient::modifyDBInstanceDescriptionAsync(const ModifyDBInstanceDescriptionRequest& request, const ModifyDBInstanceDescriptionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, modifyDBInstanceDescription(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::ModifyDBInstanceDescriptionOutcomeCallable GpdbClient::modifyDBInstanceDescriptionCallable(const ModifyDBInstanceDescriptionRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ModifyDBInstanceDescriptionOutcome()>>(
+			[this, request]()
+			{
+			return this->modifyDBInstanceDescription(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::DescribeDBInstancePerformanceOutcome GpdbClient::describeDBInstancePerformance(const DescribeDBInstancePerformanceRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeDBInstancePerformanceOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeDBInstancePerformanceOutcome(DescribeDBInstancePerformanceResult(outcome.result()));
+	else
+		return DescribeDBInstancePerformanceOutcome(outcome.error());
+}
+
+void GpdbClient::describeDBInstancePerformanceAsync(const DescribeDBInstancePerformanceRequest& request, const DescribeDBInstancePerformanceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeDBInstancePerformance(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::DescribeDBInstancePerformanceOutcomeCallable GpdbClient::describeDBInstancePerformanceCallable(const DescribeDBInstancePerformanceRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeDBInstancePerformanceOutcome()>>(
+			[this, request]()
+			{
+			return this->describeDBInstancePerformance(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::ListTagResourcesOutcome GpdbClient::listTagResources(const ListTagResourcesRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ListTagResourcesOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ListTagResourcesOutcome(ListTagResourcesResult(outcome.result()));
+	else
+		return ListTagResourcesOutcome(outcome.error());
+}
+
+void GpdbClient::listTagResourcesAsync(const ListTagResourcesRequest& request, const ListTagResourcesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, listTagResources(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::ListTagResourcesOutcomeCallable GpdbClient::listTagResourcesCallable(const ListTagResourcesRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ListTagResourcesOutcome()>>(
+			[this, request]()
+			{
+			return this->listTagResources(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::DescribeDBInstancesOutcome GpdbClient::describeDBInstances(const DescribeDBInstancesRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeDBInstancesOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeDBInstancesOutcome(DescribeDBInstancesResult(outcome.result()));
+	else
+		return DescribeDBInstancesOutcome(outcome.error());
+}
+
+void GpdbClient::describeDBInstancesAsync(const DescribeDBInstancesRequest& request, const DescribeDBInstancesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeDBInstances(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::DescribeDBInstancesOutcomeCallable GpdbClient::describeDBInstancesCallable(const DescribeDBInstancesRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeDBInstancesOutcome()>>(
+			[this, request]()
+			{
+			return this->describeDBInstances(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::UntagResourcesOutcome GpdbClient::untagResources(const UntagResourcesRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return UntagResourcesOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return UntagResourcesOutcome(UntagResourcesResult(outcome.result()));
+	else
+		return UntagResourcesOutcome(outcome.error());
+}
+
+void GpdbClient::untagResourcesAsync(const UntagResourcesRequest& request, const UntagResourcesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, untagResources(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::UntagResourcesOutcomeCallable GpdbClient::untagResourcesCallable(const UntagResourcesRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<UntagResourcesOutcome()>>(
+			[this, request]()
+			{
+			return this->untagResources(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::SwitchDBInstanceNetTypeOutcome GpdbClient::switchDBInstanceNetType(const SwitchDBInstanceNetTypeRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return SwitchDBInstanceNetTypeOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return SwitchDBInstanceNetTypeOutcome(SwitchDBInstanceNetTypeResult(outcome.result()));
+	else
+		return SwitchDBInstanceNetTypeOutcome(outcome.error());
+}
+
+void GpdbClient::switchDBInstanceNetTypeAsync(const SwitchDBInstanceNetTypeRequest& request, const SwitchDBInstanceNetTypeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, switchDBInstanceNetType(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::SwitchDBInstanceNetTypeOutcomeCallable GpdbClient::switchDBInstanceNetTypeCallable(const SwitchDBInstanceNetTypeRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<SwitchDBInstanceNetTypeOutcome()>>(
+			[this, request]()
+			{
+			return this->switchDBInstanceNetType(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::AllocateInstancePublicConnectionOutcome GpdbClient::allocateInstancePublicConnection(const AllocateInstancePublicConnectionRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return AllocateInstancePublicConnectionOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return AllocateInstancePublicConnectionOutcome(AllocateInstancePublicConnectionResult(outcome.result()));
+	else
+		return AllocateInstancePublicConnectionOutcome(outcome.error());
+}
+
+void GpdbClient::allocateInstancePublicConnectionAsync(const AllocateInstancePublicConnectionRequest& request, const AllocateInstancePublicConnectionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, allocateInstancePublicConnection(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::AllocateInstancePublicConnectionOutcomeCallable GpdbClient::allocateInstancePublicConnectionCallable(const AllocateInstancePublicConnectionRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<AllocateInstancePublicConnectionOutcome()>>(
+			[this, request]()
+			{
+			return this->allocateInstancePublicConnection(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::DescribeDBInstanceAttributeOutcome GpdbClient::describeDBInstanceAttribute(const DescribeDBInstanceAttributeRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeDBInstanceAttributeOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeDBInstanceAttributeOutcome(DescribeDBInstanceAttributeResult(outcome.result()));
+	else
+		return DescribeDBInstanceAttributeOutcome(outcome.error());
+}
+
+void GpdbClient::describeDBInstanceAttributeAsync(const DescribeDBInstanceAttributeRequest& request, const DescribeDBInstanceAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeDBInstanceAttribute(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::DescribeDBInstanceAttributeOutcomeCallable GpdbClient::describeDBInstanceAttributeCallable(const DescribeDBInstanceAttributeRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeDBInstanceAttributeOutcome()>>(
+			[this, request]()
+			{
+			return this->describeDBInstanceAttribute(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::ModifyAccountDescriptionOutcome GpdbClient::modifyAccountDescription(const ModifyAccountDescriptionRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ModifyAccountDescriptionOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ModifyAccountDescriptionOutcome(ModifyAccountDescriptionResult(outcome.result()));
+	else
+		return ModifyAccountDescriptionOutcome(outcome.error());
+}
+
+void GpdbClient::modifyAccountDescriptionAsync(const ModifyAccountDescriptionRequest& request, const ModifyAccountDescriptionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, modifyAccountDescription(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::ModifyAccountDescriptionOutcomeCallable GpdbClient::modifyAccountDescriptionCallable(const ModifyAccountDescriptionRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ModifyAccountDescriptionOutcome()>>(
+			[this, request]()
+			{
+			return this->modifyAccountDescription(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::DescribeResourceUsageOutcome GpdbClient::describeResourceUsage(const DescribeResourceUsageRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeResourceUsageOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeResourceUsageOutcome(DescribeResourceUsageResult(outcome.result()));
+	else
+		return DescribeResourceUsageOutcome(outcome.error());
+}
+
+void GpdbClient::describeResourceUsageAsync(const DescribeResourceUsageRequest& request, const DescribeResourceUsageAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeResourceUsage(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::DescribeResourceUsageOutcomeCallable GpdbClient::describeResourceUsageCallable(const DescribeResourceUsageRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeResourceUsageOutcome()>>(
+			[this, request]()
+			{
+			return this->describeResourceUsage(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::DescribeSQLCollectorPolicyOutcome GpdbClient::describeSQLCollectorPolicy(const DescribeSQLCollectorPolicyRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeSQLCollectorPolicyOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeSQLCollectorPolicyOutcome(DescribeSQLCollectorPolicyResult(outcome.result()));
+	else
+		return DescribeSQLCollectorPolicyOutcome(outcome.error());
+}
+
+void GpdbClient::describeSQLCollectorPolicyAsync(const DescribeSQLCollectorPolicyRequest& request, const DescribeSQLCollectorPolicyAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeSQLCollectorPolicy(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::DescribeSQLCollectorPolicyOutcomeCallable GpdbClient::describeSQLCollectorPolicyCallable(const DescribeSQLCollectorPolicyRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeSQLCollectorPolicyOutcome()>>(
+			[this, request]()
+			{
+			return this->describeSQLCollectorPolicy(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::ModifySQLCollectorPolicyOutcome GpdbClient::modifySQLCollectorPolicy(const ModifySQLCollectorPolicyRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ModifySQLCollectorPolicyOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ModifySQLCollectorPolicyOutcome(ModifySQLCollectorPolicyResult(outcome.result()));
+	else
+		return ModifySQLCollectorPolicyOutcome(outcome.error());
+}
+
+void GpdbClient::modifySQLCollectorPolicyAsync(const ModifySQLCollectorPolicyRequest& request, const ModifySQLCollectorPolicyAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, modifySQLCollectorPolicy(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::ModifySQLCollectorPolicyOutcomeCallable GpdbClient::modifySQLCollectorPolicyCallable(const ModifySQLCollectorPolicyRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ModifySQLCollectorPolicyOutcome()>>(
+			[this, request]()
+			{
+			return this->modifySQLCollectorPolicy(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::CreateDBInstanceOutcome GpdbClient::createDBInstance(const CreateDBInstanceRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return CreateDBInstanceOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return CreateDBInstanceOutcome(CreateDBInstanceResult(outcome.result()));
+	else
+		return CreateDBInstanceOutcome(outcome.error());
+}
+
+void GpdbClient::createDBInstanceAsync(const CreateDBInstanceRequest& request, const CreateDBInstanceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, createDBInstance(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::CreateDBInstanceOutcomeCallable GpdbClient::createDBInstanceCallable(const CreateDBInstanceRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<CreateDBInstanceOutcome()>>(
+			[this, request]()
+			{
+			return this->createDBInstance(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::DescribeRdsVpcsOutcome GpdbClient::describeRdsVpcs(const DescribeRdsVpcsRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeRdsVpcsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeRdsVpcsOutcome(DescribeRdsVpcsResult(outcome.result()));
+	else
+		return DescribeRdsVpcsOutcome(outcome.error());
+}
+
+void GpdbClient::describeRdsVpcsAsync(const DescribeRdsVpcsRequest& request, const DescribeRdsVpcsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeRdsVpcs(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::DescribeRdsVpcsOutcomeCallable GpdbClient::describeRdsVpcsCallable(const DescribeRdsVpcsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeRdsVpcsOutcome()>>(
+			[this, request]()
+			{
+			return this->describeRdsVpcs(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::DescribeRegionsOutcome GpdbClient::describeRegions(const DescribeRegionsRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeRegionsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeRegionsOutcome(DescribeRegionsResult(outcome.result()));
+	else
+		return DescribeRegionsOutcome(outcome.error());
+}
+
+void GpdbClient::describeRegionsAsync(const DescribeRegionsRequest& request, const DescribeRegionsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeRegions(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::DescribeRegionsOutcomeCallable GpdbClient::describeRegionsCallable(const DescribeRegionsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeRegionsOutcome()>>(
+			[this, request]()
+			{
+			return this->describeRegions(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::ModifyDBInstanceConnectionStringOutcome GpdbClient::modifyDBInstanceConnectionString(const ModifyDBInstanceConnectionStringRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ModifyDBInstanceConnectionStringOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ModifyDBInstanceConnectionStringOutcome(ModifyDBInstanceConnectionStringResult(outcome.result()));
+	else
+		return ModifyDBInstanceConnectionStringOutcome(outcome.error());
+}
+
+void GpdbClient::modifyDBInstanceConnectionStringAsync(const ModifyDBInstanceConnectionStringRequest& request, const ModifyDBInstanceConnectionStringAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, modifyDBInstanceConnectionString(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::ModifyDBInstanceConnectionStringOutcomeCallable GpdbClient::modifyDBInstanceConnectionStringCallable(const ModifyDBInstanceConnectionStringRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ModifyDBInstanceConnectionStringOutcome()>>(
+			[this, request]()
+			{
+			return this->modifyDBInstanceConnectionString(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::DeleteDBInstanceOutcome GpdbClient::deleteDBInstance(const DeleteDBInstanceRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DeleteDBInstanceOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DeleteDBInstanceOutcome(DeleteDBInstanceResult(outcome.result()));
+	else
+		return DeleteDBInstanceOutcome(outcome.error());
+}
+
+void GpdbClient::deleteDBInstanceAsync(const DeleteDBInstanceRequest& request, const DeleteDBInstanceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, deleteDBInstance(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::DeleteDBInstanceOutcomeCallable GpdbClient::deleteDBInstanceCallable(const DeleteDBInstanceRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DeleteDBInstanceOutcome()>>(
+			[this, request]()
+			{
+			return this->deleteDBInstance(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::DescribeSlowLogRecordsOutcome GpdbClient::describeSlowLogRecords(const DescribeSlowLogRecordsRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeSlowLogRecordsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeSlowLogRecordsOutcome(DescribeSlowLogRecordsResult(outcome.result()));
+	else
+		return DescribeSlowLogRecordsOutcome(outcome.error());
+}
+
+void GpdbClient::describeSlowLogRecordsAsync(const DescribeSlowLogRecordsRequest& request, const DescribeSlowLogRecordsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeSlowLogRecords(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::DescribeSlowLogRecordsOutcomeCallable GpdbClient::describeSlowLogRecordsCallable(const DescribeSlowLogRecordsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeSlowLogRecordsOutcome()>>(
+			[this, request]()
+			{
+			return this->describeSlowLogRecords(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::ModifyDBInstanceConnectionModeOutcome GpdbClient::modifyDBInstanceConnectionMode(const ModifyDBInstanceConnectionModeRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ModifyDBInstanceConnectionModeOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ModifyDBInstanceConnectionModeOutcome(ModifyDBInstanceConnectionModeResult(outcome.result()));
+	else
+		return ModifyDBInstanceConnectionModeOutcome(outcome.error());
+}
+
+void GpdbClient::modifyDBInstanceConnectionModeAsync(const ModifyDBInstanceConnectionModeRequest& request, const ModifyDBInstanceConnectionModeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, modifyDBInstanceConnectionMode(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::ModifyDBInstanceConnectionModeOutcomeCallable GpdbClient::modifyDBInstanceConnectionModeCallable(const ModifyDBInstanceConnectionModeRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ModifyDBInstanceConnectionModeOutcome()>>(
+			[this, request]()
+			{
+			return this->modifyDBInstanceConnectionMode(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::RestartDBInstanceOutcome GpdbClient::restartDBInstance(const RestartDBInstanceRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return RestartDBInstanceOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return RestartDBInstanceOutcome(RestartDBInstanceResult(outcome.result()));
+	else
+		return RestartDBInstanceOutcome(outcome.error());
+}
+
+void GpdbClient::restartDBInstanceAsync(const RestartDBInstanceRequest& request, const RestartDBInstanceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, restartDBInstance(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::RestartDBInstanceOutcomeCallable GpdbClient::restartDBInstanceCallable(const RestartDBInstanceRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<RestartDBInstanceOutcome()>>(
+			[this, request]()
+			{
+			return this->restartDBInstance(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::DescribeDBInstanceNetInfoOutcome GpdbClient::describeDBInstanceNetInfo(const DescribeDBInstanceNetInfoRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeDBInstanceNetInfoOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeDBInstanceNetInfoOutcome(DescribeDBInstanceNetInfoResult(outcome.result()));
+	else
+		return DescribeDBInstanceNetInfoOutcome(outcome.error());
+}
+
+void GpdbClient::describeDBInstanceNetInfoAsync(const DescribeDBInstanceNetInfoRequest& request, const DescribeDBInstanceNetInfoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeDBInstanceNetInfo(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::DescribeDBInstanceNetInfoOutcomeCallable GpdbClient::describeDBInstanceNetInfoCallable(const DescribeDBInstanceNetInfoRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeDBInstanceNetInfoOutcome()>>(
+			[this, request]()
+			{
+			return this->describeDBInstanceNetInfo(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::AddBuDBInstanceRelationOutcome GpdbClient::addBuDBInstanceRelation(const AddBuDBInstanceRelationRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return AddBuDBInstanceRelationOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return AddBuDBInstanceRelationOutcome(AddBuDBInstanceRelationResult(outcome.result()));
+	else
+		return AddBuDBInstanceRelationOutcome(outcome.error());
+}
+
+void GpdbClient::addBuDBInstanceRelationAsync(const AddBuDBInstanceRelationRequest& request, const AddBuDBInstanceRelationAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, addBuDBInstanceRelation(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::AddBuDBInstanceRelationOutcomeCallable GpdbClient::addBuDBInstanceRelationCallable(const AddBuDBInstanceRelationRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<AddBuDBInstanceRelationOutcome()>>(
+			[this, request]()
+			{
+			return this->addBuDBInstanceRelation(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::DescribeRdsVSwitchsOutcome GpdbClient::describeRdsVSwitchs(const DescribeRdsVSwitchsRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeRdsVSwitchsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeRdsVSwitchsOutcome(DescribeRdsVSwitchsResult(outcome.result()));
+	else
+		return DescribeRdsVSwitchsOutcome(outcome.error());
+}
+
+void GpdbClient::describeRdsVSwitchsAsync(const DescribeRdsVSwitchsRequest& request, const DescribeRdsVSwitchsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeRdsVSwitchs(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::DescribeRdsVSwitchsOutcomeCallable GpdbClient::describeRdsVSwitchsCallable(const DescribeRdsVSwitchsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeRdsVSwitchsOutcome()>>(
+			[this, request]()
+			{
+			return this->describeRdsVSwitchs(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::ResetAccountPasswordOutcome GpdbClient::resetAccountPassword(const ResetAccountPasswordRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ResetAccountPasswordOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ResetAccountPasswordOutcome(ResetAccountPasswordResult(outcome.result()));
+	else
+		return ResetAccountPasswordOutcome(outcome.error());
+}
+
+void GpdbClient::resetAccountPasswordAsync(const ResetAccountPasswordRequest& request, const ResetAccountPasswordAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, resetAccountPassword(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::ResetAccountPasswordOutcomeCallable GpdbClient::resetAccountPasswordCallable(const ResetAccountPasswordRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ResetAccountPasswordOutcome()>>(
+			[this, request]()
+			{
+			return this->resetAccountPassword(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::CreateAccountOutcome GpdbClient::createAccount(const CreateAccountRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return CreateAccountOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return CreateAccountOutcome(CreateAccountResult(outcome.result()));
+	else
+		return CreateAccountOutcome(outcome.error());
+}
+
+void GpdbClient::createAccountAsync(const CreateAccountRequest& request, const CreateAccountAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, createAccount(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::CreateAccountOutcomeCallable GpdbClient::createAccountCallable(const CreateAccountRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<CreateAccountOutcome()>>(
+			[this, request]()
+			{
+			return this->createAccount(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::DescribeAccountsOutcome GpdbClient::describeAccounts(const DescribeAccountsRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeAccountsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeAccountsOutcome(DescribeAccountsResult(outcome.result()));
+	else
+		return DescribeAccountsOutcome(outcome.error());
+}
+
+void GpdbClient::describeAccountsAsync(const DescribeAccountsRequest& request, const DescribeAccountsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeAccounts(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::DescribeAccountsOutcomeCallable GpdbClient::describeAccountsCallable(const DescribeAccountsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeAccountsOutcome()>>(
+			[this, request]()
+			{
+			return this->describeAccounts(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::DescribeSQLLogRecordsOutcome GpdbClient::describeSQLLogRecords(const DescribeSQLLogRecordsRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeSQLLogRecordsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeSQLLogRecordsOutcome(DescribeSQLLogRecordsResult(outcome.result()));
+	else
+		return DescribeSQLLogRecordsOutcome(outcome.error());
+}
+
+void GpdbClient::describeSQLLogRecordsAsync(const DescribeSQLLogRecordsRequest& request, const DescribeSQLLogRecordsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeSQLLogRecords(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::DescribeSQLLogRecordsOutcomeCallable GpdbClient::describeSQLLogRecordsCallable(const DescribeSQLLogRecordsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeSQLLogRecordsOutcome()>>(
+			[this, request]()
+			{
+			return this->describeSQLLogRecords(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::ModifySecurityIpsOutcome GpdbClient::modifySecurityIps(const ModifySecurityIpsRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ModifySecurityIpsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ModifySecurityIpsOutcome(ModifySecurityIpsResult(outcome.result()));
+	else
+		return ModifySecurityIpsOutcome(outcome.error());
+}
+
+void GpdbClient::modifySecurityIpsAsync(const ModifySecurityIpsRequest& request, const ModifySecurityIpsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, modifySecurityIps(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::ModifySecurityIpsOutcomeCallable GpdbClient::modifySecurityIpsCallable(const ModifySecurityIpsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ModifySecurityIpsOutcome()>>(
+			[this, request]()
+			{
+			return this->modifySecurityIps(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::ReleaseInstancePublicConnectionOutcome GpdbClient::releaseInstancePublicConnection(const ReleaseInstancePublicConnectionRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ReleaseInstancePublicConnectionOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ReleaseInstancePublicConnectionOutcome(ReleaseInstancePublicConnectionResult(outcome.result()));
+	else
+		return ReleaseInstancePublicConnectionOutcome(outcome.error());
+}
+
+void GpdbClient::releaseInstancePublicConnectionAsync(const ReleaseInstancePublicConnectionRequest& request, const ReleaseInstancePublicConnectionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, releaseInstancePublicConnection(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::ReleaseInstancePublicConnectionOutcomeCallable GpdbClient::releaseInstancePublicConnectionCallable(const ReleaseInstancePublicConnectionRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ReleaseInstancePublicConnectionOutcome()>>(
+			[this, request]()
+			{
+			return this->releaseInstancePublicConnection(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::DescribeSQLLogFilesOutcome GpdbClient::describeSQLLogFiles(const DescribeSQLLogFilesRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeSQLLogFilesOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeSQLLogFilesOutcome(DescribeSQLLogFilesResult(outcome.result()));
+	else
+		return DescribeSQLLogFilesOutcome(outcome.error());
+}
+
+void GpdbClient::describeSQLLogFilesAsync(const DescribeSQLLogFilesRequest& request, const DescribeSQLLogFilesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeSQLLogFiles(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::DescribeSQLLogFilesOutcomeCallable GpdbClient::describeSQLLogFilesCallable(const DescribeSQLLogFilesRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeSQLLogFilesOutcome()>>(
+			[this, request]()
+			{
+			return this->describeSQLLogFiles(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::ModifyDBInstanceNetworkTypeOutcome GpdbClient::modifyDBInstanceNetworkType(const ModifyDBInstanceNetworkTypeRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ModifyDBInstanceNetworkTypeOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ModifyDBInstanceNetworkTypeOutcome(ModifyDBInstanceNetworkTypeResult(outcome.result()));
+	else
+		return ModifyDBInstanceNetworkTypeOutcome(outcome.error());
+}
+
+void GpdbClient::modifyDBInstanceNetworkTypeAsync(const ModifyDBInstanceNetworkTypeRequest& request, const ModifyDBInstanceNetworkTypeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, modifyDBInstanceNetworkType(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::ModifyDBInstanceNetworkTypeOutcomeCallable GpdbClient::modifyDBInstanceNetworkTypeCallable(const ModifyDBInstanceNetworkTypeRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ModifyDBInstanceNetworkTypeOutcome()>>(
+			[this, request]()
+			{
+			return this->modifyDBInstanceNetworkType(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::TagResourcesOutcome GpdbClient::tagResources(const TagResourcesRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return TagResourcesOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return TagResourcesOutcome(TagResourcesResult(outcome.result()));
+	else
+		return TagResourcesOutcome(outcome.error());
+}
+
+void GpdbClient::tagResourcesAsync(const TagResourcesRequest& request, const TagResourcesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, tagResources(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::TagResourcesOutcomeCallable GpdbClient::tagResourcesCallable(const TagResourcesRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<TagResourcesOutcome()>>(
+			[this, request]()
+			{
+			return this->tagResources(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::DeleteDatabaseOutcome GpdbClient::deleteDatabase(const DeleteDatabaseRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DeleteDatabaseOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DeleteDatabaseOutcome(DeleteDatabaseResult(outcome.result()));
+	else
+		return DeleteDatabaseOutcome(outcome.error());
+}
+
+void GpdbClient::deleteDatabaseAsync(const DeleteDatabaseRequest& request, const DeleteDatabaseAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, deleteDatabase(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::DeleteDatabaseOutcomeCallable GpdbClient::deleteDatabaseCallable(const DeleteDatabaseRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DeleteDatabaseOutcome()>>(
+			[this, request]()
+			{
+			return this->deleteDatabase(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+GpdbClient::DescribeDBInstanceIPArrayListOutcome GpdbClient::describeDBInstanceIPArrayList(const DescribeDBInstanceIPArrayListRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeDBInstanceIPArrayListOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeDBInstanceIPArrayListOutcome(DescribeDBInstanceIPArrayListResult(outcome.result()));
+	else
+		return DescribeDBInstanceIPArrayListOutcome(outcome.error());
+}
+
+void GpdbClient::describeDBInstanceIPArrayListAsync(const DescribeDBInstanceIPArrayListRequest& request, const DescribeDBInstanceIPArrayListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeDBInstanceIPArrayList(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+GpdbClient::DescribeDBInstanceIPArrayListOutcomeCallable GpdbClient::describeDBInstanceIPArrayListCallable(const DescribeDBInstanceIPArrayListRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeDBInstanceIPArrayListOutcome()>>(
+			[this, request]()
+			{
+			return this->describeDBInstanceIPArrayList(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+

+ 71 - 0
gpdb/src/model/AddBuDBInstanceRelationRequest.cc

@@ -0,0 +1,71 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/gpdb/model/AddBuDBInstanceRelationRequest.h>
+
+using AlibabaCloud::Gpdb::Model::AddBuDBInstanceRelationRequest;
+
+AddBuDBInstanceRelationRequest::AddBuDBInstanceRelationRequest() :
+	RpcServiceRequest("gpdb", "2016-05-03", "AddBuDBInstanceRelation")
+{}
+
+AddBuDBInstanceRelationRequest::~AddBuDBInstanceRelationRequest()
+{}
+
+std::string AddBuDBInstanceRelationRequest::getBusinessUnit()const
+{
+	return businessUnit_;
+}
+
+void AddBuDBInstanceRelationRequest::setBusinessUnit(const std::string& businessUnit)
+{
+	businessUnit_ = businessUnit;
+	setParameter("BusinessUnit", businessUnit);
+}
+
+std::string AddBuDBInstanceRelationRequest::getDBInstanceId()const
+{
+	return dBInstanceId_;
+}
+
+void AddBuDBInstanceRelationRequest::setDBInstanceId(const std::string& dBInstanceId)
+{
+	dBInstanceId_ = dBInstanceId;
+	setParameter("DBInstanceId", dBInstanceId);
+}
+
+long AddBuDBInstanceRelationRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void AddBuDBInstanceRelationRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string AddBuDBInstanceRelationRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void AddBuDBInstanceRelationRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+

+ 59 - 0
gpdb/src/model/AddBuDBInstanceRelationResult.cc

@@ -0,0 +1,59 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/gpdb/model/AddBuDBInstanceRelationResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Gpdb;
+using namespace AlibabaCloud::Gpdb::Model;
+
+AddBuDBInstanceRelationResult::AddBuDBInstanceRelationResult() :
+	ServiceResult()
+{}
+
+AddBuDBInstanceRelationResult::AddBuDBInstanceRelationResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+AddBuDBInstanceRelationResult::~AddBuDBInstanceRelationResult()
+{}
+
+void AddBuDBInstanceRelationResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	if(!value["BusinessUnit"].isNull())
+		businessUnit_ = value["BusinessUnit"].asString();
+	if(!value["DBInstanceName"].isNull())
+		dBInstanceName_ = value["DBInstanceName"].asString();
+
+}
+
+std::string AddBuDBInstanceRelationResult::getBusinessUnit()const
+{
+	return businessUnit_;
+}
+
+std::string AddBuDBInstanceRelationResult::getDBInstanceName()const
+{
+	return dBInstanceName_;
+}
+

+ 104 - 0
gpdb/src/model/AllocateInstancePublicConnectionRequest.cc

@@ -0,0 +1,104 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/gpdb/model/AllocateInstancePublicConnectionRequest.h>
+
+using AlibabaCloud::Gpdb::Model::AllocateInstancePublicConnectionRequest;
+
+AllocateInstancePublicConnectionRequest::AllocateInstancePublicConnectionRequest() :
+	RpcServiceRequest("gpdb", "2016-05-03", "AllocateInstancePublicConnection")
+{}
+
+AllocateInstancePublicConnectionRequest::~AllocateInstancePublicConnectionRequest()
+{}
+
+long AllocateInstancePublicConnectionRequest::getResourceOwnerId()const
+{
+	return resourceOwnerId_;
+}
+
+void AllocateInstancePublicConnectionRequest::setResourceOwnerId(long resourceOwnerId)
+{
+	resourceOwnerId_ = resourceOwnerId;
+	setParameter("ResourceOwnerId", std::to_string(resourceOwnerId));
+}
+
+std::string AllocateInstancePublicConnectionRequest::getConnectionStringPrefix()const
+{
+	return connectionStringPrefix_;
+}
+
+void AllocateInstancePublicConnectionRequest::setConnectionStringPrefix(const std::string& connectionStringPrefix)
+{
+	connectionStringPrefix_ = connectionStringPrefix;
+	setParameter("ConnectionStringPrefix", connectionStringPrefix);
+}
+
+std::string AllocateInstancePublicConnectionRequest::getResourceOwnerAccount()const
+{
+	return resourceOwnerAccount_;
+}
+
+void AllocateInstancePublicConnectionRequest::setResourceOwnerAccount(const std::string& resourceOwnerAccount)
+{
+	resourceOwnerAccount_ = resourceOwnerAccount;
+	setParameter("ResourceOwnerAccount", resourceOwnerAccount);
+}
+
+std::string AllocateInstancePublicConnectionRequest::getPort()const
+{
+	return port_;
+}
+
+void AllocateInstancePublicConnectionRequest::setPort(const std::string& port)
+{
+	port_ = port;
+	setParameter("Port", port);
+}
+
+std::string AllocateInstancePublicConnectionRequest::getDBInstanceId()const
+{
+	return dBInstanceId_;
+}
+
+void AllocateInstancePublicConnectionRequest::setDBInstanceId(const std::string& dBInstanceId)
+{
+	dBInstanceId_ = dBInstanceId;
+	setParameter("DBInstanceId", dBInstanceId);
+}
+
+long AllocateInstancePublicConnectionRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void AllocateInstancePublicConnectionRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string AllocateInstancePublicConnectionRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void AllocateInstancePublicConnectionRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+

+ 45 - 0
gpdb/src/model/AllocateInstancePublicConnectionResult.cc

@@ -0,0 +1,45 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/gpdb/model/AllocateInstancePublicConnectionResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Gpdb;
+using namespace AlibabaCloud::Gpdb::Model;
+
+AllocateInstancePublicConnectionResult::AllocateInstancePublicConnectionResult() :
+	ServiceResult()
+{}
+
+AllocateInstancePublicConnectionResult::AllocateInstancePublicConnectionResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+AllocateInstancePublicConnectionResult::~AllocateInstancePublicConnectionResult()
+{}
+
+void AllocateInstancePublicConnectionResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+
+}
+

+ 104 - 0
gpdb/src/model/CreateAccountRequest.cc

@@ -0,0 +1,104 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/gpdb/model/CreateAccountRequest.h>
+
+using AlibabaCloud::Gpdb::Model::CreateAccountRequest;
+
+CreateAccountRequest::CreateAccountRequest() :
+	RpcServiceRequest("gpdb", "2016-05-03", "CreateAccount")
+{}
+
+CreateAccountRequest::~CreateAccountRequest()
+{}
+
+std::string CreateAccountRequest::getAccountPassword()const
+{
+	return accountPassword_;
+}
+
+void CreateAccountRequest::setAccountPassword(const std::string& accountPassword)
+{
+	accountPassword_ = accountPassword;
+	setParameter("AccountPassword", accountPassword);
+}
+
+std::string CreateAccountRequest::getAccountName()const
+{
+	return accountName_;
+}
+
+void CreateAccountRequest::setAccountName(const std::string& accountName)
+{
+	accountName_ = accountName;
+	setParameter("AccountName", accountName);
+}
+
+std::string CreateAccountRequest::getDatabaseName()const
+{
+	return databaseName_;
+}
+
+void CreateAccountRequest::setDatabaseName(const std::string& databaseName)
+{
+	databaseName_ = databaseName;
+	setParameter("DatabaseName", databaseName);
+}
+
+std::string CreateAccountRequest::getDBInstanceId()const
+{
+	return dBInstanceId_;
+}
+
+void CreateAccountRequest::setDBInstanceId(const std::string& dBInstanceId)
+{
+	dBInstanceId_ = dBInstanceId;
+	setParameter("DBInstanceId", dBInstanceId);
+}
+
+long CreateAccountRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void CreateAccountRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string CreateAccountRequest::getAccountDescription()const
+{
+	return accountDescription_;
+}
+
+void CreateAccountRequest::setAccountDescription(const std::string& accountDescription)
+{
+	accountDescription_ = accountDescription;
+	setParameter("AccountDescription", accountDescription);
+}
+
+std::string CreateAccountRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void CreateAccountRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+

+ 45 - 0
gpdb/src/model/CreateAccountResult.cc

@@ -0,0 +1,45 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/gpdb/model/CreateAccountResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Gpdb;
+using namespace AlibabaCloud::Gpdb::Model;
+
+CreateAccountResult::CreateAccountResult() :
+	ServiceResult()
+{}
+
+CreateAccountResult::CreateAccountResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+CreateAccountResult::~CreateAccountResult()
+{}
+
+void CreateAccountResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+
+}
+

+ 225 - 0
gpdb/src/model/CreateDBInstanceRequest.cc

@@ -0,0 +1,225 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/gpdb/model/CreateDBInstanceRequest.h>
+
+using AlibabaCloud::Gpdb::Model::CreateDBInstanceRequest;
+
+CreateDBInstanceRequest::CreateDBInstanceRequest() :
+	RpcServiceRequest("gpdb", "2016-05-03", "CreateDBInstance")
+{}
+
+CreateDBInstanceRequest::~CreateDBInstanceRequest()
+{}
+
+std::string CreateDBInstanceRequest::getDBInstanceGroupCount()const
+{
+	return dBInstanceGroupCount_;
+}
+
+void CreateDBInstanceRequest::setDBInstanceGroupCount(const std::string& dBInstanceGroupCount)
+{
+	dBInstanceGroupCount_ = dBInstanceGroupCount;
+	setParameter("DBInstanceGroupCount", dBInstanceGroupCount);
+}
+
+std::string CreateDBInstanceRequest::getPeriod()const
+{
+	return period_;
+}
+
+void CreateDBInstanceRequest::setPeriod(const std::string& period)
+{
+	period_ = period;
+	setParameter("Period", period);
+}
+
+std::string CreateDBInstanceRequest::getClientToken()const
+{
+	return clientToken_;
+}
+
+void CreateDBInstanceRequest::setClientToken(const std::string& clientToken)
+{
+	clientToken_ = clientToken;
+	setParameter("ClientToken", clientToken);
+}
+
+std::string CreateDBInstanceRequest::getEngineVersion()const
+{
+	return engineVersion_;
+}
+
+void CreateDBInstanceRequest::setEngineVersion(const std::string& engineVersion)
+{
+	engineVersion_ = engineVersion;
+	setParameter("EngineVersion", engineVersion);
+}
+
+long CreateDBInstanceRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void CreateDBInstanceRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string CreateDBInstanceRequest::getUsedTime()const
+{
+	return usedTime_;
+}
+
+void CreateDBInstanceRequest::setUsedTime(const std::string& usedTime)
+{
+	usedTime_ = usedTime;
+	setParameter("UsedTime", usedTime);
+}
+
+std::string CreateDBInstanceRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void CreateDBInstanceRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+std::string CreateDBInstanceRequest::getDBInstanceClass()const
+{
+	return dBInstanceClass_;
+}
+
+void CreateDBInstanceRequest::setDBInstanceClass(const std::string& dBInstanceClass)
+{
+	dBInstanceClass_ = dBInstanceClass;
+	setParameter("DBInstanceClass", dBInstanceClass);
+}
+
+std::string CreateDBInstanceRequest::getSecurityIPList()const
+{
+	return securityIPList_;
+}
+
+void CreateDBInstanceRequest::setSecurityIPList(const std::string& securityIPList)
+{
+	securityIPList_ = securityIPList;
+	setParameter("SecurityIPList", securityIPList);
+}
+
+std::string CreateDBInstanceRequest::getVSwitchId()const
+{
+	return vSwitchId_;
+}
+
+void CreateDBInstanceRequest::setVSwitchId(const std::string& vSwitchId)
+{
+	vSwitchId_ = vSwitchId;
+	setParameter("VSwitchId", vSwitchId);
+}
+
+std::string CreateDBInstanceRequest::getPrivateIpAddress()const
+{
+	return privateIpAddress_;
+}
+
+void CreateDBInstanceRequest::setPrivateIpAddress(const std::string& privateIpAddress)
+{
+	privateIpAddress_ = privateIpAddress;
+	setParameter("PrivateIpAddress", privateIpAddress);
+}
+
+std::string CreateDBInstanceRequest::getRegionId()const
+{
+	return regionId_;
+}
+
+void CreateDBInstanceRequest::setRegionId(const std::string& regionId)
+{
+	regionId_ = regionId;
+	setParameter("RegionId", regionId);
+}
+
+std::string CreateDBInstanceRequest::getEngine()const
+{
+	return engine_;
+}
+
+void CreateDBInstanceRequest::setEngine(const std::string& engine)
+{
+	engine_ = engine;
+	setParameter("Engine", engine);
+}
+
+std::string CreateDBInstanceRequest::getVPCId()const
+{
+	return vPCId_;
+}
+
+void CreateDBInstanceRequest::setVPCId(const std::string& vPCId)
+{
+	vPCId_ = vPCId;
+	setParameter("VPCId", vPCId);
+}
+
+std::string CreateDBInstanceRequest::getZoneId()const
+{
+	return zoneId_;
+}
+
+void CreateDBInstanceRequest::setZoneId(const std::string& zoneId)
+{
+	zoneId_ = zoneId;
+	setParameter("ZoneId", zoneId);
+}
+
+std::string CreateDBInstanceRequest::getDBInstanceDescription()const
+{
+	return dBInstanceDescription_;
+}
+
+void CreateDBInstanceRequest::setDBInstanceDescription(const std::string& dBInstanceDescription)
+{
+	dBInstanceDescription_ = dBInstanceDescription;
+	setParameter("DBInstanceDescription", dBInstanceDescription);
+}
+
+std::string CreateDBInstanceRequest::getPayType()const
+{
+	return payType_;
+}
+
+void CreateDBInstanceRequest::setPayType(const std::string& payType)
+{
+	payType_ = payType;
+	setParameter("PayType", payType);
+}
+
+std::string CreateDBInstanceRequest::getInstanceNetworkType()const
+{
+	return instanceNetworkType_;
+}
+
+void CreateDBInstanceRequest::setInstanceNetworkType(const std::string& instanceNetworkType)
+{
+	instanceNetworkType_ = instanceNetworkType;
+	setParameter("InstanceNetworkType", instanceNetworkType);
+}
+

+ 73 - 0
gpdb/src/model/CreateDBInstanceResult.cc

@@ -0,0 +1,73 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/gpdb/model/CreateDBInstanceResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Gpdb;
+using namespace AlibabaCloud::Gpdb::Model;
+
+CreateDBInstanceResult::CreateDBInstanceResult() :
+	ServiceResult()
+{}
+
+CreateDBInstanceResult::CreateDBInstanceResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+CreateDBInstanceResult::~CreateDBInstanceResult()
+{}
+
+void CreateDBInstanceResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	if(!value["DBInstanceId"].isNull())
+		dBInstanceId_ = value["DBInstanceId"].asString();
+	if(!value["OrderId"].isNull())
+		orderId_ = value["OrderId"].asString();
+	if(!value["ConnectionString"].isNull())
+		connectionString_ = value["ConnectionString"].asString();
+	if(!value["Port"].isNull())
+		port_ = value["Port"].asString();
+
+}
+
+std::string CreateDBInstanceResult::getDBInstanceId()const
+{
+	return dBInstanceId_;
+}
+
+std::string CreateDBInstanceResult::getPort()const
+{
+	return port_;
+}
+
+std::string CreateDBInstanceResult::getOrderId()const
+{
+	return orderId_;
+}
+
+std::string CreateDBInstanceResult::getConnectionString()const
+{
+	return connectionString_;
+}
+

+ 71 - 0
gpdb/src/model/DeleteDBInstanceRequest.cc

@@ -0,0 +1,71 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/gpdb/model/DeleteDBInstanceRequest.h>
+
+using AlibabaCloud::Gpdb::Model::DeleteDBInstanceRequest;
+
+DeleteDBInstanceRequest::DeleteDBInstanceRequest() :
+	RpcServiceRequest("gpdb", "2016-05-03", "DeleteDBInstance")
+{}
+
+DeleteDBInstanceRequest::~DeleteDBInstanceRequest()
+{}
+
+std::string DeleteDBInstanceRequest::getClientToken()const
+{
+	return clientToken_;
+}
+
+void DeleteDBInstanceRequest::setClientToken(const std::string& clientToken)
+{
+	clientToken_ = clientToken;
+	setParameter("ClientToken", clientToken);
+}
+
+std::string DeleteDBInstanceRequest::getDBInstanceId()const
+{
+	return dBInstanceId_;
+}
+
+void DeleteDBInstanceRequest::setDBInstanceId(const std::string& dBInstanceId)
+{
+	dBInstanceId_ = dBInstanceId;
+	setParameter("DBInstanceId", dBInstanceId);
+}
+
+long DeleteDBInstanceRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void DeleteDBInstanceRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string DeleteDBInstanceRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void DeleteDBInstanceRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+

+ 45 - 0
gpdb/src/model/DeleteDBInstanceResult.cc

@@ -0,0 +1,45 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/gpdb/model/DeleteDBInstanceResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Gpdb;
+using namespace AlibabaCloud::Gpdb::Model;
+
+DeleteDBInstanceResult::DeleteDBInstanceResult() :
+	ServiceResult()
+{}
+
+DeleteDBInstanceResult::DeleteDBInstanceResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DeleteDBInstanceResult::~DeleteDBInstanceResult()
+{}
+
+void DeleteDBInstanceResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+
+}
+

+ 60 - 0
gpdb/src/model/DeleteDatabaseRequest.cc

@@ -0,0 +1,60 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/gpdb/model/DeleteDatabaseRequest.h>
+
+using AlibabaCloud::Gpdb::Model::DeleteDatabaseRequest;
+
+DeleteDatabaseRequest::DeleteDatabaseRequest() :
+	RpcServiceRequest("gpdb", "2016-05-03", "DeleteDatabase")
+{}
+
+DeleteDatabaseRequest::~DeleteDatabaseRequest()
+{}
+
+std::string DeleteDatabaseRequest::getDBName()const
+{
+	return dBName_;
+}
+
+void DeleteDatabaseRequest::setDBName(const std::string& dBName)
+{
+	dBName_ = dBName;
+	setParameter("DBName", dBName);
+}
+
+std::string DeleteDatabaseRequest::getDBInstanceId()const
+{
+	return dBInstanceId_;
+}
+
+void DeleteDatabaseRequest::setDBInstanceId(const std::string& dBInstanceId)
+{
+	dBInstanceId_ = dBInstanceId;
+	setParameter("DBInstanceId", dBInstanceId);
+}
+
+std::string DeleteDatabaseRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void DeleteDatabaseRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+

+ 45 - 0
gpdb/src/model/DeleteDatabaseResult.cc

@@ -0,0 +1,45 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/gpdb/model/DeleteDatabaseResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Gpdb;
+using namespace AlibabaCloud::Gpdb::Model;
+
+DeleteDatabaseResult::DeleteDatabaseResult() :
+	ServiceResult()
+{}
+
+DeleteDatabaseResult::DeleteDatabaseResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DeleteDatabaseResult::~DeleteDatabaseResult()
+{}
+
+void DeleteDatabaseResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+
+}
+

+ 60 - 0
gpdb/src/model/DescribeAccountsRequest.cc

@@ -0,0 +1,60 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/gpdb/model/DescribeAccountsRequest.h>
+
+using AlibabaCloud::Gpdb::Model::DescribeAccountsRequest;
+
+DescribeAccountsRequest::DescribeAccountsRequest() :
+	RpcServiceRequest("gpdb", "2016-05-03", "DescribeAccounts")
+{}
+
+DescribeAccountsRequest::~DescribeAccountsRequest()
+{}
+
+std::string DescribeAccountsRequest::getAccountName()const
+{
+	return accountName_;
+}
+
+void DescribeAccountsRequest::setAccountName(const std::string& accountName)
+{
+	accountName_ = accountName;
+	setParameter("AccountName", accountName);
+}
+
+std::string DescribeAccountsRequest::getDBInstanceId()const
+{
+	return dBInstanceId_;
+}
+
+void DescribeAccountsRequest::setDBInstanceId(const std::string& dBInstanceId)
+{
+	dBInstanceId_ = dBInstanceId;
+	setParameter("DBInstanceId", dBInstanceId);
+}
+
+std::string DescribeAccountsRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void DescribeAccountsRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+

+ 64 - 0
gpdb/src/model/DescribeAccountsResult.cc

@@ -0,0 +1,64 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/gpdb/model/DescribeAccountsResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Gpdb;
+using namespace AlibabaCloud::Gpdb::Model;
+
+DescribeAccountsResult::DescribeAccountsResult() :
+	ServiceResult()
+{}
+
+DescribeAccountsResult::DescribeAccountsResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeAccountsResult::~DescribeAccountsResult()
+{}
+
+void DescribeAccountsResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	auto allAccounts = value["Accounts"]["DBInstanceAccount"];
+	for (auto value : allAccounts)
+	{
+		DBInstanceAccount accountsObject;
+		if(!value["DBInstanceId"].isNull())
+			accountsObject.dBInstanceId = value["DBInstanceId"].asString();
+		if(!value["AccountName"].isNull())
+			accountsObject.accountName = value["AccountName"].asString();
+		if(!value["AccountStatus"].isNull())
+			accountsObject.accountStatus = value["AccountStatus"].asString();
+		if(!value["AccountDescription"].isNull())
+			accountsObject.accountDescription = value["AccountDescription"].asString();
+		accounts_.push_back(accountsObject);
+	}
+
+}
+
+std::vector<DescribeAccountsResult::DBInstanceAccount> DescribeAccountsResult::getAccounts()const
+{
+	return accounts_;
+}
+

+ 60 - 0
gpdb/src/model/DescribeDBInstanceAttributeRequest.cc

@@ -0,0 +1,60 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/gpdb/model/DescribeDBInstanceAttributeRequest.h>
+
+using AlibabaCloud::Gpdb::Model::DescribeDBInstanceAttributeRequest;
+
+DescribeDBInstanceAttributeRequest::DescribeDBInstanceAttributeRequest() :
+	RpcServiceRequest("gpdb", "2016-05-03", "DescribeDBInstanceAttribute")
+{}
+
+DescribeDBInstanceAttributeRequest::~DescribeDBInstanceAttributeRequest()
+{}
+
+std::string DescribeDBInstanceAttributeRequest::getDBInstanceId()const
+{
+	return dBInstanceId_;
+}
+
+void DescribeDBInstanceAttributeRequest::setDBInstanceId(const std::string& dBInstanceId)
+{
+	dBInstanceId_ = dBInstanceId;
+	setParameter("DBInstanceId", dBInstanceId);
+}
+
+long DescribeDBInstanceAttributeRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void DescribeDBInstanceAttributeRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string DescribeDBInstanceAttributeRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void DescribeDBInstanceAttributeRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+

+ 130 - 0
gpdb/src/model/DescribeDBInstanceAttributeResult.cc

@@ -0,0 +1,130 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/gpdb/model/DescribeDBInstanceAttributeResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Gpdb;
+using namespace AlibabaCloud::Gpdb::Model;
+
+DescribeDBInstanceAttributeResult::DescribeDBInstanceAttributeResult() :
+	ServiceResult()
+{}
+
+DescribeDBInstanceAttributeResult::DescribeDBInstanceAttributeResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeDBInstanceAttributeResult::~DescribeDBInstanceAttributeResult()
+{}
+
+void DescribeDBInstanceAttributeResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	auto allItems = value["Items"]["DBInstanceAttribute"];
+	for (auto value : allItems)
+	{
+		DBInstanceAttribute itemsObject;
+		if(!value["DBInstanceId"].isNull())
+			itemsObject.dBInstanceId = value["DBInstanceId"].asString();
+		if(!value["PayType"].isNull())
+			itemsObject.payType = value["PayType"].asString();
+		if(!value["DBInstanceClassType"].isNull())
+			itemsObject.dBInstanceClassType = value["DBInstanceClassType"].asString();
+		if(!value["RegionId"].isNull())
+			itemsObject.regionId = value["RegionId"].asString();
+		if(!value["ConnectionString"].isNull())
+			itemsObject.connectionString = value["ConnectionString"].asString();
+		if(!value["Port"].isNull())
+			itemsObject.port = value["Port"].asString();
+		if(!value["Engine"].isNull())
+			itemsObject.engine = value["Engine"].asString();
+		if(!value["EngineVersion"].isNull())
+			itemsObject.engineVersion = value["EngineVersion"].asString();
+		if(!value["DBInstanceClass"].isNull())
+			itemsObject.dBInstanceClass = value["DBInstanceClass"].asString();
+		if(!value["DBInstanceCpuCores"].isNull())
+			itemsObject.dBInstanceCpuCores = std::stoi(value["DBInstanceCpuCores"].asString());
+		if(!value["DBInstanceMemory"].isNull())
+			itemsObject.dBInstanceMemory = std::stol(value["DBInstanceMemory"].asString());
+		if(!value["DBInstanceStorage"].isNull())
+			itemsObject.dBInstanceStorage = std::stol(value["DBInstanceStorage"].asString());
+		if(!value["DBInstanceDiskMBPS"].isNull())
+			itemsObject.dBInstanceDiskMBPS = std::stol(value["DBInstanceDiskMBPS"].asString());
+		if(!value["HostType"].isNull())
+			itemsObject.hostType = value["HostType"].asString();
+		if(!value["DBInstanceGroupCount"].isNull())
+			itemsObject.dBInstanceGroupCount = value["DBInstanceGroupCount"].asString();
+		if(!value["DBInstanceNetType"].isNull())
+			itemsObject.dBInstanceNetType = value["DBInstanceNetType"].asString();
+		if(!value["DBInstanceStatus"].isNull())
+			itemsObject.dBInstanceStatus = value["DBInstanceStatus"].asString();
+		if(!value["DBInstanceDescription"].isNull())
+			itemsObject.dBInstanceDescription = value["DBInstanceDescription"].asString();
+		if(!value["LockMode"].isNull())
+			itemsObject.lockMode = value["LockMode"].asString();
+		if(!value["LockReason"].isNull())
+			itemsObject.lockReason = value["LockReason"].asString();
+		if(!value["ReadDelayTime"].isNull())
+			itemsObject.readDelayTime = value["ReadDelayTime"].asString();
+		if(!value["CreationTime"].isNull())
+			itemsObject.creationTime = value["CreationTime"].asString();
+		if(!value["ExpireTime"].isNull())
+			itemsObject.expireTime = value["ExpireTime"].asString();
+		if(!value["MaintainStartTime"].isNull())
+			itemsObject.maintainStartTime = value["MaintainStartTime"].asString();
+		if(!value["MaintainEndTime"].isNull())
+			itemsObject.maintainEndTime = value["MaintainEndTime"].asString();
+		if(!value["AvailabilityValue"].isNull())
+			itemsObject.availabilityValue = value["AvailabilityValue"].asString();
+		if(!value["MaxConnections"].isNull())
+			itemsObject.maxConnections = std::stoi(value["MaxConnections"].asString());
+		if(!value["SecurityIPList"].isNull())
+			itemsObject.securityIPList = value["SecurityIPList"].asString();
+		if(!value["ZoneId"].isNull())
+			itemsObject.zoneId = value["ZoneId"].asString();
+		if(!value["InstanceNetworkType"].isNull())
+			itemsObject.instanceNetworkType = value["InstanceNetworkType"].asString();
+		if(!value["VpcId"].isNull())
+			itemsObject.vpcId = value["VpcId"].asString();
+		if(!value["ConnectionMode"].isNull())
+			itemsObject.connectionMode = value["ConnectionMode"].asString();
+		auto allTags = value["Tags"]["Tag"];
+		for (auto value : allTags)
+		{
+			DBInstanceAttribute::Tag tagsObject;
+			if(!value["Key"].isNull())
+				tagsObject.key = value["Key"].asString();
+			if(!value["Value"].isNull())
+				tagsObject.value = value["Value"].asString();
+			itemsObject.tags.push_back(tagsObject);
+		}
+		items_.push_back(itemsObject);
+	}
+
+}
+
+std::vector<DescribeDBInstanceAttributeResult::DBInstanceAttribute> DescribeDBInstanceAttributeResult::getItems()const
+{
+	return items_;
+}
+

+ 49 - 0
gpdb/src/model/DescribeDBInstanceIPArrayListRequest.cc

@@ -0,0 +1,49 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/gpdb/model/DescribeDBInstanceIPArrayListRequest.h>
+
+using AlibabaCloud::Gpdb::Model::DescribeDBInstanceIPArrayListRequest;
+
+DescribeDBInstanceIPArrayListRequest::DescribeDBInstanceIPArrayListRequest() :
+	RpcServiceRequest("gpdb", "2016-05-03", "DescribeDBInstanceIPArrayList")
+{}
+
+DescribeDBInstanceIPArrayListRequest::~DescribeDBInstanceIPArrayListRequest()
+{}
+
+std::string DescribeDBInstanceIPArrayListRequest::getDBInstanceId()const
+{
+	return dBInstanceId_;
+}
+
+void DescribeDBInstanceIPArrayListRequest::setDBInstanceId(const std::string& dBInstanceId)
+{
+	dBInstanceId_ = dBInstanceId;
+	setParameter("DBInstanceId", dBInstanceId);
+}
+
+std::string DescribeDBInstanceIPArrayListRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void DescribeDBInstanceIPArrayListRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+

+ 62 - 0
gpdb/src/model/DescribeDBInstanceIPArrayListResult.cc

@@ -0,0 +1,62 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/gpdb/model/DescribeDBInstanceIPArrayListResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Gpdb;
+using namespace AlibabaCloud::Gpdb::Model;
+
+DescribeDBInstanceIPArrayListResult::DescribeDBInstanceIPArrayListResult() :
+	ServiceResult()
+{}
+
+DescribeDBInstanceIPArrayListResult::DescribeDBInstanceIPArrayListResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeDBInstanceIPArrayListResult::~DescribeDBInstanceIPArrayListResult()
+{}
+
+void DescribeDBInstanceIPArrayListResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	auto allItems = value["Items"]["DBInstanceIPArray"];
+	for (auto value : allItems)
+	{
+		DBInstanceIPArray itemsObject;
+		if(!value["DBInstanceIPArrayName"].isNull())
+			itemsObject.dBInstanceIPArrayName = value["DBInstanceIPArrayName"].asString();
+		if(!value["DBInstanceIPArrayAttribute"].isNull())
+			itemsObject.dBInstanceIPArrayAttribute = value["DBInstanceIPArrayAttribute"].asString();
+		if(!value["SecurityIPList"].isNull())
+			itemsObject.securityIPList = value["SecurityIPList"].asString();
+		items_.push_back(itemsObject);
+	}
+
+}
+
+std::vector<DescribeDBInstanceIPArrayListResult::DBInstanceIPArray> DescribeDBInstanceIPArrayListResult::getItems()const
+{
+	return items_;
+}
+

+ 49 - 0
gpdb/src/model/DescribeDBInstanceNetInfoRequest.cc

@@ -0,0 +1,49 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/gpdb/model/DescribeDBInstanceNetInfoRequest.h>
+
+using AlibabaCloud::Gpdb::Model::DescribeDBInstanceNetInfoRequest;
+
+DescribeDBInstanceNetInfoRequest::DescribeDBInstanceNetInfoRequest() :
+	RpcServiceRequest("gpdb", "2016-05-03", "DescribeDBInstanceNetInfo")
+{}
+
+DescribeDBInstanceNetInfoRequest::~DescribeDBInstanceNetInfoRequest()
+{}
+
+std::string DescribeDBInstanceNetInfoRequest::getDBInstanceId()const
+{
+	return dBInstanceId_;
+}
+
+void DescribeDBInstanceNetInfoRequest::setDBInstanceId(const std::string& dBInstanceId)
+{
+	dBInstanceId_ = dBInstanceId;
+	setParameter("DBInstanceId", dBInstanceId);
+}
+
+std::string DescribeDBInstanceNetInfoRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void DescribeDBInstanceNetInfoRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+

+ 75 - 0
gpdb/src/model/DescribeDBInstanceNetInfoResult.cc

@@ -0,0 +1,75 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/gpdb/model/DescribeDBInstanceNetInfoResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Gpdb;
+using namespace AlibabaCloud::Gpdb::Model;
+
+DescribeDBInstanceNetInfoResult::DescribeDBInstanceNetInfoResult() :
+	ServiceResult()
+{}
+
+DescribeDBInstanceNetInfoResult::DescribeDBInstanceNetInfoResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeDBInstanceNetInfoResult::~DescribeDBInstanceNetInfoResult()
+{}
+
+void DescribeDBInstanceNetInfoResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	auto allDBInstanceNetInfos = value["DBInstanceNetInfos"]["DBInstanceNetInfo"];
+	for (auto value : allDBInstanceNetInfos)
+	{
+		DBInstanceNetInfo dBInstanceNetInfosObject;
+		if(!value["ConnectionString"].isNull())
+			dBInstanceNetInfosObject.connectionString = value["ConnectionString"].asString();
+		if(!value["IPAddress"].isNull())
+			dBInstanceNetInfosObject.iPAddress = value["IPAddress"].asString();
+		if(!value["IPType"].isNull())
+			dBInstanceNetInfosObject.iPType = value["IPType"].asString();
+		if(!value["Port"].isNull())
+			dBInstanceNetInfosObject.port = value["Port"].asString();
+		if(!value["VPCId"].isNull())
+			dBInstanceNetInfosObject.vPCId = value["VPCId"].asString();
+		if(!value["VSwitchId"].isNull())
+			dBInstanceNetInfosObject.vSwitchId = value["VSwitchId"].asString();
+		dBInstanceNetInfos_.push_back(dBInstanceNetInfosObject);
+	}
+	if(!value["InstanceNetworkType"].isNull())
+		instanceNetworkType_ = value["InstanceNetworkType"].asString();
+
+}
+
+std::vector<DescribeDBInstanceNetInfoResult::DBInstanceNetInfo> DescribeDBInstanceNetInfoResult::getDBInstanceNetInfos()const
+{
+	return dBInstanceNetInfos_;
+}
+
+std::string DescribeDBInstanceNetInfoResult::getInstanceNetworkType()const
+{
+	return instanceNetworkType_;
+}
+

+ 82 - 0
gpdb/src/model/DescribeDBInstancePerformanceRequest.cc

@@ -0,0 +1,82 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/gpdb/model/DescribeDBInstancePerformanceRequest.h>
+
+using AlibabaCloud::Gpdb::Model::DescribeDBInstancePerformanceRequest;
+
+DescribeDBInstancePerformanceRequest::DescribeDBInstancePerformanceRequest() :
+	RpcServiceRequest("gpdb", "2016-05-03", "DescribeDBInstancePerformance")
+{}
+
+DescribeDBInstancePerformanceRequest::~DescribeDBInstancePerformanceRequest()
+{}
+
+std::string DescribeDBInstancePerformanceRequest::getEndTime()const
+{
+	return endTime_;
+}
+
+void DescribeDBInstancePerformanceRequest::setEndTime(const std::string& endTime)
+{
+	endTime_ = endTime;
+	setParameter("EndTime", endTime);
+}
+
+std::string DescribeDBInstancePerformanceRequest::getDBInstanceId()const
+{
+	return dBInstanceId_;
+}
+
+void DescribeDBInstancePerformanceRequest::setDBInstanceId(const std::string& dBInstanceId)
+{
+	dBInstanceId_ = dBInstanceId;
+	setParameter("DBInstanceId", dBInstanceId);
+}
+
+std::string DescribeDBInstancePerformanceRequest::getStartTime()const
+{
+	return startTime_;
+}
+
+void DescribeDBInstancePerformanceRequest::setStartTime(const std::string& startTime)
+{
+	startTime_ = startTime;
+	setParameter("StartTime", startTime);
+}
+
+std::string DescribeDBInstancePerformanceRequest::getKey()const
+{
+	return key_;
+}
+
+void DescribeDBInstancePerformanceRequest::setKey(const std::string& key)
+{
+	key_ = key;
+	setParameter("Key", key);
+}
+
+std::string DescribeDBInstancePerformanceRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void DescribeDBInstancePerformanceRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+

+ 81 - 0
gpdb/src/model/DescribeDBInstancePerformanceResult.cc

@@ -0,0 +1,81 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/gpdb/model/DescribeDBInstancePerformanceResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Gpdb;
+using namespace AlibabaCloud::Gpdb::Model;
+
+DescribeDBInstancePerformanceResult::DescribeDBInstancePerformanceResult() :
+	ServiceResult()
+{}
+
+DescribeDBInstancePerformanceResult::DescribeDBInstancePerformanceResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeDBInstancePerformanceResult::~DescribeDBInstancePerformanceResult()
+{}
+
+void DescribeDBInstancePerformanceResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	auto allPerformanceKeys = value["PerformanceKeys"]["PerformanceKey"];
+	for (const auto &item : allPerformanceKeys)
+		performanceKeys_.push_back(item.asString());
+	if(!value["DBInstanceId"].isNull())
+		dBInstanceId_ = value["DBInstanceId"].asString();
+	if(!value["Engine"].isNull())
+		engine_ = value["Engine"].asString();
+	if(!value["StartTime"].isNull())
+		startTime_ = value["StartTime"].asString();
+	if(!value["EndTime"].isNull())
+		endTime_ = value["EndTime"].asString();
+
+}
+
+std::vector<std::string> DescribeDBInstancePerformanceResult::getPerformanceKeys()const
+{
+	return performanceKeys_;
+}
+
+std::string DescribeDBInstancePerformanceResult::getEndTime()const
+{
+	return endTime_;
+}
+
+std::string DescribeDBInstancePerformanceResult::getDBInstanceId()const
+{
+	return dBInstanceId_;
+}
+
+std::string DescribeDBInstancePerformanceResult::getStartTime()const
+{
+	return startTime_;
+}
+
+std::string DescribeDBInstancePerformanceResult::getEngine()const
+{
+	return engine_;
+}
+

+ 132 - 0
gpdb/src/model/DescribeDBInstancesRequest.cc

@@ -0,0 +1,132 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/gpdb/model/DescribeDBInstancesRequest.h>
+
+using AlibabaCloud::Gpdb::Model::DescribeDBInstancesRequest;
+
+DescribeDBInstancesRequest::DescribeDBInstancesRequest() :
+	RpcServiceRequest("gpdb", "2016-05-03", "DescribeDBInstances")
+{}
+
+DescribeDBInstancesRequest::~DescribeDBInstancesRequest()
+{}
+
+std::string DescribeDBInstancesRequest::getDBInstanceIds()const
+{
+	return dBInstanceIds_;
+}
+
+void DescribeDBInstancesRequest::setDBInstanceIds(const std::string& dBInstanceIds)
+{
+	dBInstanceIds_ = dBInstanceIds;
+	setParameter("DBInstanceIds", dBInstanceIds);
+}
+
+std::string DescribeDBInstancesRequest::getRegionId()const
+{
+	return regionId_;
+}
+
+void DescribeDBInstancesRequest::setRegionId(const std::string& regionId)
+{
+	regionId_ = regionId;
+	setParameter("RegionId", regionId);
+}
+
+int DescribeDBInstancesRequest::getPageSize()const
+{
+	return pageSize_;
+}
+
+void DescribeDBInstancesRequest::setPageSize(int pageSize)
+{
+	pageSize_ = pageSize;
+	setParameter("PageSize", std::to_string(pageSize));
+}
+
+std::string DescribeDBInstancesRequest::getDBInstanceDescription()const
+{
+	return dBInstanceDescription_;
+}
+
+void DescribeDBInstancesRequest::setDBInstanceDescription(const std::string& dBInstanceDescription)
+{
+	dBInstanceDescription_ = dBInstanceDescription;
+	setParameter("DBInstanceDescription", dBInstanceDescription);
+}
+
+std::vector<DescribeDBInstancesRequest::Tag> DescribeDBInstancesRequest::getTag()const
+{
+	return tag_;
+}
+
+void DescribeDBInstancesRequest::setTag(const std::vector<Tag>& tag)
+{
+	tag_ = tag;
+	int i = 0;
+	for(int i = 0; i!= tag.size(); i++)	{
+		auto obj = tag.at(i);
+		std::string str ="Tag."+ std::to_string(i);
+		setParameter(str + ".Value", obj.value);
+		setParameter(str + ".Key", obj.key);
+	}
+}
+
+long DescribeDBInstancesRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void DescribeDBInstancesRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+std::string DescribeDBInstancesRequest::getInstanceNetworkType()const
+{
+	return instanceNetworkType_;
+}
+
+void DescribeDBInstancesRequest::setInstanceNetworkType(const std::string& instanceNetworkType)
+{
+	instanceNetworkType_ = instanceNetworkType;
+	setParameter("InstanceNetworkType", instanceNetworkType);
+}
+
+int DescribeDBInstancesRequest::getPageNumber()const
+{
+	return pageNumber_;
+}
+
+void DescribeDBInstancesRequest::setPageNumber(int pageNumber)
+{
+	pageNumber_ = pageNumber;
+	setParameter("PageNumber", std::to_string(pageNumber));
+}
+
+std::string DescribeDBInstancesRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void DescribeDBInstancesRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+

Некоторые файлы не были показаны из-за большого количества измененных файлов