Pārlūkot izejas kodu

Generated 2019-09-01 for OceanBasePro.

sdk-team 2 gadi atpakaļ
vecāks
revīzija
f0d0ef6cd0
100 mainītis faili ar 8267 papildinājumiem un 1 dzēšanām
  1. 1 1
      VERSION
  2. 522 0
      oceanbasepro/CMakeLists.txt
  3. 926 0
      oceanbasepro/include/alibabacloud/oceanbasepro/OceanBaseProClient.h
  4. 32 0
      oceanbasepro/include/alibabacloud/oceanbasepro/OceanBaseProExport.h
  5. 60 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateDatabaseRequest.h
  6. 51 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateDatabaseResult.h
  7. 81 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateInstanceRequest.h
  8. 57 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateInstanceResult.h
  9. 42 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateLabelRequest.h
  10. 49 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateLabelResult.h
  11. 72 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateMySqlDataSourceRequest.h
  12. 49 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateMySqlDataSourceResult.h
  13. 87 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateOceanBaseDataSourceRequest.h
  14. 49 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateOceanBaseDataSourceResult.h
  15. 75 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateOmsMysqlDataSourceRequest.h
  16. 55 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateOmsMysqlDataSourceResult.h
  17. 145 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateOmsOpenAPIProjectRequest.h
  18. 76 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateOmsOpenAPIProjectResult.h
  19. 318 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateProjectRequest.h
  20. 49 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateProjectResult.h
  21. 48 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateSecurityIpGroupRequest.h
  22. 57 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateSecurityIpGroupResult.h
  23. 54 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateTenantReadOnlyConnectionRequest.h
  24. 49 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateTenantReadOnlyConnectionResult.h
  25. 75 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateTenantRequest.h
  26. 51 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateTenantResult.h
  27. 51 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateTenantSecurityIpGroupRequest.h
  28. 58 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateTenantSecurityIpGroupResult.h
  29. 63 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateTenantUserRequest.h
  30. 63 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateTenantUserResult.h
  31. 48 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteDatabasesRequest.h
  32. 49 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteDatabasesResult.h
  33. 45 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteInstancesRequest.h
  34. 49 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteInstancesResult.h
  35. 51 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteOmsOpenAPIProjectRequest.h
  36. 76 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteOmsOpenAPIProjectResult.h
  37. 42 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteProjectRequest.h
  38. 49 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteProjectResult.h
  39. 45 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteSecurityIpGroupRequest.h
  40. 56 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteSecurityIpGroupResult.h
  41. 48 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteTenantSecurityIpGroupRequest.h
  42. 57 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteTenantSecurityIpGroupResult.h
  43. 48 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteTenantUsersRequest.h
  44. 49 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteTenantUsersResult.h
  45. 45 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteTenantsRequest.h
  46. 51 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteTenantsResult.h
  47. 90 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeAnomalySQLListRequest.h
  48. 68 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeAnomalySQLListResult.h
  49. 48 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeAvailableCpuResourceRequest.h
  50. 57 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeAvailableCpuResourceResult.h
  51. 51 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeAvailableMemResourceRequest.h
  52. 57 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeAvailableMemResourceResult.h
  53. 48 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeCharsetRequest.h
  54. 56 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeCharsetResult.h
  55. 57 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeDatabasesRequest.h
  56. 80 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeDatabasesResult.h
  57. 42 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceCreatableZoneRequest.h
  58. 56 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceCreatableZoneResult.h
  59. 45 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceRequest.h
  60. 146 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceResult.h
  61. 42 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceSSLRequest.h
  62. 61 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceSSLResult.h
  63. 42 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceSecurityConfigsRequest.h
  64. 65 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceSecurityConfigsResult.h
  65. 45 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceTagsRequest.h
  66. 57 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceTagsResult.h
  67. 42 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceTenantModesRequest.h
  68. 51 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceTenantModesResult.h
  69. 45 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceTopologyRequest.h
  70. 133 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceTopologyResult.h
  71. 57 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstancesRequest.h
  72. 129 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstancesResult.h
  73. 66 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeMetricsDataRequest.h
  74. 51 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeMetricsDataResult.h
  75. 66 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeNodeMetricsRequest.h
  76. 53 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeNodeMetricsResult.h
  77. 93 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOasAnomalySQLListRequest.h
  78. 95 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOasAnomalySQLListResult.h
  79. 60 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOasSQLDetailsRequest.h
  80. 59 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOasSQLDetailsResult.h
  81. 66 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOasSQLHistoryListRequest.h
  82. 121 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOasSQLHistoryListResult.h
  83. 63 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOasSQLPlansRequest.h
  84. 109 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOasSQLPlansResult.h
  85. 87 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOasSlowSQLListRequest.h
  86. 213 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOasSlowSQLListResult.h
  87. 87 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOasTopSQLListRequest.h
  88. 216 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOasTopSQLListResult.h
  89. 51 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOmsOpenAPIProjectRequest.h
  90. 234 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOmsOpenAPIProjectResult.h
  91. 51 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOmsOpenAPIProjectStepsRequest.h
  92. 137 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOmsOpenAPIProjectStepsResult.h
  93. 57 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOutlineBindingRequest.h
  94. 59 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOutlineBindingResult.h
  95. 60 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeParametersHistoryRequest.h
  96. 67 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeParametersHistoryResult.h
  97. 48 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeParametersRequest.h
  98. 64 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeParametersResult.h
  99. 42 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeProjectComponentsRequest.h
  100. 49 0
      oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeProjectComponentsResult.h

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.36.1779
+1.36.1780

+ 522 - 0
oceanbasepro/CMakeLists.txt

@@ -0,0 +1,522 @@
+#
+# 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(oceanbasepro_public_header 
+	include/alibabacloud/oceanbasepro/OceanBaseProClient.h
+	include/alibabacloud/oceanbasepro/OceanBaseProExport.h )
+
+set(oceanbasepro_public_header_model 
+	include/alibabacloud/oceanbasepro/model/CreateDatabaseRequest.h
+	include/alibabacloud/oceanbasepro/model/CreateDatabaseResult.h
+	include/alibabacloud/oceanbasepro/model/CreateInstanceRequest.h
+	include/alibabacloud/oceanbasepro/model/CreateInstanceResult.h
+	include/alibabacloud/oceanbasepro/model/CreateLabelRequest.h
+	include/alibabacloud/oceanbasepro/model/CreateLabelResult.h
+	include/alibabacloud/oceanbasepro/model/CreateMySqlDataSourceRequest.h
+	include/alibabacloud/oceanbasepro/model/CreateMySqlDataSourceResult.h
+	include/alibabacloud/oceanbasepro/model/CreateOceanBaseDataSourceRequest.h
+	include/alibabacloud/oceanbasepro/model/CreateOceanBaseDataSourceResult.h
+	include/alibabacloud/oceanbasepro/model/CreateOmsMysqlDataSourceRequest.h
+	include/alibabacloud/oceanbasepro/model/CreateOmsMysqlDataSourceResult.h
+	include/alibabacloud/oceanbasepro/model/CreateOmsOpenAPIProjectRequest.h
+	include/alibabacloud/oceanbasepro/model/CreateOmsOpenAPIProjectResult.h
+	include/alibabacloud/oceanbasepro/model/CreateProjectRequest.h
+	include/alibabacloud/oceanbasepro/model/CreateProjectResult.h
+	include/alibabacloud/oceanbasepro/model/CreateSecurityIpGroupRequest.h
+	include/alibabacloud/oceanbasepro/model/CreateSecurityIpGroupResult.h
+	include/alibabacloud/oceanbasepro/model/CreateTenantRequest.h
+	include/alibabacloud/oceanbasepro/model/CreateTenantResult.h
+	include/alibabacloud/oceanbasepro/model/CreateTenantReadOnlyConnectionRequest.h
+	include/alibabacloud/oceanbasepro/model/CreateTenantReadOnlyConnectionResult.h
+	include/alibabacloud/oceanbasepro/model/CreateTenantSecurityIpGroupRequest.h
+	include/alibabacloud/oceanbasepro/model/CreateTenantSecurityIpGroupResult.h
+	include/alibabacloud/oceanbasepro/model/CreateTenantUserRequest.h
+	include/alibabacloud/oceanbasepro/model/CreateTenantUserResult.h
+	include/alibabacloud/oceanbasepro/model/DeleteDatabasesRequest.h
+	include/alibabacloud/oceanbasepro/model/DeleteDatabasesResult.h
+	include/alibabacloud/oceanbasepro/model/DeleteInstancesRequest.h
+	include/alibabacloud/oceanbasepro/model/DeleteInstancesResult.h
+	include/alibabacloud/oceanbasepro/model/DeleteOmsOpenAPIProjectRequest.h
+	include/alibabacloud/oceanbasepro/model/DeleteOmsOpenAPIProjectResult.h
+	include/alibabacloud/oceanbasepro/model/DeleteProjectRequest.h
+	include/alibabacloud/oceanbasepro/model/DeleteProjectResult.h
+	include/alibabacloud/oceanbasepro/model/DeleteSecurityIpGroupRequest.h
+	include/alibabacloud/oceanbasepro/model/DeleteSecurityIpGroupResult.h
+	include/alibabacloud/oceanbasepro/model/DeleteTenantSecurityIpGroupRequest.h
+	include/alibabacloud/oceanbasepro/model/DeleteTenantSecurityIpGroupResult.h
+	include/alibabacloud/oceanbasepro/model/DeleteTenantUsersRequest.h
+	include/alibabacloud/oceanbasepro/model/DeleteTenantUsersResult.h
+	include/alibabacloud/oceanbasepro/model/DeleteTenantsRequest.h
+	include/alibabacloud/oceanbasepro/model/DeleteTenantsResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeAnomalySQLListRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeAnomalySQLListResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeAvailableCpuResourceRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeAvailableCpuResourceResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeAvailableMemResourceRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeAvailableMemResourceResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeCharsetRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeCharsetResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeDatabasesRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeDatabasesResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeInstanceRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeInstanceResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeInstanceCreatableZoneRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeInstanceCreatableZoneResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeInstanceSSLRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeInstanceSSLResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeInstanceSecurityConfigsRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeInstanceSecurityConfigsResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeInstanceTagsRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeInstanceTagsResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeInstanceTenantModesRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeInstanceTenantModesResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeInstanceTopologyRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeInstanceTopologyResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeInstancesRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeInstancesResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeMetricsDataRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeMetricsDataResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeNodeMetricsRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeNodeMetricsResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeOasAnomalySQLListRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeOasAnomalySQLListResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeOasSQLDetailsRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeOasSQLDetailsResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeOasSQLHistoryListRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeOasSQLHistoryListResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeOasSQLPlansRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeOasSQLPlansResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeOasSlowSQLListRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeOasSlowSQLListResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeOasTopSQLListRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeOasTopSQLListResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeOmsOpenAPIProjectRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeOmsOpenAPIProjectResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeOmsOpenAPIProjectStepsRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeOmsOpenAPIProjectStepsResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeOutlineBindingRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeOutlineBindingResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeParametersRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeParametersResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeParametersHistoryRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeParametersHistoryResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeProjectRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeProjectResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeProjectComponentsRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeProjectComponentsResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeProjectProgressRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeProjectProgressResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeProjectStepMetricRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeProjectStepMetricResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeProjectStepsRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeProjectStepsResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeRecommendIndexRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeRecommendIndexResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeSQLDetailsRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeSQLDetailsResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeSQLHistoryListRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeSQLHistoryListResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeSQLPlansRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeSQLPlansResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeSQLSamplesRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeSQLSamplesResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeSecurityIpGroupsRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeSecurityIpGroupsResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeSlowSQLHistoryListRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeSlowSQLHistoryListResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeSlowSQLListRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeSlowSQLListResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeTenantRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeTenantResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeTenantMetricsRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeTenantMetricsResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeTenantSecurityConfigsRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeTenantSecurityConfigsResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeTenantSecurityIpGroupsRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeTenantSecurityIpGroupsResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeTenantTagsRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeTenantTagsResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeTenantUserRolesRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeTenantUserRolesResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeTenantUsersRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeTenantUsersResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeTenantZonesReadRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeTenantZonesReadResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeTenantsRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeTenantsResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeTimeZonesRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeTimeZonesResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeTopSQLListRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeTopSQLListResult.h
+	include/alibabacloud/oceanbasepro/model/DescribeZonesRequest.h
+	include/alibabacloud/oceanbasepro/model/DescribeZonesResult.h
+	include/alibabacloud/oceanbasepro/model/GetUploadOssUrlRequest.h
+	include/alibabacloud/oceanbasepro/model/GetUploadOssUrlResult.h
+	include/alibabacloud/oceanbasepro/model/KillProcessListRequest.h
+	include/alibabacloud/oceanbasepro/model/KillProcessListResult.h
+	include/alibabacloud/oceanbasepro/model/ListAllLabelsRequest.h
+	include/alibabacloud/oceanbasepro/model/ListAllLabelsResult.h
+	include/alibabacloud/oceanbasepro/model/ListDataSourceRequest.h
+	include/alibabacloud/oceanbasepro/model/ListDataSourceResult.h
+	include/alibabacloud/oceanbasepro/model/ListProjectFullVerifyResultRequest.h
+	include/alibabacloud/oceanbasepro/model/ListProjectFullVerifyResultResult.h
+	include/alibabacloud/oceanbasepro/model/ListProjectsRequest.h
+	include/alibabacloud/oceanbasepro/model/ListProjectsResult.h
+	include/alibabacloud/oceanbasepro/model/ListWorkerInstancesRequest.h
+	include/alibabacloud/oceanbasepro/model/ListWorkerInstancesResult.h
+	include/alibabacloud/oceanbasepro/model/ModifyDatabaseDescriptionRequest.h
+	include/alibabacloud/oceanbasepro/model/ModifyDatabaseDescriptionResult.h
+	include/alibabacloud/oceanbasepro/model/ModifyDatabaseUserRolesRequest.h
+	include/alibabacloud/oceanbasepro/model/ModifyDatabaseUserRolesResult.h
+	include/alibabacloud/oceanbasepro/model/ModifyInstanceNameRequest.h
+	include/alibabacloud/oceanbasepro/model/ModifyInstanceNameResult.h
+	include/alibabacloud/oceanbasepro/model/ModifyInstanceNodeNumRequest.h
+	include/alibabacloud/oceanbasepro/model/ModifyInstanceNodeNumResult.h
+	include/alibabacloud/oceanbasepro/model/ModifyInstanceSpecRequest.h
+	include/alibabacloud/oceanbasepro/model/ModifyInstanceSpecResult.h
+	include/alibabacloud/oceanbasepro/model/ModifyInstanceTagsRequest.h
+	include/alibabacloud/oceanbasepro/model/ModifyInstanceTagsResult.h
+	include/alibabacloud/oceanbasepro/model/ModifyParametersRequest.h
+	include/alibabacloud/oceanbasepro/model/ModifyParametersResult.h
+	include/alibabacloud/oceanbasepro/model/ModifySecurityIpsRequest.h
+	include/alibabacloud/oceanbasepro/model/ModifySecurityIpsResult.h
+	include/alibabacloud/oceanbasepro/model/ModifyTenantEncryptionRequest.h
+	include/alibabacloud/oceanbasepro/model/ModifyTenantEncryptionResult.h
+	include/alibabacloud/oceanbasepro/model/ModifyTenantPrimaryZoneRequest.h
+	include/alibabacloud/oceanbasepro/model/ModifyTenantPrimaryZoneResult.h
+	include/alibabacloud/oceanbasepro/model/ModifyTenantResourceRequest.h
+	include/alibabacloud/oceanbasepro/model/ModifyTenantResourceResult.h
+	include/alibabacloud/oceanbasepro/model/ModifyTenantSecurityIpGroupRequest.h
+	include/alibabacloud/oceanbasepro/model/ModifyTenantSecurityIpGroupResult.h
+	include/alibabacloud/oceanbasepro/model/ModifyTenantTagsRequest.h
+	include/alibabacloud/oceanbasepro/model/ModifyTenantTagsResult.h
+	include/alibabacloud/oceanbasepro/model/ModifyTenantUserDescriptionRequest.h
+	include/alibabacloud/oceanbasepro/model/ModifyTenantUserDescriptionResult.h
+	include/alibabacloud/oceanbasepro/model/ModifyTenantUserPasswordRequest.h
+	include/alibabacloud/oceanbasepro/model/ModifyTenantUserPasswordResult.h
+	include/alibabacloud/oceanbasepro/model/ModifyTenantUserRolesRequest.h
+	include/alibabacloud/oceanbasepro/model/ModifyTenantUserRolesResult.h
+	include/alibabacloud/oceanbasepro/model/ModifyTenantUserStatusRequest.h
+	include/alibabacloud/oceanbasepro/model/ModifyTenantUserStatusResult.h
+	include/alibabacloud/oceanbasepro/model/ReleaseOmsOpenAPIProjectRequest.h
+	include/alibabacloud/oceanbasepro/model/ReleaseOmsOpenAPIProjectResult.h
+	include/alibabacloud/oceanbasepro/model/ReleaseProjectRequest.h
+	include/alibabacloud/oceanbasepro/model/ReleaseProjectResult.h
+	include/alibabacloud/oceanbasepro/model/ResetOmsOpenAPIProjectRequest.h
+	include/alibabacloud/oceanbasepro/model/ResetOmsOpenAPIProjectResult.h
+	include/alibabacloud/oceanbasepro/model/ResumeOmsOpenAPIProjectRequest.h
+	include/alibabacloud/oceanbasepro/model/ResumeOmsOpenAPIProjectResult.h
+	include/alibabacloud/oceanbasepro/model/ResumeProjectRequest.h
+	include/alibabacloud/oceanbasepro/model/ResumeProjectResult.h
+	include/alibabacloud/oceanbasepro/model/SearchOmsOpenAPIMonitorMetricRequest.h
+	include/alibabacloud/oceanbasepro/model/SearchOmsOpenAPIMonitorMetricResult.h
+	include/alibabacloud/oceanbasepro/model/SearchOmsOpenAPIProjectsRequest.h
+	include/alibabacloud/oceanbasepro/model/SearchOmsOpenAPIProjectsResult.h
+	include/alibabacloud/oceanbasepro/model/StartOmsOpenAPIProjectRequest.h
+	include/alibabacloud/oceanbasepro/model/StartOmsOpenAPIProjectResult.h
+	include/alibabacloud/oceanbasepro/model/StartProjectRequest.h
+	include/alibabacloud/oceanbasepro/model/StartProjectResult.h
+	include/alibabacloud/oceanbasepro/model/StartProjectsByLabelRequest.h
+	include/alibabacloud/oceanbasepro/model/StartProjectsByLabelResult.h
+	include/alibabacloud/oceanbasepro/model/StopOmsOpenAPIProjectRequest.h
+	include/alibabacloud/oceanbasepro/model/StopOmsOpenAPIProjectResult.h
+	include/alibabacloud/oceanbasepro/model/StopProjectRequest.h
+	include/alibabacloud/oceanbasepro/model/StopProjectResult.h
+	include/alibabacloud/oceanbasepro/model/StopProjectsByLabelRequest.h
+	include/alibabacloud/oceanbasepro/model/StopProjectsByLabelResult.h
+	include/alibabacloud/oceanbasepro/model/SwitchoverInstanceRequest.h
+	include/alibabacloud/oceanbasepro/model/SwitchoverInstanceResult.h )
+
+set(oceanbasepro_src 
+	src/OceanBaseProClient.cc
+	src/model/CreateDatabaseRequest.cc
+	src/model/CreateDatabaseResult.cc
+	src/model/CreateInstanceRequest.cc
+	src/model/CreateInstanceResult.cc
+	src/model/CreateLabelRequest.cc
+	src/model/CreateLabelResult.cc
+	src/model/CreateMySqlDataSourceRequest.cc
+	src/model/CreateMySqlDataSourceResult.cc
+	src/model/CreateOceanBaseDataSourceRequest.cc
+	src/model/CreateOceanBaseDataSourceResult.cc
+	src/model/CreateOmsMysqlDataSourceRequest.cc
+	src/model/CreateOmsMysqlDataSourceResult.cc
+	src/model/CreateOmsOpenAPIProjectRequest.cc
+	src/model/CreateOmsOpenAPIProjectResult.cc
+	src/model/CreateProjectRequest.cc
+	src/model/CreateProjectResult.cc
+	src/model/CreateSecurityIpGroupRequest.cc
+	src/model/CreateSecurityIpGroupResult.cc
+	src/model/CreateTenantRequest.cc
+	src/model/CreateTenantResult.cc
+	src/model/CreateTenantReadOnlyConnectionRequest.cc
+	src/model/CreateTenantReadOnlyConnectionResult.cc
+	src/model/CreateTenantSecurityIpGroupRequest.cc
+	src/model/CreateTenantSecurityIpGroupResult.cc
+	src/model/CreateTenantUserRequest.cc
+	src/model/CreateTenantUserResult.cc
+	src/model/DeleteDatabasesRequest.cc
+	src/model/DeleteDatabasesResult.cc
+	src/model/DeleteInstancesRequest.cc
+	src/model/DeleteInstancesResult.cc
+	src/model/DeleteOmsOpenAPIProjectRequest.cc
+	src/model/DeleteOmsOpenAPIProjectResult.cc
+	src/model/DeleteProjectRequest.cc
+	src/model/DeleteProjectResult.cc
+	src/model/DeleteSecurityIpGroupRequest.cc
+	src/model/DeleteSecurityIpGroupResult.cc
+	src/model/DeleteTenantSecurityIpGroupRequest.cc
+	src/model/DeleteTenantSecurityIpGroupResult.cc
+	src/model/DeleteTenantUsersRequest.cc
+	src/model/DeleteTenantUsersResult.cc
+	src/model/DeleteTenantsRequest.cc
+	src/model/DeleteTenantsResult.cc
+	src/model/DescribeAnomalySQLListRequest.cc
+	src/model/DescribeAnomalySQLListResult.cc
+	src/model/DescribeAvailableCpuResourceRequest.cc
+	src/model/DescribeAvailableCpuResourceResult.cc
+	src/model/DescribeAvailableMemResourceRequest.cc
+	src/model/DescribeAvailableMemResourceResult.cc
+	src/model/DescribeCharsetRequest.cc
+	src/model/DescribeCharsetResult.cc
+	src/model/DescribeDatabasesRequest.cc
+	src/model/DescribeDatabasesResult.cc
+	src/model/DescribeInstanceRequest.cc
+	src/model/DescribeInstanceResult.cc
+	src/model/DescribeInstanceCreatableZoneRequest.cc
+	src/model/DescribeInstanceCreatableZoneResult.cc
+	src/model/DescribeInstanceSSLRequest.cc
+	src/model/DescribeInstanceSSLResult.cc
+	src/model/DescribeInstanceSecurityConfigsRequest.cc
+	src/model/DescribeInstanceSecurityConfigsResult.cc
+	src/model/DescribeInstanceTagsRequest.cc
+	src/model/DescribeInstanceTagsResult.cc
+	src/model/DescribeInstanceTenantModesRequest.cc
+	src/model/DescribeInstanceTenantModesResult.cc
+	src/model/DescribeInstanceTopologyRequest.cc
+	src/model/DescribeInstanceTopologyResult.cc
+	src/model/DescribeInstancesRequest.cc
+	src/model/DescribeInstancesResult.cc
+	src/model/DescribeMetricsDataRequest.cc
+	src/model/DescribeMetricsDataResult.cc
+	src/model/DescribeNodeMetricsRequest.cc
+	src/model/DescribeNodeMetricsResult.cc
+	src/model/DescribeOasAnomalySQLListRequest.cc
+	src/model/DescribeOasAnomalySQLListResult.cc
+	src/model/DescribeOasSQLDetailsRequest.cc
+	src/model/DescribeOasSQLDetailsResult.cc
+	src/model/DescribeOasSQLHistoryListRequest.cc
+	src/model/DescribeOasSQLHistoryListResult.cc
+	src/model/DescribeOasSQLPlansRequest.cc
+	src/model/DescribeOasSQLPlansResult.cc
+	src/model/DescribeOasSlowSQLListRequest.cc
+	src/model/DescribeOasSlowSQLListResult.cc
+	src/model/DescribeOasTopSQLListRequest.cc
+	src/model/DescribeOasTopSQLListResult.cc
+	src/model/DescribeOmsOpenAPIProjectRequest.cc
+	src/model/DescribeOmsOpenAPIProjectResult.cc
+	src/model/DescribeOmsOpenAPIProjectStepsRequest.cc
+	src/model/DescribeOmsOpenAPIProjectStepsResult.cc
+	src/model/DescribeOutlineBindingRequest.cc
+	src/model/DescribeOutlineBindingResult.cc
+	src/model/DescribeParametersRequest.cc
+	src/model/DescribeParametersResult.cc
+	src/model/DescribeParametersHistoryRequest.cc
+	src/model/DescribeParametersHistoryResult.cc
+	src/model/DescribeProjectRequest.cc
+	src/model/DescribeProjectResult.cc
+	src/model/DescribeProjectComponentsRequest.cc
+	src/model/DescribeProjectComponentsResult.cc
+	src/model/DescribeProjectProgressRequest.cc
+	src/model/DescribeProjectProgressResult.cc
+	src/model/DescribeProjectStepMetricRequest.cc
+	src/model/DescribeProjectStepMetricResult.cc
+	src/model/DescribeProjectStepsRequest.cc
+	src/model/DescribeProjectStepsResult.cc
+	src/model/DescribeRecommendIndexRequest.cc
+	src/model/DescribeRecommendIndexResult.cc
+	src/model/DescribeSQLDetailsRequest.cc
+	src/model/DescribeSQLDetailsResult.cc
+	src/model/DescribeSQLHistoryListRequest.cc
+	src/model/DescribeSQLHistoryListResult.cc
+	src/model/DescribeSQLPlansRequest.cc
+	src/model/DescribeSQLPlansResult.cc
+	src/model/DescribeSQLSamplesRequest.cc
+	src/model/DescribeSQLSamplesResult.cc
+	src/model/DescribeSecurityIpGroupsRequest.cc
+	src/model/DescribeSecurityIpGroupsResult.cc
+	src/model/DescribeSlowSQLHistoryListRequest.cc
+	src/model/DescribeSlowSQLHistoryListResult.cc
+	src/model/DescribeSlowSQLListRequest.cc
+	src/model/DescribeSlowSQLListResult.cc
+	src/model/DescribeTenantRequest.cc
+	src/model/DescribeTenantResult.cc
+	src/model/DescribeTenantMetricsRequest.cc
+	src/model/DescribeTenantMetricsResult.cc
+	src/model/DescribeTenantSecurityConfigsRequest.cc
+	src/model/DescribeTenantSecurityConfigsResult.cc
+	src/model/DescribeTenantSecurityIpGroupsRequest.cc
+	src/model/DescribeTenantSecurityIpGroupsResult.cc
+	src/model/DescribeTenantTagsRequest.cc
+	src/model/DescribeTenantTagsResult.cc
+	src/model/DescribeTenantUserRolesRequest.cc
+	src/model/DescribeTenantUserRolesResult.cc
+	src/model/DescribeTenantUsersRequest.cc
+	src/model/DescribeTenantUsersResult.cc
+	src/model/DescribeTenantZonesReadRequest.cc
+	src/model/DescribeTenantZonesReadResult.cc
+	src/model/DescribeTenantsRequest.cc
+	src/model/DescribeTenantsResult.cc
+	src/model/DescribeTimeZonesRequest.cc
+	src/model/DescribeTimeZonesResult.cc
+	src/model/DescribeTopSQLListRequest.cc
+	src/model/DescribeTopSQLListResult.cc
+	src/model/DescribeZonesRequest.cc
+	src/model/DescribeZonesResult.cc
+	src/model/GetUploadOssUrlRequest.cc
+	src/model/GetUploadOssUrlResult.cc
+	src/model/KillProcessListRequest.cc
+	src/model/KillProcessListResult.cc
+	src/model/ListAllLabelsRequest.cc
+	src/model/ListAllLabelsResult.cc
+	src/model/ListDataSourceRequest.cc
+	src/model/ListDataSourceResult.cc
+	src/model/ListProjectFullVerifyResultRequest.cc
+	src/model/ListProjectFullVerifyResultResult.cc
+	src/model/ListProjectsRequest.cc
+	src/model/ListProjectsResult.cc
+	src/model/ListWorkerInstancesRequest.cc
+	src/model/ListWorkerInstancesResult.cc
+	src/model/ModifyDatabaseDescriptionRequest.cc
+	src/model/ModifyDatabaseDescriptionResult.cc
+	src/model/ModifyDatabaseUserRolesRequest.cc
+	src/model/ModifyDatabaseUserRolesResult.cc
+	src/model/ModifyInstanceNameRequest.cc
+	src/model/ModifyInstanceNameResult.cc
+	src/model/ModifyInstanceNodeNumRequest.cc
+	src/model/ModifyInstanceNodeNumResult.cc
+	src/model/ModifyInstanceSpecRequest.cc
+	src/model/ModifyInstanceSpecResult.cc
+	src/model/ModifyInstanceTagsRequest.cc
+	src/model/ModifyInstanceTagsResult.cc
+	src/model/ModifyParametersRequest.cc
+	src/model/ModifyParametersResult.cc
+	src/model/ModifySecurityIpsRequest.cc
+	src/model/ModifySecurityIpsResult.cc
+	src/model/ModifyTenantEncryptionRequest.cc
+	src/model/ModifyTenantEncryptionResult.cc
+	src/model/ModifyTenantPrimaryZoneRequest.cc
+	src/model/ModifyTenantPrimaryZoneResult.cc
+	src/model/ModifyTenantResourceRequest.cc
+	src/model/ModifyTenantResourceResult.cc
+	src/model/ModifyTenantSecurityIpGroupRequest.cc
+	src/model/ModifyTenantSecurityIpGroupResult.cc
+	src/model/ModifyTenantTagsRequest.cc
+	src/model/ModifyTenantTagsResult.cc
+	src/model/ModifyTenantUserDescriptionRequest.cc
+	src/model/ModifyTenantUserDescriptionResult.cc
+	src/model/ModifyTenantUserPasswordRequest.cc
+	src/model/ModifyTenantUserPasswordResult.cc
+	src/model/ModifyTenantUserRolesRequest.cc
+	src/model/ModifyTenantUserRolesResult.cc
+	src/model/ModifyTenantUserStatusRequest.cc
+	src/model/ModifyTenantUserStatusResult.cc
+	src/model/ReleaseOmsOpenAPIProjectRequest.cc
+	src/model/ReleaseOmsOpenAPIProjectResult.cc
+	src/model/ReleaseProjectRequest.cc
+	src/model/ReleaseProjectResult.cc
+	src/model/ResetOmsOpenAPIProjectRequest.cc
+	src/model/ResetOmsOpenAPIProjectResult.cc
+	src/model/ResumeOmsOpenAPIProjectRequest.cc
+	src/model/ResumeOmsOpenAPIProjectResult.cc
+	src/model/ResumeProjectRequest.cc
+	src/model/ResumeProjectResult.cc
+	src/model/SearchOmsOpenAPIMonitorMetricRequest.cc
+	src/model/SearchOmsOpenAPIMonitorMetricResult.cc
+	src/model/SearchOmsOpenAPIProjectsRequest.cc
+	src/model/SearchOmsOpenAPIProjectsResult.cc
+	src/model/StartOmsOpenAPIProjectRequest.cc
+	src/model/StartOmsOpenAPIProjectResult.cc
+	src/model/StartProjectRequest.cc
+	src/model/StartProjectResult.cc
+	src/model/StartProjectsByLabelRequest.cc
+	src/model/StartProjectsByLabelResult.cc
+	src/model/StopOmsOpenAPIProjectRequest.cc
+	src/model/StopOmsOpenAPIProjectResult.cc
+	src/model/StopProjectRequest.cc
+	src/model/StopProjectResult.cc
+	src/model/StopProjectsByLabelRequest.cc
+	src/model/StopProjectsByLabelResult.cc
+	src/model/SwitchoverInstanceRequest.cc
+	src/model/SwitchoverInstanceResult.cc )
+
+add_library(oceanbasepro ${LIB_TYPE}
+	${oceanbasepro_public_header}
+	${oceanbasepro_public_header_model}
+	${oceanbasepro_src})
+
+set_target_properties(oceanbasepro
+	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}oceanbasepro
+	)
+
+if(${LIB_TYPE} STREQUAL "SHARED")
+	set_target_properties(oceanbasepro
+		PROPERTIES
+		DEFINE_SYMBOL ALIBABACLOUD_OCEANBASEPRO_LIBRARY)
+endif()
+
+target_include_directories(oceanbasepro
+	PRIVATE include
+		${CMAKE_SOURCE_DIR}/core/include
+	)
+target_link_libraries(oceanbasepro
+	core)
+
+if(CMAKE_HOST_WIN32)
+	ExternalProject_Get_Property(jsoncpp INSTALL_DIR)
+	set(jsoncpp_install_dir ${INSTALL_DIR})
+	add_dependencies(oceanbasepro
+		jsoncpp)
+	target_include_directories(oceanbasepro
+		PRIVATE	${jsoncpp_install_dir}/include)
+	target_link_libraries(oceanbasepro
+		${jsoncpp_install_dir}/lib/jsoncpp.lib)
+	set_target_properties(oceanbasepro
+    	PROPERTIES
+    		COMPILE_OPTIONS "/bigobj")
+else()
+	target_include_directories(oceanbasepro
+		PRIVATE /usr/include/jsoncpp)
+	target_link_libraries(oceanbasepro
+		jsoncpp)
+endif()
+
+install(FILES ${oceanbasepro_public_header}
+	DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/alibabacloud/oceanbasepro)
+install(FILES ${oceanbasepro_public_header_model}
+	DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/alibabacloud/oceanbasepro/model)
+install(TARGETS oceanbasepro
+	ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+	LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+	RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+	)

+ 926 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/OceanBaseProClient.h

@@ -0,0 +1,926 @@
+/*
+ * 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_OCEANBASEPRO_OCEANBASEPROCLIENT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_OCEANBASEPROCLIENT_H_
+
+#include <future>
+#include <alibabacloud/core/AsyncCallerContext.h>
+#include <alibabacloud/core/EndpointProvider.h>
+#include <alibabacloud/core/RpcServiceClient.h>
+#include "OceanBaseProExport.h"
+#include "model/CreateDatabaseRequest.h"
+#include "model/CreateDatabaseResult.h"
+#include "model/CreateInstanceRequest.h"
+#include "model/CreateInstanceResult.h"
+#include "model/CreateLabelRequest.h"
+#include "model/CreateLabelResult.h"
+#include "model/CreateMySqlDataSourceRequest.h"
+#include "model/CreateMySqlDataSourceResult.h"
+#include "model/CreateOceanBaseDataSourceRequest.h"
+#include "model/CreateOceanBaseDataSourceResult.h"
+#include "model/CreateOmsMysqlDataSourceRequest.h"
+#include "model/CreateOmsMysqlDataSourceResult.h"
+#include "model/CreateOmsOpenAPIProjectRequest.h"
+#include "model/CreateOmsOpenAPIProjectResult.h"
+#include "model/CreateProjectRequest.h"
+#include "model/CreateProjectResult.h"
+#include "model/CreateSecurityIpGroupRequest.h"
+#include "model/CreateSecurityIpGroupResult.h"
+#include "model/CreateTenantRequest.h"
+#include "model/CreateTenantResult.h"
+#include "model/CreateTenantReadOnlyConnectionRequest.h"
+#include "model/CreateTenantReadOnlyConnectionResult.h"
+#include "model/CreateTenantSecurityIpGroupRequest.h"
+#include "model/CreateTenantSecurityIpGroupResult.h"
+#include "model/CreateTenantUserRequest.h"
+#include "model/CreateTenantUserResult.h"
+#include "model/DeleteDatabasesRequest.h"
+#include "model/DeleteDatabasesResult.h"
+#include "model/DeleteInstancesRequest.h"
+#include "model/DeleteInstancesResult.h"
+#include "model/DeleteOmsOpenAPIProjectRequest.h"
+#include "model/DeleteOmsOpenAPIProjectResult.h"
+#include "model/DeleteProjectRequest.h"
+#include "model/DeleteProjectResult.h"
+#include "model/DeleteSecurityIpGroupRequest.h"
+#include "model/DeleteSecurityIpGroupResult.h"
+#include "model/DeleteTenantSecurityIpGroupRequest.h"
+#include "model/DeleteTenantSecurityIpGroupResult.h"
+#include "model/DeleteTenantUsersRequest.h"
+#include "model/DeleteTenantUsersResult.h"
+#include "model/DeleteTenantsRequest.h"
+#include "model/DeleteTenantsResult.h"
+#include "model/DescribeAnomalySQLListRequest.h"
+#include "model/DescribeAnomalySQLListResult.h"
+#include "model/DescribeAvailableCpuResourceRequest.h"
+#include "model/DescribeAvailableCpuResourceResult.h"
+#include "model/DescribeAvailableMemResourceRequest.h"
+#include "model/DescribeAvailableMemResourceResult.h"
+#include "model/DescribeCharsetRequest.h"
+#include "model/DescribeCharsetResult.h"
+#include "model/DescribeDatabasesRequest.h"
+#include "model/DescribeDatabasesResult.h"
+#include "model/DescribeInstanceRequest.h"
+#include "model/DescribeInstanceResult.h"
+#include "model/DescribeInstanceCreatableZoneRequest.h"
+#include "model/DescribeInstanceCreatableZoneResult.h"
+#include "model/DescribeInstanceSSLRequest.h"
+#include "model/DescribeInstanceSSLResult.h"
+#include "model/DescribeInstanceSecurityConfigsRequest.h"
+#include "model/DescribeInstanceSecurityConfigsResult.h"
+#include "model/DescribeInstanceTagsRequest.h"
+#include "model/DescribeInstanceTagsResult.h"
+#include "model/DescribeInstanceTenantModesRequest.h"
+#include "model/DescribeInstanceTenantModesResult.h"
+#include "model/DescribeInstanceTopologyRequest.h"
+#include "model/DescribeInstanceTopologyResult.h"
+#include "model/DescribeInstancesRequest.h"
+#include "model/DescribeInstancesResult.h"
+#include "model/DescribeMetricsDataRequest.h"
+#include "model/DescribeMetricsDataResult.h"
+#include "model/DescribeNodeMetricsRequest.h"
+#include "model/DescribeNodeMetricsResult.h"
+#include "model/DescribeOasAnomalySQLListRequest.h"
+#include "model/DescribeOasAnomalySQLListResult.h"
+#include "model/DescribeOasSQLDetailsRequest.h"
+#include "model/DescribeOasSQLDetailsResult.h"
+#include "model/DescribeOasSQLHistoryListRequest.h"
+#include "model/DescribeOasSQLHistoryListResult.h"
+#include "model/DescribeOasSQLPlansRequest.h"
+#include "model/DescribeOasSQLPlansResult.h"
+#include "model/DescribeOasSlowSQLListRequest.h"
+#include "model/DescribeOasSlowSQLListResult.h"
+#include "model/DescribeOasTopSQLListRequest.h"
+#include "model/DescribeOasTopSQLListResult.h"
+#include "model/DescribeOmsOpenAPIProjectRequest.h"
+#include "model/DescribeOmsOpenAPIProjectResult.h"
+#include "model/DescribeOmsOpenAPIProjectStepsRequest.h"
+#include "model/DescribeOmsOpenAPIProjectStepsResult.h"
+#include "model/DescribeOutlineBindingRequest.h"
+#include "model/DescribeOutlineBindingResult.h"
+#include "model/DescribeParametersRequest.h"
+#include "model/DescribeParametersResult.h"
+#include "model/DescribeParametersHistoryRequest.h"
+#include "model/DescribeParametersHistoryResult.h"
+#include "model/DescribeProjectRequest.h"
+#include "model/DescribeProjectResult.h"
+#include "model/DescribeProjectComponentsRequest.h"
+#include "model/DescribeProjectComponentsResult.h"
+#include "model/DescribeProjectProgressRequest.h"
+#include "model/DescribeProjectProgressResult.h"
+#include "model/DescribeProjectStepMetricRequest.h"
+#include "model/DescribeProjectStepMetricResult.h"
+#include "model/DescribeProjectStepsRequest.h"
+#include "model/DescribeProjectStepsResult.h"
+#include "model/DescribeRecommendIndexRequest.h"
+#include "model/DescribeRecommendIndexResult.h"
+#include "model/DescribeSQLDetailsRequest.h"
+#include "model/DescribeSQLDetailsResult.h"
+#include "model/DescribeSQLHistoryListRequest.h"
+#include "model/DescribeSQLHistoryListResult.h"
+#include "model/DescribeSQLPlansRequest.h"
+#include "model/DescribeSQLPlansResult.h"
+#include "model/DescribeSQLSamplesRequest.h"
+#include "model/DescribeSQLSamplesResult.h"
+#include "model/DescribeSecurityIpGroupsRequest.h"
+#include "model/DescribeSecurityIpGroupsResult.h"
+#include "model/DescribeSlowSQLHistoryListRequest.h"
+#include "model/DescribeSlowSQLHistoryListResult.h"
+#include "model/DescribeSlowSQLListRequest.h"
+#include "model/DescribeSlowSQLListResult.h"
+#include "model/DescribeTenantRequest.h"
+#include "model/DescribeTenantResult.h"
+#include "model/DescribeTenantMetricsRequest.h"
+#include "model/DescribeTenantMetricsResult.h"
+#include "model/DescribeTenantSecurityConfigsRequest.h"
+#include "model/DescribeTenantSecurityConfigsResult.h"
+#include "model/DescribeTenantSecurityIpGroupsRequest.h"
+#include "model/DescribeTenantSecurityIpGroupsResult.h"
+#include "model/DescribeTenantTagsRequest.h"
+#include "model/DescribeTenantTagsResult.h"
+#include "model/DescribeTenantUserRolesRequest.h"
+#include "model/DescribeTenantUserRolesResult.h"
+#include "model/DescribeTenantUsersRequest.h"
+#include "model/DescribeTenantUsersResult.h"
+#include "model/DescribeTenantZonesReadRequest.h"
+#include "model/DescribeTenantZonesReadResult.h"
+#include "model/DescribeTenantsRequest.h"
+#include "model/DescribeTenantsResult.h"
+#include "model/DescribeTimeZonesRequest.h"
+#include "model/DescribeTimeZonesResult.h"
+#include "model/DescribeTopSQLListRequest.h"
+#include "model/DescribeTopSQLListResult.h"
+#include "model/DescribeZonesRequest.h"
+#include "model/DescribeZonesResult.h"
+#include "model/GetUploadOssUrlRequest.h"
+#include "model/GetUploadOssUrlResult.h"
+#include "model/KillProcessListRequest.h"
+#include "model/KillProcessListResult.h"
+#include "model/ListAllLabelsRequest.h"
+#include "model/ListAllLabelsResult.h"
+#include "model/ListDataSourceRequest.h"
+#include "model/ListDataSourceResult.h"
+#include "model/ListProjectFullVerifyResultRequest.h"
+#include "model/ListProjectFullVerifyResultResult.h"
+#include "model/ListProjectsRequest.h"
+#include "model/ListProjectsResult.h"
+#include "model/ListWorkerInstancesRequest.h"
+#include "model/ListWorkerInstancesResult.h"
+#include "model/ModifyDatabaseDescriptionRequest.h"
+#include "model/ModifyDatabaseDescriptionResult.h"
+#include "model/ModifyDatabaseUserRolesRequest.h"
+#include "model/ModifyDatabaseUserRolesResult.h"
+#include "model/ModifyInstanceNameRequest.h"
+#include "model/ModifyInstanceNameResult.h"
+#include "model/ModifyInstanceNodeNumRequest.h"
+#include "model/ModifyInstanceNodeNumResult.h"
+#include "model/ModifyInstanceSpecRequest.h"
+#include "model/ModifyInstanceSpecResult.h"
+#include "model/ModifyInstanceTagsRequest.h"
+#include "model/ModifyInstanceTagsResult.h"
+#include "model/ModifyParametersRequest.h"
+#include "model/ModifyParametersResult.h"
+#include "model/ModifySecurityIpsRequest.h"
+#include "model/ModifySecurityIpsResult.h"
+#include "model/ModifyTenantEncryptionRequest.h"
+#include "model/ModifyTenantEncryptionResult.h"
+#include "model/ModifyTenantPrimaryZoneRequest.h"
+#include "model/ModifyTenantPrimaryZoneResult.h"
+#include "model/ModifyTenantResourceRequest.h"
+#include "model/ModifyTenantResourceResult.h"
+#include "model/ModifyTenantSecurityIpGroupRequest.h"
+#include "model/ModifyTenantSecurityIpGroupResult.h"
+#include "model/ModifyTenantTagsRequest.h"
+#include "model/ModifyTenantTagsResult.h"
+#include "model/ModifyTenantUserDescriptionRequest.h"
+#include "model/ModifyTenantUserDescriptionResult.h"
+#include "model/ModifyTenantUserPasswordRequest.h"
+#include "model/ModifyTenantUserPasswordResult.h"
+#include "model/ModifyTenantUserRolesRequest.h"
+#include "model/ModifyTenantUserRolesResult.h"
+#include "model/ModifyTenantUserStatusRequest.h"
+#include "model/ModifyTenantUserStatusResult.h"
+#include "model/ReleaseOmsOpenAPIProjectRequest.h"
+#include "model/ReleaseOmsOpenAPIProjectResult.h"
+#include "model/ReleaseProjectRequest.h"
+#include "model/ReleaseProjectResult.h"
+#include "model/ResetOmsOpenAPIProjectRequest.h"
+#include "model/ResetOmsOpenAPIProjectResult.h"
+#include "model/ResumeOmsOpenAPIProjectRequest.h"
+#include "model/ResumeOmsOpenAPIProjectResult.h"
+#include "model/ResumeProjectRequest.h"
+#include "model/ResumeProjectResult.h"
+#include "model/SearchOmsOpenAPIMonitorMetricRequest.h"
+#include "model/SearchOmsOpenAPIMonitorMetricResult.h"
+#include "model/SearchOmsOpenAPIProjectsRequest.h"
+#include "model/SearchOmsOpenAPIProjectsResult.h"
+#include "model/StartOmsOpenAPIProjectRequest.h"
+#include "model/StartOmsOpenAPIProjectResult.h"
+#include "model/StartProjectRequest.h"
+#include "model/StartProjectResult.h"
+#include "model/StartProjectsByLabelRequest.h"
+#include "model/StartProjectsByLabelResult.h"
+#include "model/StopOmsOpenAPIProjectRequest.h"
+#include "model/StopOmsOpenAPIProjectResult.h"
+#include "model/StopProjectRequest.h"
+#include "model/StopProjectResult.h"
+#include "model/StopProjectsByLabelRequest.h"
+#include "model/StopProjectsByLabelResult.h"
+#include "model/SwitchoverInstanceRequest.h"
+#include "model/SwitchoverInstanceResult.h"
+
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		class ALIBABACLOUD_OCEANBASEPRO_EXPORT OceanBaseProClient : public RpcServiceClient
+		{
+		public:
+			typedef Outcome<Error, Model::CreateDatabaseResult> CreateDatabaseOutcome;
+			typedef std::future<CreateDatabaseOutcome> CreateDatabaseOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::CreateDatabaseRequest&, const CreateDatabaseOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateDatabaseAsyncHandler;
+			typedef Outcome<Error, Model::CreateInstanceResult> CreateInstanceOutcome;
+			typedef std::future<CreateInstanceOutcome> CreateInstanceOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::CreateInstanceRequest&, const CreateInstanceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateInstanceAsyncHandler;
+			typedef Outcome<Error, Model::CreateLabelResult> CreateLabelOutcome;
+			typedef std::future<CreateLabelOutcome> CreateLabelOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::CreateLabelRequest&, const CreateLabelOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateLabelAsyncHandler;
+			typedef Outcome<Error, Model::CreateMySqlDataSourceResult> CreateMySqlDataSourceOutcome;
+			typedef std::future<CreateMySqlDataSourceOutcome> CreateMySqlDataSourceOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::CreateMySqlDataSourceRequest&, const CreateMySqlDataSourceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateMySqlDataSourceAsyncHandler;
+			typedef Outcome<Error, Model::CreateOceanBaseDataSourceResult> CreateOceanBaseDataSourceOutcome;
+			typedef std::future<CreateOceanBaseDataSourceOutcome> CreateOceanBaseDataSourceOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::CreateOceanBaseDataSourceRequest&, const CreateOceanBaseDataSourceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateOceanBaseDataSourceAsyncHandler;
+			typedef Outcome<Error, Model::CreateOmsMysqlDataSourceResult> CreateOmsMysqlDataSourceOutcome;
+			typedef std::future<CreateOmsMysqlDataSourceOutcome> CreateOmsMysqlDataSourceOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::CreateOmsMysqlDataSourceRequest&, const CreateOmsMysqlDataSourceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateOmsMysqlDataSourceAsyncHandler;
+			typedef Outcome<Error, Model::CreateOmsOpenAPIProjectResult> CreateOmsOpenAPIProjectOutcome;
+			typedef std::future<CreateOmsOpenAPIProjectOutcome> CreateOmsOpenAPIProjectOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::CreateOmsOpenAPIProjectRequest&, const CreateOmsOpenAPIProjectOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateOmsOpenAPIProjectAsyncHandler;
+			typedef Outcome<Error, Model::CreateProjectResult> CreateProjectOutcome;
+			typedef std::future<CreateProjectOutcome> CreateProjectOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::CreateProjectRequest&, const CreateProjectOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateProjectAsyncHandler;
+			typedef Outcome<Error, Model::CreateSecurityIpGroupResult> CreateSecurityIpGroupOutcome;
+			typedef std::future<CreateSecurityIpGroupOutcome> CreateSecurityIpGroupOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::CreateSecurityIpGroupRequest&, const CreateSecurityIpGroupOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateSecurityIpGroupAsyncHandler;
+			typedef Outcome<Error, Model::CreateTenantResult> CreateTenantOutcome;
+			typedef std::future<CreateTenantOutcome> CreateTenantOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::CreateTenantRequest&, const CreateTenantOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateTenantAsyncHandler;
+			typedef Outcome<Error, Model::CreateTenantReadOnlyConnectionResult> CreateTenantReadOnlyConnectionOutcome;
+			typedef std::future<CreateTenantReadOnlyConnectionOutcome> CreateTenantReadOnlyConnectionOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::CreateTenantReadOnlyConnectionRequest&, const CreateTenantReadOnlyConnectionOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateTenantReadOnlyConnectionAsyncHandler;
+			typedef Outcome<Error, Model::CreateTenantSecurityIpGroupResult> CreateTenantSecurityIpGroupOutcome;
+			typedef std::future<CreateTenantSecurityIpGroupOutcome> CreateTenantSecurityIpGroupOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::CreateTenantSecurityIpGroupRequest&, const CreateTenantSecurityIpGroupOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateTenantSecurityIpGroupAsyncHandler;
+			typedef Outcome<Error, Model::CreateTenantUserResult> CreateTenantUserOutcome;
+			typedef std::future<CreateTenantUserOutcome> CreateTenantUserOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::CreateTenantUserRequest&, const CreateTenantUserOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateTenantUserAsyncHandler;
+			typedef Outcome<Error, Model::DeleteDatabasesResult> DeleteDatabasesOutcome;
+			typedef std::future<DeleteDatabasesOutcome> DeleteDatabasesOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DeleteDatabasesRequest&, const DeleteDatabasesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteDatabasesAsyncHandler;
+			typedef Outcome<Error, Model::DeleteInstancesResult> DeleteInstancesOutcome;
+			typedef std::future<DeleteInstancesOutcome> DeleteInstancesOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DeleteInstancesRequest&, const DeleteInstancesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteInstancesAsyncHandler;
+			typedef Outcome<Error, Model::DeleteOmsOpenAPIProjectResult> DeleteOmsOpenAPIProjectOutcome;
+			typedef std::future<DeleteOmsOpenAPIProjectOutcome> DeleteOmsOpenAPIProjectOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DeleteOmsOpenAPIProjectRequest&, const DeleteOmsOpenAPIProjectOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteOmsOpenAPIProjectAsyncHandler;
+			typedef Outcome<Error, Model::DeleteProjectResult> DeleteProjectOutcome;
+			typedef std::future<DeleteProjectOutcome> DeleteProjectOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DeleteProjectRequest&, const DeleteProjectOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteProjectAsyncHandler;
+			typedef Outcome<Error, Model::DeleteSecurityIpGroupResult> DeleteSecurityIpGroupOutcome;
+			typedef std::future<DeleteSecurityIpGroupOutcome> DeleteSecurityIpGroupOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DeleteSecurityIpGroupRequest&, const DeleteSecurityIpGroupOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteSecurityIpGroupAsyncHandler;
+			typedef Outcome<Error, Model::DeleteTenantSecurityIpGroupResult> DeleteTenantSecurityIpGroupOutcome;
+			typedef std::future<DeleteTenantSecurityIpGroupOutcome> DeleteTenantSecurityIpGroupOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DeleteTenantSecurityIpGroupRequest&, const DeleteTenantSecurityIpGroupOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteTenantSecurityIpGroupAsyncHandler;
+			typedef Outcome<Error, Model::DeleteTenantUsersResult> DeleteTenantUsersOutcome;
+			typedef std::future<DeleteTenantUsersOutcome> DeleteTenantUsersOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DeleteTenantUsersRequest&, const DeleteTenantUsersOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteTenantUsersAsyncHandler;
+			typedef Outcome<Error, Model::DeleteTenantsResult> DeleteTenantsOutcome;
+			typedef std::future<DeleteTenantsOutcome> DeleteTenantsOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DeleteTenantsRequest&, const DeleteTenantsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteTenantsAsyncHandler;
+			typedef Outcome<Error, Model::DescribeAnomalySQLListResult> DescribeAnomalySQLListOutcome;
+			typedef std::future<DescribeAnomalySQLListOutcome> DescribeAnomalySQLListOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeAnomalySQLListRequest&, const DescribeAnomalySQLListOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeAnomalySQLListAsyncHandler;
+			typedef Outcome<Error, Model::DescribeAvailableCpuResourceResult> DescribeAvailableCpuResourceOutcome;
+			typedef std::future<DescribeAvailableCpuResourceOutcome> DescribeAvailableCpuResourceOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeAvailableCpuResourceRequest&, const DescribeAvailableCpuResourceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeAvailableCpuResourceAsyncHandler;
+			typedef Outcome<Error, Model::DescribeAvailableMemResourceResult> DescribeAvailableMemResourceOutcome;
+			typedef std::future<DescribeAvailableMemResourceOutcome> DescribeAvailableMemResourceOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeAvailableMemResourceRequest&, const DescribeAvailableMemResourceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeAvailableMemResourceAsyncHandler;
+			typedef Outcome<Error, Model::DescribeCharsetResult> DescribeCharsetOutcome;
+			typedef std::future<DescribeCharsetOutcome> DescribeCharsetOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeCharsetRequest&, const DescribeCharsetOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeCharsetAsyncHandler;
+			typedef Outcome<Error, Model::DescribeDatabasesResult> DescribeDatabasesOutcome;
+			typedef std::future<DescribeDatabasesOutcome> DescribeDatabasesOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeDatabasesRequest&, const DescribeDatabasesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeDatabasesAsyncHandler;
+			typedef Outcome<Error, Model::DescribeInstanceResult> DescribeInstanceOutcome;
+			typedef std::future<DescribeInstanceOutcome> DescribeInstanceOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeInstanceRequest&, const DescribeInstanceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeInstanceAsyncHandler;
+			typedef Outcome<Error, Model::DescribeInstanceCreatableZoneResult> DescribeInstanceCreatableZoneOutcome;
+			typedef std::future<DescribeInstanceCreatableZoneOutcome> DescribeInstanceCreatableZoneOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeInstanceCreatableZoneRequest&, const DescribeInstanceCreatableZoneOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeInstanceCreatableZoneAsyncHandler;
+			typedef Outcome<Error, Model::DescribeInstanceSSLResult> DescribeInstanceSSLOutcome;
+			typedef std::future<DescribeInstanceSSLOutcome> DescribeInstanceSSLOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeInstanceSSLRequest&, const DescribeInstanceSSLOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeInstanceSSLAsyncHandler;
+			typedef Outcome<Error, Model::DescribeInstanceSecurityConfigsResult> DescribeInstanceSecurityConfigsOutcome;
+			typedef std::future<DescribeInstanceSecurityConfigsOutcome> DescribeInstanceSecurityConfigsOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeInstanceSecurityConfigsRequest&, const DescribeInstanceSecurityConfigsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeInstanceSecurityConfigsAsyncHandler;
+			typedef Outcome<Error, Model::DescribeInstanceTagsResult> DescribeInstanceTagsOutcome;
+			typedef std::future<DescribeInstanceTagsOutcome> DescribeInstanceTagsOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeInstanceTagsRequest&, const DescribeInstanceTagsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeInstanceTagsAsyncHandler;
+			typedef Outcome<Error, Model::DescribeInstanceTenantModesResult> DescribeInstanceTenantModesOutcome;
+			typedef std::future<DescribeInstanceTenantModesOutcome> DescribeInstanceTenantModesOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeInstanceTenantModesRequest&, const DescribeInstanceTenantModesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeInstanceTenantModesAsyncHandler;
+			typedef Outcome<Error, Model::DescribeInstanceTopologyResult> DescribeInstanceTopologyOutcome;
+			typedef std::future<DescribeInstanceTopologyOutcome> DescribeInstanceTopologyOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeInstanceTopologyRequest&, const DescribeInstanceTopologyOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeInstanceTopologyAsyncHandler;
+			typedef Outcome<Error, Model::DescribeInstancesResult> DescribeInstancesOutcome;
+			typedef std::future<DescribeInstancesOutcome> DescribeInstancesOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeInstancesRequest&, const DescribeInstancesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeInstancesAsyncHandler;
+			typedef Outcome<Error, Model::DescribeMetricsDataResult> DescribeMetricsDataOutcome;
+			typedef std::future<DescribeMetricsDataOutcome> DescribeMetricsDataOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeMetricsDataRequest&, const DescribeMetricsDataOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeMetricsDataAsyncHandler;
+			typedef Outcome<Error, Model::DescribeNodeMetricsResult> DescribeNodeMetricsOutcome;
+			typedef std::future<DescribeNodeMetricsOutcome> DescribeNodeMetricsOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeNodeMetricsRequest&, const DescribeNodeMetricsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeNodeMetricsAsyncHandler;
+			typedef Outcome<Error, Model::DescribeOasAnomalySQLListResult> DescribeOasAnomalySQLListOutcome;
+			typedef std::future<DescribeOasAnomalySQLListOutcome> DescribeOasAnomalySQLListOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeOasAnomalySQLListRequest&, const DescribeOasAnomalySQLListOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeOasAnomalySQLListAsyncHandler;
+			typedef Outcome<Error, Model::DescribeOasSQLDetailsResult> DescribeOasSQLDetailsOutcome;
+			typedef std::future<DescribeOasSQLDetailsOutcome> DescribeOasSQLDetailsOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeOasSQLDetailsRequest&, const DescribeOasSQLDetailsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeOasSQLDetailsAsyncHandler;
+			typedef Outcome<Error, Model::DescribeOasSQLHistoryListResult> DescribeOasSQLHistoryListOutcome;
+			typedef std::future<DescribeOasSQLHistoryListOutcome> DescribeOasSQLHistoryListOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeOasSQLHistoryListRequest&, const DescribeOasSQLHistoryListOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeOasSQLHistoryListAsyncHandler;
+			typedef Outcome<Error, Model::DescribeOasSQLPlansResult> DescribeOasSQLPlansOutcome;
+			typedef std::future<DescribeOasSQLPlansOutcome> DescribeOasSQLPlansOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeOasSQLPlansRequest&, const DescribeOasSQLPlansOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeOasSQLPlansAsyncHandler;
+			typedef Outcome<Error, Model::DescribeOasSlowSQLListResult> DescribeOasSlowSQLListOutcome;
+			typedef std::future<DescribeOasSlowSQLListOutcome> DescribeOasSlowSQLListOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeOasSlowSQLListRequest&, const DescribeOasSlowSQLListOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeOasSlowSQLListAsyncHandler;
+			typedef Outcome<Error, Model::DescribeOasTopSQLListResult> DescribeOasTopSQLListOutcome;
+			typedef std::future<DescribeOasTopSQLListOutcome> DescribeOasTopSQLListOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeOasTopSQLListRequest&, const DescribeOasTopSQLListOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeOasTopSQLListAsyncHandler;
+			typedef Outcome<Error, Model::DescribeOmsOpenAPIProjectResult> DescribeOmsOpenAPIProjectOutcome;
+			typedef std::future<DescribeOmsOpenAPIProjectOutcome> DescribeOmsOpenAPIProjectOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeOmsOpenAPIProjectRequest&, const DescribeOmsOpenAPIProjectOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeOmsOpenAPIProjectAsyncHandler;
+			typedef Outcome<Error, Model::DescribeOmsOpenAPIProjectStepsResult> DescribeOmsOpenAPIProjectStepsOutcome;
+			typedef std::future<DescribeOmsOpenAPIProjectStepsOutcome> DescribeOmsOpenAPIProjectStepsOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeOmsOpenAPIProjectStepsRequest&, const DescribeOmsOpenAPIProjectStepsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeOmsOpenAPIProjectStepsAsyncHandler;
+			typedef Outcome<Error, Model::DescribeOutlineBindingResult> DescribeOutlineBindingOutcome;
+			typedef std::future<DescribeOutlineBindingOutcome> DescribeOutlineBindingOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeOutlineBindingRequest&, const DescribeOutlineBindingOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeOutlineBindingAsyncHandler;
+			typedef Outcome<Error, Model::DescribeParametersResult> DescribeParametersOutcome;
+			typedef std::future<DescribeParametersOutcome> DescribeParametersOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeParametersRequest&, const DescribeParametersOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeParametersAsyncHandler;
+			typedef Outcome<Error, Model::DescribeParametersHistoryResult> DescribeParametersHistoryOutcome;
+			typedef std::future<DescribeParametersHistoryOutcome> DescribeParametersHistoryOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeParametersHistoryRequest&, const DescribeParametersHistoryOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeParametersHistoryAsyncHandler;
+			typedef Outcome<Error, Model::DescribeProjectResult> DescribeProjectOutcome;
+			typedef std::future<DescribeProjectOutcome> DescribeProjectOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeProjectRequest&, const DescribeProjectOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeProjectAsyncHandler;
+			typedef Outcome<Error, Model::DescribeProjectComponentsResult> DescribeProjectComponentsOutcome;
+			typedef std::future<DescribeProjectComponentsOutcome> DescribeProjectComponentsOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeProjectComponentsRequest&, const DescribeProjectComponentsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeProjectComponentsAsyncHandler;
+			typedef Outcome<Error, Model::DescribeProjectProgressResult> DescribeProjectProgressOutcome;
+			typedef std::future<DescribeProjectProgressOutcome> DescribeProjectProgressOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeProjectProgressRequest&, const DescribeProjectProgressOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeProjectProgressAsyncHandler;
+			typedef Outcome<Error, Model::DescribeProjectStepMetricResult> DescribeProjectStepMetricOutcome;
+			typedef std::future<DescribeProjectStepMetricOutcome> DescribeProjectStepMetricOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeProjectStepMetricRequest&, const DescribeProjectStepMetricOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeProjectStepMetricAsyncHandler;
+			typedef Outcome<Error, Model::DescribeProjectStepsResult> DescribeProjectStepsOutcome;
+			typedef std::future<DescribeProjectStepsOutcome> DescribeProjectStepsOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeProjectStepsRequest&, const DescribeProjectStepsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeProjectStepsAsyncHandler;
+			typedef Outcome<Error, Model::DescribeRecommendIndexResult> DescribeRecommendIndexOutcome;
+			typedef std::future<DescribeRecommendIndexOutcome> DescribeRecommendIndexOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeRecommendIndexRequest&, const DescribeRecommendIndexOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeRecommendIndexAsyncHandler;
+			typedef Outcome<Error, Model::DescribeSQLDetailsResult> DescribeSQLDetailsOutcome;
+			typedef std::future<DescribeSQLDetailsOutcome> DescribeSQLDetailsOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeSQLDetailsRequest&, const DescribeSQLDetailsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeSQLDetailsAsyncHandler;
+			typedef Outcome<Error, Model::DescribeSQLHistoryListResult> DescribeSQLHistoryListOutcome;
+			typedef std::future<DescribeSQLHistoryListOutcome> DescribeSQLHistoryListOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeSQLHistoryListRequest&, const DescribeSQLHistoryListOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeSQLHistoryListAsyncHandler;
+			typedef Outcome<Error, Model::DescribeSQLPlansResult> DescribeSQLPlansOutcome;
+			typedef std::future<DescribeSQLPlansOutcome> DescribeSQLPlansOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeSQLPlansRequest&, const DescribeSQLPlansOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeSQLPlansAsyncHandler;
+			typedef Outcome<Error, Model::DescribeSQLSamplesResult> DescribeSQLSamplesOutcome;
+			typedef std::future<DescribeSQLSamplesOutcome> DescribeSQLSamplesOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeSQLSamplesRequest&, const DescribeSQLSamplesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeSQLSamplesAsyncHandler;
+			typedef Outcome<Error, Model::DescribeSecurityIpGroupsResult> DescribeSecurityIpGroupsOutcome;
+			typedef std::future<DescribeSecurityIpGroupsOutcome> DescribeSecurityIpGroupsOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeSecurityIpGroupsRequest&, const DescribeSecurityIpGroupsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeSecurityIpGroupsAsyncHandler;
+			typedef Outcome<Error, Model::DescribeSlowSQLHistoryListResult> DescribeSlowSQLHistoryListOutcome;
+			typedef std::future<DescribeSlowSQLHistoryListOutcome> DescribeSlowSQLHistoryListOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeSlowSQLHistoryListRequest&, const DescribeSlowSQLHistoryListOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeSlowSQLHistoryListAsyncHandler;
+			typedef Outcome<Error, Model::DescribeSlowSQLListResult> DescribeSlowSQLListOutcome;
+			typedef std::future<DescribeSlowSQLListOutcome> DescribeSlowSQLListOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeSlowSQLListRequest&, const DescribeSlowSQLListOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeSlowSQLListAsyncHandler;
+			typedef Outcome<Error, Model::DescribeTenantResult> DescribeTenantOutcome;
+			typedef std::future<DescribeTenantOutcome> DescribeTenantOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeTenantRequest&, const DescribeTenantOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeTenantAsyncHandler;
+			typedef Outcome<Error, Model::DescribeTenantMetricsResult> DescribeTenantMetricsOutcome;
+			typedef std::future<DescribeTenantMetricsOutcome> DescribeTenantMetricsOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeTenantMetricsRequest&, const DescribeTenantMetricsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeTenantMetricsAsyncHandler;
+			typedef Outcome<Error, Model::DescribeTenantSecurityConfigsResult> DescribeTenantSecurityConfigsOutcome;
+			typedef std::future<DescribeTenantSecurityConfigsOutcome> DescribeTenantSecurityConfigsOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeTenantSecurityConfigsRequest&, const DescribeTenantSecurityConfigsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeTenantSecurityConfigsAsyncHandler;
+			typedef Outcome<Error, Model::DescribeTenantSecurityIpGroupsResult> DescribeTenantSecurityIpGroupsOutcome;
+			typedef std::future<DescribeTenantSecurityIpGroupsOutcome> DescribeTenantSecurityIpGroupsOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeTenantSecurityIpGroupsRequest&, const DescribeTenantSecurityIpGroupsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeTenantSecurityIpGroupsAsyncHandler;
+			typedef Outcome<Error, Model::DescribeTenantTagsResult> DescribeTenantTagsOutcome;
+			typedef std::future<DescribeTenantTagsOutcome> DescribeTenantTagsOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeTenantTagsRequest&, const DescribeTenantTagsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeTenantTagsAsyncHandler;
+			typedef Outcome<Error, Model::DescribeTenantUserRolesResult> DescribeTenantUserRolesOutcome;
+			typedef std::future<DescribeTenantUserRolesOutcome> DescribeTenantUserRolesOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeTenantUserRolesRequest&, const DescribeTenantUserRolesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeTenantUserRolesAsyncHandler;
+			typedef Outcome<Error, Model::DescribeTenantUsersResult> DescribeTenantUsersOutcome;
+			typedef std::future<DescribeTenantUsersOutcome> DescribeTenantUsersOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeTenantUsersRequest&, const DescribeTenantUsersOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeTenantUsersAsyncHandler;
+			typedef Outcome<Error, Model::DescribeTenantZonesReadResult> DescribeTenantZonesReadOutcome;
+			typedef std::future<DescribeTenantZonesReadOutcome> DescribeTenantZonesReadOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeTenantZonesReadRequest&, const DescribeTenantZonesReadOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeTenantZonesReadAsyncHandler;
+			typedef Outcome<Error, Model::DescribeTenantsResult> DescribeTenantsOutcome;
+			typedef std::future<DescribeTenantsOutcome> DescribeTenantsOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeTenantsRequest&, const DescribeTenantsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeTenantsAsyncHandler;
+			typedef Outcome<Error, Model::DescribeTimeZonesResult> DescribeTimeZonesOutcome;
+			typedef std::future<DescribeTimeZonesOutcome> DescribeTimeZonesOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeTimeZonesRequest&, const DescribeTimeZonesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeTimeZonesAsyncHandler;
+			typedef Outcome<Error, Model::DescribeTopSQLListResult> DescribeTopSQLListOutcome;
+			typedef std::future<DescribeTopSQLListOutcome> DescribeTopSQLListOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeTopSQLListRequest&, const DescribeTopSQLListOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeTopSQLListAsyncHandler;
+			typedef Outcome<Error, Model::DescribeZonesResult> DescribeZonesOutcome;
+			typedef std::future<DescribeZonesOutcome> DescribeZonesOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::DescribeZonesRequest&, const DescribeZonesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeZonesAsyncHandler;
+			typedef Outcome<Error, Model::GetUploadOssUrlResult> GetUploadOssUrlOutcome;
+			typedef std::future<GetUploadOssUrlOutcome> GetUploadOssUrlOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::GetUploadOssUrlRequest&, const GetUploadOssUrlOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetUploadOssUrlAsyncHandler;
+			typedef Outcome<Error, Model::KillProcessListResult> KillProcessListOutcome;
+			typedef std::future<KillProcessListOutcome> KillProcessListOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::KillProcessListRequest&, const KillProcessListOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> KillProcessListAsyncHandler;
+			typedef Outcome<Error, Model::ListAllLabelsResult> ListAllLabelsOutcome;
+			typedef std::future<ListAllLabelsOutcome> ListAllLabelsOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::ListAllLabelsRequest&, const ListAllLabelsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListAllLabelsAsyncHandler;
+			typedef Outcome<Error, Model::ListDataSourceResult> ListDataSourceOutcome;
+			typedef std::future<ListDataSourceOutcome> ListDataSourceOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::ListDataSourceRequest&, const ListDataSourceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListDataSourceAsyncHandler;
+			typedef Outcome<Error, Model::ListProjectFullVerifyResultResult> ListProjectFullVerifyResultOutcome;
+			typedef std::future<ListProjectFullVerifyResultOutcome> ListProjectFullVerifyResultOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::ListProjectFullVerifyResultRequest&, const ListProjectFullVerifyResultOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListProjectFullVerifyResultAsyncHandler;
+			typedef Outcome<Error, Model::ListProjectsResult> ListProjectsOutcome;
+			typedef std::future<ListProjectsOutcome> ListProjectsOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::ListProjectsRequest&, const ListProjectsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListProjectsAsyncHandler;
+			typedef Outcome<Error, Model::ListWorkerInstancesResult> ListWorkerInstancesOutcome;
+			typedef std::future<ListWorkerInstancesOutcome> ListWorkerInstancesOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::ListWorkerInstancesRequest&, const ListWorkerInstancesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListWorkerInstancesAsyncHandler;
+			typedef Outcome<Error, Model::ModifyDatabaseDescriptionResult> ModifyDatabaseDescriptionOutcome;
+			typedef std::future<ModifyDatabaseDescriptionOutcome> ModifyDatabaseDescriptionOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::ModifyDatabaseDescriptionRequest&, const ModifyDatabaseDescriptionOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyDatabaseDescriptionAsyncHandler;
+			typedef Outcome<Error, Model::ModifyDatabaseUserRolesResult> ModifyDatabaseUserRolesOutcome;
+			typedef std::future<ModifyDatabaseUserRolesOutcome> ModifyDatabaseUserRolesOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::ModifyDatabaseUserRolesRequest&, const ModifyDatabaseUserRolesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyDatabaseUserRolesAsyncHandler;
+			typedef Outcome<Error, Model::ModifyInstanceNameResult> ModifyInstanceNameOutcome;
+			typedef std::future<ModifyInstanceNameOutcome> ModifyInstanceNameOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::ModifyInstanceNameRequest&, const ModifyInstanceNameOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyInstanceNameAsyncHandler;
+			typedef Outcome<Error, Model::ModifyInstanceNodeNumResult> ModifyInstanceNodeNumOutcome;
+			typedef std::future<ModifyInstanceNodeNumOutcome> ModifyInstanceNodeNumOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::ModifyInstanceNodeNumRequest&, const ModifyInstanceNodeNumOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyInstanceNodeNumAsyncHandler;
+			typedef Outcome<Error, Model::ModifyInstanceSpecResult> ModifyInstanceSpecOutcome;
+			typedef std::future<ModifyInstanceSpecOutcome> ModifyInstanceSpecOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::ModifyInstanceSpecRequest&, const ModifyInstanceSpecOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyInstanceSpecAsyncHandler;
+			typedef Outcome<Error, Model::ModifyInstanceTagsResult> ModifyInstanceTagsOutcome;
+			typedef std::future<ModifyInstanceTagsOutcome> ModifyInstanceTagsOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::ModifyInstanceTagsRequest&, const ModifyInstanceTagsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyInstanceTagsAsyncHandler;
+			typedef Outcome<Error, Model::ModifyParametersResult> ModifyParametersOutcome;
+			typedef std::future<ModifyParametersOutcome> ModifyParametersOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::ModifyParametersRequest&, const ModifyParametersOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyParametersAsyncHandler;
+			typedef Outcome<Error, Model::ModifySecurityIpsResult> ModifySecurityIpsOutcome;
+			typedef std::future<ModifySecurityIpsOutcome> ModifySecurityIpsOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::ModifySecurityIpsRequest&, const ModifySecurityIpsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifySecurityIpsAsyncHandler;
+			typedef Outcome<Error, Model::ModifyTenantEncryptionResult> ModifyTenantEncryptionOutcome;
+			typedef std::future<ModifyTenantEncryptionOutcome> ModifyTenantEncryptionOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::ModifyTenantEncryptionRequest&, const ModifyTenantEncryptionOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyTenantEncryptionAsyncHandler;
+			typedef Outcome<Error, Model::ModifyTenantPrimaryZoneResult> ModifyTenantPrimaryZoneOutcome;
+			typedef std::future<ModifyTenantPrimaryZoneOutcome> ModifyTenantPrimaryZoneOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::ModifyTenantPrimaryZoneRequest&, const ModifyTenantPrimaryZoneOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyTenantPrimaryZoneAsyncHandler;
+			typedef Outcome<Error, Model::ModifyTenantResourceResult> ModifyTenantResourceOutcome;
+			typedef std::future<ModifyTenantResourceOutcome> ModifyTenantResourceOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::ModifyTenantResourceRequest&, const ModifyTenantResourceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyTenantResourceAsyncHandler;
+			typedef Outcome<Error, Model::ModifyTenantSecurityIpGroupResult> ModifyTenantSecurityIpGroupOutcome;
+			typedef std::future<ModifyTenantSecurityIpGroupOutcome> ModifyTenantSecurityIpGroupOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::ModifyTenantSecurityIpGroupRequest&, const ModifyTenantSecurityIpGroupOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyTenantSecurityIpGroupAsyncHandler;
+			typedef Outcome<Error, Model::ModifyTenantTagsResult> ModifyTenantTagsOutcome;
+			typedef std::future<ModifyTenantTagsOutcome> ModifyTenantTagsOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::ModifyTenantTagsRequest&, const ModifyTenantTagsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyTenantTagsAsyncHandler;
+			typedef Outcome<Error, Model::ModifyTenantUserDescriptionResult> ModifyTenantUserDescriptionOutcome;
+			typedef std::future<ModifyTenantUserDescriptionOutcome> ModifyTenantUserDescriptionOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::ModifyTenantUserDescriptionRequest&, const ModifyTenantUserDescriptionOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyTenantUserDescriptionAsyncHandler;
+			typedef Outcome<Error, Model::ModifyTenantUserPasswordResult> ModifyTenantUserPasswordOutcome;
+			typedef std::future<ModifyTenantUserPasswordOutcome> ModifyTenantUserPasswordOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::ModifyTenantUserPasswordRequest&, const ModifyTenantUserPasswordOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyTenantUserPasswordAsyncHandler;
+			typedef Outcome<Error, Model::ModifyTenantUserRolesResult> ModifyTenantUserRolesOutcome;
+			typedef std::future<ModifyTenantUserRolesOutcome> ModifyTenantUserRolesOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::ModifyTenantUserRolesRequest&, const ModifyTenantUserRolesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyTenantUserRolesAsyncHandler;
+			typedef Outcome<Error, Model::ModifyTenantUserStatusResult> ModifyTenantUserStatusOutcome;
+			typedef std::future<ModifyTenantUserStatusOutcome> ModifyTenantUserStatusOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::ModifyTenantUserStatusRequest&, const ModifyTenantUserStatusOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyTenantUserStatusAsyncHandler;
+			typedef Outcome<Error, Model::ReleaseOmsOpenAPIProjectResult> ReleaseOmsOpenAPIProjectOutcome;
+			typedef std::future<ReleaseOmsOpenAPIProjectOutcome> ReleaseOmsOpenAPIProjectOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::ReleaseOmsOpenAPIProjectRequest&, const ReleaseOmsOpenAPIProjectOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ReleaseOmsOpenAPIProjectAsyncHandler;
+			typedef Outcome<Error, Model::ReleaseProjectResult> ReleaseProjectOutcome;
+			typedef std::future<ReleaseProjectOutcome> ReleaseProjectOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::ReleaseProjectRequest&, const ReleaseProjectOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ReleaseProjectAsyncHandler;
+			typedef Outcome<Error, Model::ResetOmsOpenAPIProjectResult> ResetOmsOpenAPIProjectOutcome;
+			typedef std::future<ResetOmsOpenAPIProjectOutcome> ResetOmsOpenAPIProjectOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::ResetOmsOpenAPIProjectRequest&, const ResetOmsOpenAPIProjectOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ResetOmsOpenAPIProjectAsyncHandler;
+			typedef Outcome<Error, Model::ResumeOmsOpenAPIProjectResult> ResumeOmsOpenAPIProjectOutcome;
+			typedef std::future<ResumeOmsOpenAPIProjectOutcome> ResumeOmsOpenAPIProjectOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::ResumeOmsOpenAPIProjectRequest&, const ResumeOmsOpenAPIProjectOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ResumeOmsOpenAPIProjectAsyncHandler;
+			typedef Outcome<Error, Model::ResumeProjectResult> ResumeProjectOutcome;
+			typedef std::future<ResumeProjectOutcome> ResumeProjectOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::ResumeProjectRequest&, const ResumeProjectOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ResumeProjectAsyncHandler;
+			typedef Outcome<Error, Model::SearchOmsOpenAPIMonitorMetricResult> SearchOmsOpenAPIMonitorMetricOutcome;
+			typedef std::future<SearchOmsOpenAPIMonitorMetricOutcome> SearchOmsOpenAPIMonitorMetricOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::SearchOmsOpenAPIMonitorMetricRequest&, const SearchOmsOpenAPIMonitorMetricOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SearchOmsOpenAPIMonitorMetricAsyncHandler;
+			typedef Outcome<Error, Model::SearchOmsOpenAPIProjectsResult> SearchOmsOpenAPIProjectsOutcome;
+			typedef std::future<SearchOmsOpenAPIProjectsOutcome> SearchOmsOpenAPIProjectsOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::SearchOmsOpenAPIProjectsRequest&, const SearchOmsOpenAPIProjectsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SearchOmsOpenAPIProjectsAsyncHandler;
+			typedef Outcome<Error, Model::StartOmsOpenAPIProjectResult> StartOmsOpenAPIProjectOutcome;
+			typedef std::future<StartOmsOpenAPIProjectOutcome> StartOmsOpenAPIProjectOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::StartOmsOpenAPIProjectRequest&, const StartOmsOpenAPIProjectOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> StartOmsOpenAPIProjectAsyncHandler;
+			typedef Outcome<Error, Model::StartProjectResult> StartProjectOutcome;
+			typedef std::future<StartProjectOutcome> StartProjectOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::StartProjectRequest&, const StartProjectOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> StartProjectAsyncHandler;
+			typedef Outcome<Error, Model::StartProjectsByLabelResult> StartProjectsByLabelOutcome;
+			typedef std::future<StartProjectsByLabelOutcome> StartProjectsByLabelOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::StartProjectsByLabelRequest&, const StartProjectsByLabelOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> StartProjectsByLabelAsyncHandler;
+			typedef Outcome<Error, Model::StopOmsOpenAPIProjectResult> StopOmsOpenAPIProjectOutcome;
+			typedef std::future<StopOmsOpenAPIProjectOutcome> StopOmsOpenAPIProjectOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::StopOmsOpenAPIProjectRequest&, const StopOmsOpenAPIProjectOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> StopOmsOpenAPIProjectAsyncHandler;
+			typedef Outcome<Error, Model::StopProjectResult> StopProjectOutcome;
+			typedef std::future<StopProjectOutcome> StopProjectOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::StopProjectRequest&, const StopProjectOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> StopProjectAsyncHandler;
+			typedef Outcome<Error, Model::StopProjectsByLabelResult> StopProjectsByLabelOutcome;
+			typedef std::future<StopProjectsByLabelOutcome> StopProjectsByLabelOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::StopProjectsByLabelRequest&, const StopProjectsByLabelOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> StopProjectsByLabelAsyncHandler;
+			typedef Outcome<Error, Model::SwitchoverInstanceResult> SwitchoverInstanceOutcome;
+			typedef std::future<SwitchoverInstanceOutcome> SwitchoverInstanceOutcomeCallable;
+			typedef std::function<void(const OceanBaseProClient*, const Model::SwitchoverInstanceRequest&, const SwitchoverInstanceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SwitchoverInstanceAsyncHandler;
+
+			OceanBaseProClient(const Credentials &credentials, const ClientConfiguration &configuration);
+			OceanBaseProClient(const std::shared_ptr<CredentialsProvider> &credentialsProvider, const ClientConfiguration &configuration);
+			OceanBaseProClient(const std::string &accessKeyId, const std::string &accessKeySecret, const ClientConfiguration &configuration);
+			~OceanBaseProClient();
+			CreateDatabaseOutcome createDatabase(const Model::CreateDatabaseRequest &request)const;
+			void createDatabaseAsync(const Model::CreateDatabaseRequest& request, const CreateDatabaseAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateDatabaseOutcomeCallable createDatabaseCallable(const Model::CreateDatabaseRequest& request) const;
+			CreateInstanceOutcome createInstance(const Model::CreateInstanceRequest &request)const;
+			void createInstanceAsync(const Model::CreateInstanceRequest& request, const CreateInstanceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateInstanceOutcomeCallable createInstanceCallable(const Model::CreateInstanceRequest& request) const;
+			CreateLabelOutcome createLabel(const Model::CreateLabelRequest &request)const;
+			void createLabelAsync(const Model::CreateLabelRequest& request, const CreateLabelAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateLabelOutcomeCallable createLabelCallable(const Model::CreateLabelRequest& request) const;
+			CreateMySqlDataSourceOutcome createMySqlDataSource(const Model::CreateMySqlDataSourceRequest &request)const;
+			void createMySqlDataSourceAsync(const Model::CreateMySqlDataSourceRequest& request, const CreateMySqlDataSourceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateMySqlDataSourceOutcomeCallable createMySqlDataSourceCallable(const Model::CreateMySqlDataSourceRequest& request) const;
+			CreateOceanBaseDataSourceOutcome createOceanBaseDataSource(const Model::CreateOceanBaseDataSourceRequest &request)const;
+			void createOceanBaseDataSourceAsync(const Model::CreateOceanBaseDataSourceRequest& request, const CreateOceanBaseDataSourceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateOceanBaseDataSourceOutcomeCallable createOceanBaseDataSourceCallable(const Model::CreateOceanBaseDataSourceRequest& request) const;
+			CreateOmsMysqlDataSourceOutcome createOmsMysqlDataSource(const Model::CreateOmsMysqlDataSourceRequest &request)const;
+			void createOmsMysqlDataSourceAsync(const Model::CreateOmsMysqlDataSourceRequest& request, const CreateOmsMysqlDataSourceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateOmsMysqlDataSourceOutcomeCallable createOmsMysqlDataSourceCallable(const Model::CreateOmsMysqlDataSourceRequest& request) const;
+			CreateOmsOpenAPIProjectOutcome createOmsOpenAPIProject(const Model::CreateOmsOpenAPIProjectRequest &request)const;
+			void createOmsOpenAPIProjectAsync(const Model::CreateOmsOpenAPIProjectRequest& request, const CreateOmsOpenAPIProjectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateOmsOpenAPIProjectOutcomeCallable createOmsOpenAPIProjectCallable(const Model::CreateOmsOpenAPIProjectRequest& request) const;
+			CreateProjectOutcome createProject(const Model::CreateProjectRequest &request)const;
+			void createProjectAsync(const Model::CreateProjectRequest& request, const CreateProjectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateProjectOutcomeCallable createProjectCallable(const Model::CreateProjectRequest& request) const;
+			CreateSecurityIpGroupOutcome createSecurityIpGroup(const Model::CreateSecurityIpGroupRequest &request)const;
+			void createSecurityIpGroupAsync(const Model::CreateSecurityIpGroupRequest& request, const CreateSecurityIpGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateSecurityIpGroupOutcomeCallable createSecurityIpGroupCallable(const Model::CreateSecurityIpGroupRequest& request) const;
+			CreateTenantOutcome createTenant(const Model::CreateTenantRequest &request)const;
+			void createTenantAsync(const Model::CreateTenantRequest& request, const CreateTenantAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateTenantOutcomeCallable createTenantCallable(const Model::CreateTenantRequest& request) const;
+			CreateTenantReadOnlyConnectionOutcome createTenantReadOnlyConnection(const Model::CreateTenantReadOnlyConnectionRequest &request)const;
+			void createTenantReadOnlyConnectionAsync(const Model::CreateTenantReadOnlyConnectionRequest& request, const CreateTenantReadOnlyConnectionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateTenantReadOnlyConnectionOutcomeCallable createTenantReadOnlyConnectionCallable(const Model::CreateTenantReadOnlyConnectionRequest& request) const;
+			CreateTenantSecurityIpGroupOutcome createTenantSecurityIpGroup(const Model::CreateTenantSecurityIpGroupRequest &request)const;
+			void createTenantSecurityIpGroupAsync(const Model::CreateTenantSecurityIpGroupRequest& request, const CreateTenantSecurityIpGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateTenantSecurityIpGroupOutcomeCallable createTenantSecurityIpGroupCallable(const Model::CreateTenantSecurityIpGroupRequest& request) const;
+			CreateTenantUserOutcome createTenantUser(const Model::CreateTenantUserRequest &request)const;
+			void createTenantUserAsync(const Model::CreateTenantUserRequest& request, const CreateTenantUserAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateTenantUserOutcomeCallable createTenantUserCallable(const Model::CreateTenantUserRequest& request) const;
+			DeleteDatabasesOutcome deleteDatabases(const Model::DeleteDatabasesRequest &request)const;
+			void deleteDatabasesAsync(const Model::DeleteDatabasesRequest& request, const DeleteDatabasesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteDatabasesOutcomeCallable deleteDatabasesCallable(const Model::DeleteDatabasesRequest& request) const;
+			DeleteInstancesOutcome deleteInstances(const Model::DeleteInstancesRequest &request)const;
+			void deleteInstancesAsync(const Model::DeleteInstancesRequest& request, const DeleteInstancesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteInstancesOutcomeCallable deleteInstancesCallable(const Model::DeleteInstancesRequest& request) const;
+			DeleteOmsOpenAPIProjectOutcome deleteOmsOpenAPIProject(const Model::DeleteOmsOpenAPIProjectRequest &request)const;
+			void deleteOmsOpenAPIProjectAsync(const Model::DeleteOmsOpenAPIProjectRequest& request, const DeleteOmsOpenAPIProjectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteOmsOpenAPIProjectOutcomeCallable deleteOmsOpenAPIProjectCallable(const Model::DeleteOmsOpenAPIProjectRequest& request) const;
+			DeleteProjectOutcome deleteProject(const Model::DeleteProjectRequest &request)const;
+			void deleteProjectAsync(const Model::DeleteProjectRequest& request, const DeleteProjectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteProjectOutcomeCallable deleteProjectCallable(const Model::DeleteProjectRequest& request) const;
+			DeleteSecurityIpGroupOutcome deleteSecurityIpGroup(const Model::DeleteSecurityIpGroupRequest &request)const;
+			void deleteSecurityIpGroupAsync(const Model::DeleteSecurityIpGroupRequest& request, const DeleteSecurityIpGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteSecurityIpGroupOutcomeCallable deleteSecurityIpGroupCallable(const Model::DeleteSecurityIpGroupRequest& request) const;
+			DeleteTenantSecurityIpGroupOutcome deleteTenantSecurityIpGroup(const Model::DeleteTenantSecurityIpGroupRequest &request)const;
+			void deleteTenantSecurityIpGroupAsync(const Model::DeleteTenantSecurityIpGroupRequest& request, const DeleteTenantSecurityIpGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteTenantSecurityIpGroupOutcomeCallable deleteTenantSecurityIpGroupCallable(const Model::DeleteTenantSecurityIpGroupRequest& request) const;
+			DeleteTenantUsersOutcome deleteTenantUsers(const Model::DeleteTenantUsersRequest &request)const;
+			void deleteTenantUsersAsync(const Model::DeleteTenantUsersRequest& request, const DeleteTenantUsersAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteTenantUsersOutcomeCallable deleteTenantUsersCallable(const Model::DeleteTenantUsersRequest& request) const;
+			DeleteTenantsOutcome deleteTenants(const Model::DeleteTenantsRequest &request)const;
+			void deleteTenantsAsync(const Model::DeleteTenantsRequest& request, const DeleteTenantsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteTenantsOutcomeCallable deleteTenantsCallable(const Model::DeleteTenantsRequest& request) const;
+			DescribeAnomalySQLListOutcome describeAnomalySQLList(const Model::DescribeAnomalySQLListRequest &request)const;
+			void describeAnomalySQLListAsync(const Model::DescribeAnomalySQLListRequest& request, const DescribeAnomalySQLListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeAnomalySQLListOutcomeCallable describeAnomalySQLListCallable(const Model::DescribeAnomalySQLListRequest& request) const;
+			DescribeAvailableCpuResourceOutcome describeAvailableCpuResource(const Model::DescribeAvailableCpuResourceRequest &request)const;
+			void describeAvailableCpuResourceAsync(const Model::DescribeAvailableCpuResourceRequest& request, const DescribeAvailableCpuResourceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeAvailableCpuResourceOutcomeCallable describeAvailableCpuResourceCallable(const Model::DescribeAvailableCpuResourceRequest& request) const;
+			DescribeAvailableMemResourceOutcome describeAvailableMemResource(const Model::DescribeAvailableMemResourceRequest &request)const;
+			void describeAvailableMemResourceAsync(const Model::DescribeAvailableMemResourceRequest& request, const DescribeAvailableMemResourceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeAvailableMemResourceOutcomeCallable describeAvailableMemResourceCallable(const Model::DescribeAvailableMemResourceRequest& request) const;
+			DescribeCharsetOutcome describeCharset(const Model::DescribeCharsetRequest &request)const;
+			void describeCharsetAsync(const Model::DescribeCharsetRequest& request, const DescribeCharsetAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeCharsetOutcomeCallable describeCharsetCallable(const Model::DescribeCharsetRequest& request) const;
+			DescribeDatabasesOutcome describeDatabases(const Model::DescribeDatabasesRequest &request)const;
+			void describeDatabasesAsync(const Model::DescribeDatabasesRequest& request, const DescribeDatabasesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeDatabasesOutcomeCallable describeDatabasesCallable(const Model::DescribeDatabasesRequest& request) const;
+			DescribeInstanceOutcome describeInstance(const Model::DescribeInstanceRequest &request)const;
+			void describeInstanceAsync(const Model::DescribeInstanceRequest& request, const DescribeInstanceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeInstanceOutcomeCallable describeInstanceCallable(const Model::DescribeInstanceRequest& request) const;
+			DescribeInstanceCreatableZoneOutcome describeInstanceCreatableZone(const Model::DescribeInstanceCreatableZoneRequest &request)const;
+			void describeInstanceCreatableZoneAsync(const Model::DescribeInstanceCreatableZoneRequest& request, const DescribeInstanceCreatableZoneAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeInstanceCreatableZoneOutcomeCallable describeInstanceCreatableZoneCallable(const Model::DescribeInstanceCreatableZoneRequest& request) const;
+			DescribeInstanceSSLOutcome describeInstanceSSL(const Model::DescribeInstanceSSLRequest &request)const;
+			void describeInstanceSSLAsync(const Model::DescribeInstanceSSLRequest& request, const DescribeInstanceSSLAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeInstanceSSLOutcomeCallable describeInstanceSSLCallable(const Model::DescribeInstanceSSLRequest& request) const;
+			DescribeInstanceSecurityConfigsOutcome describeInstanceSecurityConfigs(const Model::DescribeInstanceSecurityConfigsRequest &request)const;
+			void describeInstanceSecurityConfigsAsync(const Model::DescribeInstanceSecurityConfigsRequest& request, const DescribeInstanceSecurityConfigsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeInstanceSecurityConfigsOutcomeCallable describeInstanceSecurityConfigsCallable(const Model::DescribeInstanceSecurityConfigsRequest& request) const;
+			DescribeInstanceTagsOutcome describeInstanceTags(const Model::DescribeInstanceTagsRequest &request)const;
+			void describeInstanceTagsAsync(const Model::DescribeInstanceTagsRequest& request, const DescribeInstanceTagsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeInstanceTagsOutcomeCallable describeInstanceTagsCallable(const Model::DescribeInstanceTagsRequest& request) const;
+			DescribeInstanceTenantModesOutcome describeInstanceTenantModes(const Model::DescribeInstanceTenantModesRequest &request)const;
+			void describeInstanceTenantModesAsync(const Model::DescribeInstanceTenantModesRequest& request, const DescribeInstanceTenantModesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeInstanceTenantModesOutcomeCallable describeInstanceTenantModesCallable(const Model::DescribeInstanceTenantModesRequest& request) const;
+			DescribeInstanceTopologyOutcome describeInstanceTopology(const Model::DescribeInstanceTopologyRequest &request)const;
+			void describeInstanceTopologyAsync(const Model::DescribeInstanceTopologyRequest& request, const DescribeInstanceTopologyAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeInstanceTopologyOutcomeCallable describeInstanceTopologyCallable(const Model::DescribeInstanceTopologyRequest& request) const;
+			DescribeInstancesOutcome describeInstances(const Model::DescribeInstancesRequest &request)const;
+			void describeInstancesAsync(const Model::DescribeInstancesRequest& request, const DescribeInstancesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeInstancesOutcomeCallable describeInstancesCallable(const Model::DescribeInstancesRequest& request) const;
+			DescribeMetricsDataOutcome describeMetricsData(const Model::DescribeMetricsDataRequest &request)const;
+			void describeMetricsDataAsync(const Model::DescribeMetricsDataRequest& request, const DescribeMetricsDataAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeMetricsDataOutcomeCallable describeMetricsDataCallable(const Model::DescribeMetricsDataRequest& request) const;
+			DescribeNodeMetricsOutcome describeNodeMetrics(const Model::DescribeNodeMetricsRequest &request)const;
+			void describeNodeMetricsAsync(const Model::DescribeNodeMetricsRequest& request, const DescribeNodeMetricsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeNodeMetricsOutcomeCallable describeNodeMetricsCallable(const Model::DescribeNodeMetricsRequest& request) const;
+			DescribeOasAnomalySQLListOutcome describeOasAnomalySQLList(const Model::DescribeOasAnomalySQLListRequest &request)const;
+			void describeOasAnomalySQLListAsync(const Model::DescribeOasAnomalySQLListRequest& request, const DescribeOasAnomalySQLListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeOasAnomalySQLListOutcomeCallable describeOasAnomalySQLListCallable(const Model::DescribeOasAnomalySQLListRequest& request) const;
+			DescribeOasSQLDetailsOutcome describeOasSQLDetails(const Model::DescribeOasSQLDetailsRequest &request)const;
+			void describeOasSQLDetailsAsync(const Model::DescribeOasSQLDetailsRequest& request, const DescribeOasSQLDetailsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeOasSQLDetailsOutcomeCallable describeOasSQLDetailsCallable(const Model::DescribeOasSQLDetailsRequest& request) const;
+			DescribeOasSQLHistoryListOutcome describeOasSQLHistoryList(const Model::DescribeOasSQLHistoryListRequest &request)const;
+			void describeOasSQLHistoryListAsync(const Model::DescribeOasSQLHistoryListRequest& request, const DescribeOasSQLHistoryListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeOasSQLHistoryListOutcomeCallable describeOasSQLHistoryListCallable(const Model::DescribeOasSQLHistoryListRequest& request) const;
+			DescribeOasSQLPlansOutcome describeOasSQLPlans(const Model::DescribeOasSQLPlansRequest &request)const;
+			void describeOasSQLPlansAsync(const Model::DescribeOasSQLPlansRequest& request, const DescribeOasSQLPlansAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeOasSQLPlansOutcomeCallable describeOasSQLPlansCallable(const Model::DescribeOasSQLPlansRequest& request) const;
+			DescribeOasSlowSQLListOutcome describeOasSlowSQLList(const Model::DescribeOasSlowSQLListRequest &request)const;
+			void describeOasSlowSQLListAsync(const Model::DescribeOasSlowSQLListRequest& request, const DescribeOasSlowSQLListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeOasSlowSQLListOutcomeCallable describeOasSlowSQLListCallable(const Model::DescribeOasSlowSQLListRequest& request) const;
+			DescribeOasTopSQLListOutcome describeOasTopSQLList(const Model::DescribeOasTopSQLListRequest &request)const;
+			void describeOasTopSQLListAsync(const Model::DescribeOasTopSQLListRequest& request, const DescribeOasTopSQLListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeOasTopSQLListOutcomeCallable describeOasTopSQLListCallable(const Model::DescribeOasTopSQLListRequest& request) const;
+			DescribeOmsOpenAPIProjectOutcome describeOmsOpenAPIProject(const Model::DescribeOmsOpenAPIProjectRequest &request)const;
+			void describeOmsOpenAPIProjectAsync(const Model::DescribeOmsOpenAPIProjectRequest& request, const DescribeOmsOpenAPIProjectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeOmsOpenAPIProjectOutcomeCallable describeOmsOpenAPIProjectCallable(const Model::DescribeOmsOpenAPIProjectRequest& request) const;
+			DescribeOmsOpenAPIProjectStepsOutcome describeOmsOpenAPIProjectSteps(const Model::DescribeOmsOpenAPIProjectStepsRequest &request)const;
+			void describeOmsOpenAPIProjectStepsAsync(const Model::DescribeOmsOpenAPIProjectStepsRequest& request, const DescribeOmsOpenAPIProjectStepsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeOmsOpenAPIProjectStepsOutcomeCallable describeOmsOpenAPIProjectStepsCallable(const Model::DescribeOmsOpenAPIProjectStepsRequest& request) const;
+			DescribeOutlineBindingOutcome describeOutlineBinding(const Model::DescribeOutlineBindingRequest &request)const;
+			void describeOutlineBindingAsync(const Model::DescribeOutlineBindingRequest& request, const DescribeOutlineBindingAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeOutlineBindingOutcomeCallable describeOutlineBindingCallable(const Model::DescribeOutlineBindingRequest& request) const;
+			DescribeParametersOutcome describeParameters(const Model::DescribeParametersRequest &request)const;
+			void describeParametersAsync(const Model::DescribeParametersRequest& request, const DescribeParametersAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeParametersOutcomeCallable describeParametersCallable(const Model::DescribeParametersRequest& request) const;
+			DescribeParametersHistoryOutcome describeParametersHistory(const Model::DescribeParametersHistoryRequest &request)const;
+			void describeParametersHistoryAsync(const Model::DescribeParametersHistoryRequest& request, const DescribeParametersHistoryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeParametersHistoryOutcomeCallable describeParametersHistoryCallable(const Model::DescribeParametersHistoryRequest& request) const;
+			DescribeProjectOutcome describeProject(const Model::DescribeProjectRequest &request)const;
+			void describeProjectAsync(const Model::DescribeProjectRequest& request, const DescribeProjectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeProjectOutcomeCallable describeProjectCallable(const Model::DescribeProjectRequest& request) const;
+			DescribeProjectComponentsOutcome describeProjectComponents(const Model::DescribeProjectComponentsRequest &request)const;
+			void describeProjectComponentsAsync(const Model::DescribeProjectComponentsRequest& request, const DescribeProjectComponentsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeProjectComponentsOutcomeCallable describeProjectComponentsCallable(const Model::DescribeProjectComponentsRequest& request) const;
+			DescribeProjectProgressOutcome describeProjectProgress(const Model::DescribeProjectProgressRequest &request)const;
+			void describeProjectProgressAsync(const Model::DescribeProjectProgressRequest& request, const DescribeProjectProgressAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeProjectProgressOutcomeCallable describeProjectProgressCallable(const Model::DescribeProjectProgressRequest& request) const;
+			DescribeProjectStepMetricOutcome describeProjectStepMetric(const Model::DescribeProjectStepMetricRequest &request)const;
+			void describeProjectStepMetricAsync(const Model::DescribeProjectStepMetricRequest& request, const DescribeProjectStepMetricAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeProjectStepMetricOutcomeCallable describeProjectStepMetricCallable(const Model::DescribeProjectStepMetricRequest& request) const;
+			DescribeProjectStepsOutcome describeProjectSteps(const Model::DescribeProjectStepsRequest &request)const;
+			void describeProjectStepsAsync(const Model::DescribeProjectStepsRequest& request, const DescribeProjectStepsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeProjectStepsOutcomeCallable describeProjectStepsCallable(const Model::DescribeProjectStepsRequest& request) const;
+			DescribeRecommendIndexOutcome describeRecommendIndex(const Model::DescribeRecommendIndexRequest &request)const;
+			void describeRecommendIndexAsync(const Model::DescribeRecommendIndexRequest& request, const DescribeRecommendIndexAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeRecommendIndexOutcomeCallable describeRecommendIndexCallable(const Model::DescribeRecommendIndexRequest& request) const;
+			DescribeSQLDetailsOutcome describeSQLDetails(const Model::DescribeSQLDetailsRequest &request)const;
+			void describeSQLDetailsAsync(const Model::DescribeSQLDetailsRequest& request, const DescribeSQLDetailsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeSQLDetailsOutcomeCallable describeSQLDetailsCallable(const Model::DescribeSQLDetailsRequest& request) const;
+			DescribeSQLHistoryListOutcome describeSQLHistoryList(const Model::DescribeSQLHistoryListRequest &request)const;
+			void describeSQLHistoryListAsync(const Model::DescribeSQLHistoryListRequest& request, const DescribeSQLHistoryListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeSQLHistoryListOutcomeCallable describeSQLHistoryListCallable(const Model::DescribeSQLHistoryListRequest& request) const;
+			DescribeSQLPlansOutcome describeSQLPlans(const Model::DescribeSQLPlansRequest &request)const;
+			void describeSQLPlansAsync(const Model::DescribeSQLPlansRequest& request, const DescribeSQLPlansAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeSQLPlansOutcomeCallable describeSQLPlansCallable(const Model::DescribeSQLPlansRequest& request) const;
+			DescribeSQLSamplesOutcome describeSQLSamples(const Model::DescribeSQLSamplesRequest &request)const;
+			void describeSQLSamplesAsync(const Model::DescribeSQLSamplesRequest& request, const DescribeSQLSamplesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeSQLSamplesOutcomeCallable describeSQLSamplesCallable(const Model::DescribeSQLSamplesRequest& request) const;
+			DescribeSecurityIpGroupsOutcome describeSecurityIpGroups(const Model::DescribeSecurityIpGroupsRequest &request)const;
+			void describeSecurityIpGroupsAsync(const Model::DescribeSecurityIpGroupsRequest& request, const DescribeSecurityIpGroupsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeSecurityIpGroupsOutcomeCallable describeSecurityIpGroupsCallable(const Model::DescribeSecurityIpGroupsRequest& request) const;
+			DescribeSlowSQLHistoryListOutcome describeSlowSQLHistoryList(const Model::DescribeSlowSQLHistoryListRequest &request)const;
+			void describeSlowSQLHistoryListAsync(const Model::DescribeSlowSQLHistoryListRequest& request, const DescribeSlowSQLHistoryListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeSlowSQLHistoryListOutcomeCallable describeSlowSQLHistoryListCallable(const Model::DescribeSlowSQLHistoryListRequest& request) const;
+			DescribeSlowSQLListOutcome describeSlowSQLList(const Model::DescribeSlowSQLListRequest &request)const;
+			void describeSlowSQLListAsync(const Model::DescribeSlowSQLListRequest& request, const DescribeSlowSQLListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeSlowSQLListOutcomeCallable describeSlowSQLListCallable(const Model::DescribeSlowSQLListRequest& request) const;
+			DescribeTenantOutcome describeTenant(const Model::DescribeTenantRequest &request)const;
+			void describeTenantAsync(const Model::DescribeTenantRequest& request, const DescribeTenantAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeTenantOutcomeCallable describeTenantCallable(const Model::DescribeTenantRequest& request) const;
+			DescribeTenantMetricsOutcome describeTenantMetrics(const Model::DescribeTenantMetricsRequest &request)const;
+			void describeTenantMetricsAsync(const Model::DescribeTenantMetricsRequest& request, const DescribeTenantMetricsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeTenantMetricsOutcomeCallable describeTenantMetricsCallable(const Model::DescribeTenantMetricsRequest& request) const;
+			DescribeTenantSecurityConfigsOutcome describeTenantSecurityConfigs(const Model::DescribeTenantSecurityConfigsRequest &request)const;
+			void describeTenantSecurityConfigsAsync(const Model::DescribeTenantSecurityConfigsRequest& request, const DescribeTenantSecurityConfigsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeTenantSecurityConfigsOutcomeCallable describeTenantSecurityConfigsCallable(const Model::DescribeTenantSecurityConfigsRequest& request) const;
+			DescribeTenantSecurityIpGroupsOutcome describeTenantSecurityIpGroups(const Model::DescribeTenantSecurityIpGroupsRequest &request)const;
+			void describeTenantSecurityIpGroupsAsync(const Model::DescribeTenantSecurityIpGroupsRequest& request, const DescribeTenantSecurityIpGroupsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeTenantSecurityIpGroupsOutcomeCallable describeTenantSecurityIpGroupsCallable(const Model::DescribeTenantSecurityIpGroupsRequest& request) const;
+			DescribeTenantTagsOutcome describeTenantTags(const Model::DescribeTenantTagsRequest &request)const;
+			void describeTenantTagsAsync(const Model::DescribeTenantTagsRequest& request, const DescribeTenantTagsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeTenantTagsOutcomeCallable describeTenantTagsCallable(const Model::DescribeTenantTagsRequest& request) const;
+			DescribeTenantUserRolesOutcome describeTenantUserRoles(const Model::DescribeTenantUserRolesRequest &request)const;
+			void describeTenantUserRolesAsync(const Model::DescribeTenantUserRolesRequest& request, const DescribeTenantUserRolesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeTenantUserRolesOutcomeCallable describeTenantUserRolesCallable(const Model::DescribeTenantUserRolesRequest& request) const;
+			DescribeTenantUsersOutcome describeTenantUsers(const Model::DescribeTenantUsersRequest &request)const;
+			void describeTenantUsersAsync(const Model::DescribeTenantUsersRequest& request, const DescribeTenantUsersAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeTenantUsersOutcomeCallable describeTenantUsersCallable(const Model::DescribeTenantUsersRequest& request) const;
+			DescribeTenantZonesReadOutcome describeTenantZonesRead(const Model::DescribeTenantZonesReadRequest &request)const;
+			void describeTenantZonesReadAsync(const Model::DescribeTenantZonesReadRequest& request, const DescribeTenantZonesReadAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeTenantZonesReadOutcomeCallable describeTenantZonesReadCallable(const Model::DescribeTenantZonesReadRequest& request) const;
+			DescribeTenantsOutcome describeTenants(const Model::DescribeTenantsRequest &request)const;
+			void describeTenantsAsync(const Model::DescribeTenantsRequest& request, const DescribeTenantsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeTenantsOutcomeCallable describeTenantsCallable(const Model::DescribeTenantsRequest& request) const;
+			DescribeTimeZonesOutcome describeTimeZones(const Model::DescribeTimeZonesRequest &request)const;
+			void describeTimeZonesAsync(const Model::DescribeTimeZonesRequest& request, const DescribeTimeZonesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeTimeZonesOutcomeCallable describeTimeZonesCallable(const Model::DescribeTimeZonesRequest& request) const;
+			DescribeTopSQLListOutcome describeTopSQLList(const Model::DescribeTopSQLListRequest &request)const;
+			void describeTopSQLListAsync(const Model::DescribeTopSQLListRequest& request, const DescribeTopSQLListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeTopSQLListOutcomeCallable describeTopSQLListCallable(const Model::DescribeTopSQLListRequest& request) const;
+			DescribeZonesOutcome describeZones(const Model::DescribeZonesRequest &request)const;
+			void describeZonesAsync(const Model::DescribeZonesRequest& request, const DescribeZonesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeZonesOutcomeCallable describeZonesCallable(const Model::DescribeZonesRequest& request) const;
+			GetUploadOssUrlOutcome getUploadOssUrl(const Model::GetUploadOssUrlRequest &request)const;
+			void getUploadOssUrlAsync(const Model::GetUploadOssUrlRequest& request, const GetUploadOssUrlAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetUploadOssUrlOutcomeCallable getUploadOssUrlCallable(const Model::GetUploadOssUrlRequest& request) const;
+			KillProcessListOutcome killProcessList(const Model::KillProcessListRequest &request)const;
+			void killProcessListAsync(const Model::KillProcessListRequest& request, const KillProcessListAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			KillProcessListOutcomeCallable killProcessListCallable(const Model::KillProcessListRequest& request) const;
+			ListAllLabelsOutcome listAllLabels(const Model::ListAllLabelsRequest &request)const;
+			void listAllLabelsAsync(const Model::ListAllLabelsRequest& request, const ListAllLabelsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListAllLabelsOutcomeCallable listAllLabelsCallable(const Model::ListAllLabelsRequest& request) const;
+			ListDataSourceOutcome listDataSource(const Model::ListDataSourceRequest &request)const;
+			void listDataSourceAsync(const Model::ListDataSourceRequest& request, const ListDataSourceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListDataSourceOutcomeCallable listDataSourceCallable(const Model::ListDataSourceRequest& request) const;
+			ListProjectFullVerifyResultOutcome listProjectFullVerifyResult(const Model::ListProjectFullVerifyResultRequest &request)const;
+			void listProjectFullVerifyResultAsync(const Model::ListProjectFullVerifyResultRequest& request, const ListProjectFullVerifyResultAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListProjectFullVerifyResultOutcomeCallable listProjectFullVerifyResultCallable(const Model::ListProjectFullVerifyResultRequest& request) const;
+			ListProjectsOutcome listProjects(const Model::ListProjectsRequest &request)const;
+			void listProjectsAsync(const Model::ListProjectsRequest& request, const ListProjectsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListProjectsOutcomeCallable listProjectsCallable(const Model::ListProjectsRequest& request) const;
+			ListWorkerInstancesOutcome listWorkerInstances(const Model::ListWorkerInstancesRequest &request)const;
+			void listWorkerInstancesAsync(const Model::ListWorkerInstancesRequest& request, const ListWorkerInstancesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListWorkerInstancesOutcomeCallable listWorkerInstancesCallable(const Model::ListWorkerInstancesRequest& request) const;
+			ModifyDatabaseDescriptionOutcome modifyDatabaseDescription(const Model::ModifyDatabaseDescriptionRequest &request)const;
+			void modifyDatabaseDescriptionAsync(const Model::ModifyDatabaseDescriptionRequest& request, const ModifyDatabaseDescriptionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyDatabaseDescriptionOutcomeCallable modifyDatabaseDescriptionCallable(const Model::ModifyDatabaseDescriptionRequest& request) const;
+			ModifyDatabaseUserRolesOutcome modifyDatabaseUserRoles(const Model::ModifyDatabaseUserRolesRequest &request)const;
+			void modifyDatabaseUserRolesAsync(const Model::ModifyDatabaseUserRolesRequest& request, const ModifyDatabaseUserRolesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyDatabaseUserRolesOutcomeCallable modifyDatabaseUserRolesCallable(const Model::ModifyDatabaseUserRolesRequest& request) const;
+			ModifyInstanceNameOutcome modifyInstanceName(const Model::ModifyInstanceNameRequest &request)const;
+			void modifyInstanceNameAsync(const Model::ModifyInstanceNameRequest& request, const ModifyInstanceNameAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyInstanceNameOutcomeCallable modifyInstanceNameCallable(const Model::ModifyInstanceNameRequest& request) const;
+			ModifyInstanceNodeNumOutcome modifyInstanceNodeNum(const Model::ModifyInstanceNodeNumRequest &request)const;
+			void modifyInstanceNodeNumAsync(const Model::ModifyInstanceNodeNumRequest& request, const ModifyInstanceNodeNumAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyInstanceNodeNumOutcomeCallable modifyInstanceNodeNumCallable(const Model::ModifyInstanceNodeNumRequest& request) const;
+			ModifyInstanceSpecOutcome modifyInstanceSpec(const Model::ModifyInstanceSpecRequest &request)const;
+			void modifyInstanceSpecAsync(const Model::ModifyInstanceSpecRequest& request, const ModifyInstanceSpecAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyInstanceSpecOutcomeCallable modifyInstanceSpecCallable(const Model::ModifyInstanceSpecRequest& request) const;
+			ModifyInstanceTagsOutcome modifyInstanceTags(const Model::ModifyInstanceTagsRequest &request)const;
+			void modifyInstanceTagsAsync(const Model::ModifyInstanceTagsRequest& request, const ModifyInstanceTagsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyInstanceTagsOutcomeCallable modifyInstanceTagsCallable(const Model::ModifyInstanceTagsRequest& request) const;
+			ModifyParametersOutcome modifyParameters(const Model::ModifyParametersRequest &request)const;
+			void modifyParametersAsync(const Model::ModifyParametersRequest& request, const ModifyParametersAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyParametersOutcomeCallable modifyParametersCallable(const Model::ModifyParametersRequest& 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;
+			ModifyTenantEncryptionOutcome modifyTenantEncryption(const Model::ModifyTenantEncryptionRequest &request)const;
+			void modifyTenantEncryptionAsync(const Model::ModifyTenantEncryptionRequest& request, const ModifyTenantEncryptionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyTenantEncryptionOutcomeCallable modifyTenantEncryptionCallable(const Model::ModifyTenantEncryptionRequest& request) const;
+			ModifyTenantPrimaryZoneOutcome modifyTenantPrimaryZone(const Model::ModifyTenantPrimaryZoneRequest &request)const;
+			void modifyTenantPrimaryZoneAsync(const Model::ModifyTenantPrimaryZoneRequest& request, const ModifyTenantPrimaryZoneAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyTenantPrimaryZoneOutcomeCallable modifyTenantPrimaryZoneCallable(const Model::ModifyTenantPrimaryZoneRequest& request) const;
+			ModifyTenantResourceOutcome modifyTenantResource(const Model::ModifyTenantResourceRequest &request)const;
+			void modifyTenantResourceAsync(const Model::ModifyTenantResourceRequest& request, const ModifyTenantResourceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyTenantResourceOutcomeCallable modifyTenantResourceCallable(const Model::ModifyTenantResourceRequest& request) const;
+			ModifyTenantSecurityIpGroupOutcome modifyTenantSecurityIpGroup(const Model::ModifyTenantSecurityIpGroupRequest &request)const;
+			void modifyTenantSecurityIpGroupAsync(const Model::ModifyTenantSecurityIpGroupRequest& request, const ModifyTenantSecurityIpGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyTenantSecurityIpGroupOutcomeCallable modifyTenantSecurityIpGroupCallable(const Model::ModifyTenantSecurityIpGroupRequest& request) const;
+			ModifyTenantTagsOutcome modifyTenantTags(const Model::ModifyTenantTagsRequest &request)const;
+			void modifyTenantTagsAsync(const Model::ModifyTenantTagsRequest& request, const ModifyTenantTagsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyTenantTagsOutcomeCallable modifyTenantTagsCallable(const Model::ModifyTenantTagsRequest& request) const;
+			ModifyTenantUserDescriptionOutcome modifyTenantUserDescription(const Model::ModifyTenantUserDescriptionRequest &request)const;
+			void modifyTenantUserDescriptionAsync(const Model::ModifyTenantUserDescriptionRequest& request, const ModifyTenantUserDescriptionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyTenantUserDescriptionOutcomeCallable modifyTenantUserDescriptionCallable(const Model::ModifyTenantUserDescriptionRequest& request) const;
+			ModifyTenantUserPasswordOutcome modifyTenantUserPassword(const Model::ModifyTenantUserPasswordRequest &request)const;
+			void modifyTenantUserPasswordAsync(const Model::ModifyTenantUserPasswordRequest& request, const ModifyTenantUserPasswordAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyTenantUserPasswordOutcomeCallable modifyTenantUserPasswordCallable(const Model::ModifyTenantUserPasswordRequest& request) const;
+			ModifyTenantUserRolesOutcome modifyTenantUserRoles(const Model::ModifyTenantUserRolesRequest &request)const;
+			void modifyTenantUserRolesAsync(const Model::ModifyTenantUserRolesRequest& request, const ModifyTenantUserRolesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyTenantUserRolesOutcomeCallable modifyTenantUserRolesCallable(const Model::ModifyTenantUserRolesRequest& request) const;
+			ModifyTenantUserStatusOutcome modifyTenantUserStatus(const Model::ModifyTenantUserStatusRequest &request)const;
+			void modifyTenantUserStatusAsync(const Model::ModifyTenantUserStatusRequest& request, const ModifyTenantUserStatusAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyTenantUserStatusOutcomeCallable modifyTenantUserStatusCallable(const Model::ModifyTenantUserStatusRequest& request) const;
+			ReleaseOmsOpenAPIProjectOutcome releaseOmsOpenAPIProject(const Model::ReleaseOmsOpenAPIProjectRequest &request)const;
+			void releaseOmsOpenAPIProjectAsync(const Model::ReleaseOmsOpenAPIProjectRequest& request, const ReleaseOmsOpenAPIProjectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ReleaseOmsOpenAPIProjectOutcomeCallable releaseOmsOpenAPIProjectCallable(const Model::ReleaseOmsOpenAPIProjectRequest& request) const;
+			ReleaseProjectOutcome releaseProject(const Model::ReleaseProjectRequest &request)const;
+			void releaseProjectAsync(const Model::ReleaseProjectRequest& request, const ReleaseProjectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ReleaseProjectOutcomeCallable releaseProjectCallable(const Model::ReleaseProjectRequest& request) const;
+			ResetOmsOpenAPIProjectOutcome resetOmsOpenAPIProject(const Model::ResetOmsOpenAPIProjectRequest &request)const;
+			void resetOmsOpenAPIProjectAsync(const Model::ResetOmsOpenAPIProjectRequest& request, const ResetOmsOpenAPIProjectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ResetOmsOpenAPIProjectOutcomeCallable resetOmsOpenAPIProjectCallable(const Model::ResetOmsOpenAPIProjectRequest& request) const;
+			ResumeOmsOpenAPIProjectOutcome resumeOmsOpenAPIProject(const Model::ResumeOmsOpenAPIProjectRequest &request)const;
+			void resumeOmsOpenAPIProjectAsync(const Model::ResumeOmsOpenAPIProjectRequest& request, const ResumeOmsOpenAPIProjectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ResumeOmsOpenAPIProjectOutcomeCallable resumeOmsOpenAPIProjectCallable(const Model::ResumeOmsOpenAPIProjectRequest& request) const;
+			ResumeProjectOutcome resumeProject(const Model::ResumeProjectRequest &request)const;
+			void resumeProjectAsync(const Model::ResumeProjectRequest& request, const ResumeProjectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ResumeProjectOutcomeCallable resumeProjectCallable(const Model::ResumeProjectRequest& request) const;
+			SearchOmsOpenAPIMonitorMetricOutcome searchOmsOpenAPIMonitorMetric(const Model::SearchOmsOpenAPIMonitorMetricRequest &request)const;
+			void searchOmsOpenAPIMonitorMetricAsync(const Model::SearchOmsOpenAPIMonitorMetricRequest& request, const SearchOmsOpenAPIMonitorMetricAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			SearchOmsOpenAPIMonitorMetricOutcomeCallable searchOmsOpenAPIMonitorMetricCallable(const Model::SearchOmsOpenAPIMonitorMetricRequest& request) const;
+			SearchOmsOpenAPIProjectsOutcome searchOmsOpenAPIProjects(const Model::SearchOmsOpenAPIProjectsRequest &request)const;
+			void searchOmsOpenAPIProjectsAsync(const Model::SearchOmsOpenAPIProjectsRequest& request, const SearchOmsOpenAPIProjectsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			SearchOmsOpenAPIProjectsOutcomeCallable searchOmsOpenAPIProjectsCallable(const Model::SearchOmsOpenAPIProjectsRequest& request) const;
+			StartOmsOpenAPIProjectOutcome startOmsOpenAPIProject(const Model::StartOmsOpenAPIProjectRequest &request)const;
+			void startOmsOpenAPIProjectAsync(const Model::StartOmsOpenAPIProjectRequest& request, const StartOmsOpenAPIProjectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			StartOmsOpenAPIProjectOutcomeCallable startOmsOpenAPIProjectCallable(const Model::StartOmsOpenAPIProjectRequest& request) const;
+			StartProjectOutcome startProject(const Model::StartProjectRequest &request)const;
+			void startProjectAsync(const Model::StartProjectRequest& request, const StartProjectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			StartProjectOutcomeCallable startProjectCallable(const Model::StartProjectRequest& request) const;
+			StartProjectsByLabelOutcome startProjectsByLabel(const Model::StartProjectsByLabelRequest &request)const;
+			void startProjectsByLabelAsync(const Model::StartProjectsByLabelRequest& request, const StartProjectsByLabelAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			StartProjectsByLabelOutcomeCallable startProjectsByLabelCallable(const Model::StartProjectsByLabelRequest& request) const;
+			StopOmsOpenAPIProjectOutcome stopOmsOpenAPIProject(const Model::StopOmsOpenAPIProjectRequest &request)const;
+			void stopOmsOpenAPIProjectAsync(const Model::StopOmsOpenAPIProjectRequest& request, const StopOmsOpenAPIProjectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			StopOmsOpenAPIProjectOutcomeCallable stopOmsOpenAPIProjectCallable(const Model::StopOmsOpenAPIProjectRequest& request) const;
+			StopProjectOutcome stopProject(const Model::StopProjectRequest &request)const;
+			void stopProjectAsync(const Model::StopProjectRequest& request, const StopProjectAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			StopProjectOutcomeCallable stopProjectCallable(const Model::StopProjectRequest& request) const;
+			StopProjectsByLabelOutcome stopProjectsByLabel(const Model::StopProjectsByLabelRequest &request)const;
+			void stopProjectsByLabelAsync(const Model::StopProjectsByLabelRequest& request, const StopProjectsByLabelAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			StopProjectsByLabelOutcomeCallable stopProjectsByLabelCallable(const Model::StopProjectsByLabelRequest& request) const;
+			SwitchoverInstanceOutcome switchoverInstance(const Model::SwitchoverInstanceRequest &request)const;
+			void switchoverInstanceAsync(const Model::SwitchoverInstanceRequest& request, const SwitchoverInstanceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			SwitchoverInstanceOutcomeCallable switchoverInstanceCallable(const Model::SwitchoverInstanceRequest& request) const;
+	
+		private:
+			std::shared_ptr<EndpointProvider> endpointProvider_;
+		};
+	}
+}
+
+#endif // !ALIBABACLOUD_OCEANBASEPRO_OCEANBASEPROCLIENT_H_

+ 32 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/OceanBaseProExport.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_OCEANBASEPRO_OCEANBASEPROEXPORT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_OCEANBASEPROEXPORT_H_
+
+#include <alibabacloud/core/Global.h>
+
+#if defined(ALIBABACLOUD_SHARED)
+#	if defined(ALIBABACLOUD_OCEANBASEPRO_LIBRARY)
+#		define ALIBABACLOUD_OCEANBASEPRO_EXPORT ALIBABACLOUD_DECL_EXPORT
+#	else
+#		define ALIBABACLOUD_OCEANBASEPRO_EXPORT ALIBABACLOUD_DECL_IMPORT
+#	endif
+#else
+#	define ALIBABACLOUD_OCEANBASEPRO_EXPORT
+#endif
+
+#endif // !ALIBABACLOUD_OCEANBASEPRO_OCEANBASEPROEXPORT_H_

+ 60 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateDatabaseRequest.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_OCEANBASEPRO_MODEL_CREATEDATABASEREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEDATABASEREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT CreateDatabaseRequest : public RpcServiceRequest {
+public:
+	CreateDatabaseRequest();
+	~CreateDatabaseRequest();
+	std::string getClientToken() const;
+	void setClientToken(const std::string &clientToken);
+	std::string getDescription() const;
+	void setDescription(const std::string &description);
+	std::string getEncoding() const;
+	void setEncoding(const std::string &encoding);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	std::string getDatabaseName() const;
+	void setDatabaseName(const std::string &databaseName);
+	std::string getTenantId() const;
+	void setTenantId(const std::string &tenantId);
+	std::string getCollation() const;
+	void setCollation(const std::string &collation);
+
+private:
+	std::string clientToken_;
+	std::string description_;
+	std::string encoding_;
+	std::string instanceId_;
+	std::string databaseName_;
+	std::string tenantId_;
+	std::string collation_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEDATABASEREQUEST_H_

+ 51 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateDatabaseResult.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_OCEANBASEPRO_MODEL_CREATEDATABASERESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEDATABASERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT CreateDatabaseResult : public ServiceResult
+			{
+			public:
+
+
+				CreateDatabaseResult();
+				explicit CreateDatabaseResult(const std::string &payload);
+				~CreateDatabaseResult();
+				std::string getDatabaseName()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string databaseName_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEDATABASERESULT_H_

+ 81 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateInstanceRequest.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEINSTANCEREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEINSTANCEREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT CreateInstanceRequest : public RpcServiceRequest {
+public:
+	CreateInstanceRequest();
+	~CreateInstanceRequest();
+	std::string getInstanceClass() const;
+	void setInstanceClass(const std::string &instanceClass);
+	std::string getResourceGroupId() const;
+	void setResourceGroupId(const std::string &resourceGroupId);
+	long getAutoRenewPeriod() const;
+	void setAutoRenewPeriod(long autoRenewPeriod);
+	long getPeriod() const;
+	void setPeriod(long period);
+	long getDiskSize() const;
+	void setDiskSize(long diskSize);
+	std::string getZones() const;
+	void setZones(const std::string &zones);
+	std::string getDiskType() const;
+	void setDiskType(const std::string &diskType);
+	std::string getObVersion() const;
+	void setObVersion(const std::string &obVersion);
+	std::string getPeriodUnit() const;
+	void setPeriodUnit(const std::string &periodUnit);
+	std::string getInstanceName() const;
+	void setInstanceName(const std::string &instanceName);
+	bool getAutoRenew() const;
+	void setAutoRenew(bool autoRenew);
+	std::string getSeries() const;
+	void setSeries(const std::string &series);
+	std::string getChargeType() const;
+	void setChargeType(const std::string &chargeType);
+	std::string getBid() const;
+	void setBid(const std::string &bid);
+
+private:
+	std::string instanceClass_;
+	std::string resourceGroupId_;
+	long autoRenewPeriod_;
+	long period_;
+	long diskSize_;
+	std::string zones_;
+	std::string diskType_;
+	std::string obVersion_;
+	std::string periodUnit_;
+	std::string instanceName_;
+	bool autoRenew_;
+	std::string series_;
+	std::string chargeType_;
+	std::string bid_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEINSTANCEREQUEST_H_

+ 57 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateInstanceResult.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_OCEANBASEPRO_MODEL_CREATEINSTANCERESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEINSTANCERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT CreateInstanceResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					std::string resourceGroupId;
+					std::string instanceId;
+					std::string orderId;
+				};
+
+
+				CreateInstanceResult();
+				explicit CreateInstanceResult(const std::string &payload);
+				~CreateInstanceResult();
+				Data getData()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				Data data_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEINSTANCERESULT_H_

+ 42 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateLabelRequest.h

@@ -0,0 +1,42 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_CREATELABELREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATELABELREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT CreateLabelRequest : public RpcServiceRequest {
+public:
+	CreateLabelRequest();
+	~CreateLabelRequest();
+	std::string getName() const;
+	void setName(const std::string &name);
+
+private:
+	std::string name_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATELABELREQUEST_H_

+ 49 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateLabelResult.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_OCEANBASEPRO_MODEL_CREATELABELRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATELABELRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT CreateLabelResult : public ServiceResult
+			{
+			public:
+
+
+				CreateLabelResult();
+				explicit CreateLabelResult(const std::string &payload);
+				~CreateLabelResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATELABELRESULT_H_

+ 72 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateMySqlDataSourceRequest.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_OCEANBASEPRO_MODEL_CREATEMYSQLDATASOURCEREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEMYSQLDATASOURCEREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT CreateMySqlDataSourceRequest : public RpcServiceRequest {
+public:
+	CreateMySqlDataSourceRequest();
+	~CreateMySqlDataSourceRequest();
+	std::string getSchema() const;
+	void setSchema(const std::string &schema);
+	std::string getDescription() const;
+	void setDescription(const std::string &description);
+	std::string getType() const;
+	void setType(const std::string &type);
+	std::string getPassword() const;
+	void setPassword(const std::string &password);
+	std::string getDgInstanceId() const;
+	void setDgInstanceId(const std::string &dgInstanceId);
+	std::string getIp() const;
+	void setIp(const std::string &ip);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	int getPort() const;
+	void setPort(int port);
+	std::string getVpcId() const;
+	void setVpcId(const std::string &vpcId);
+	std::string getName() const;
+	void setName(const std::string &name);
+	std::string getUserName() const;
+	void setUserName(const std::string &userName);
+
+private:
+	std::string schema_;
+	std::string description_;
+	std::string type_;
+	std::string password_;
+	std::string dgInstanceId_;
+	std::string ip_;
+	std::string instanceId_;
+	int port_;
+	std::string vpcId_;
+	std::string name_;
+	std::string userName_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEMYSQLDATASOURCEREQUEST_H_

+ 49 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateMySqlDataSourceResult.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_OCEANBASEPRO_MODEL_CREATEMYSQLDATASOURCERESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEMYSQLDATASOURCERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT CreateMySqlDataSourceResult : public ServiceResult
+			{
+			public:
+
+
+				CreateMySqlDataSourceResult();
+				explicit CreateMySqlDataSourceResult(const std::string &payload);
+				~CreateMySqlDataSourceResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEMYSQLDATASOURCERESULT_H_

+ 87 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateOceanBaseDataSourceRequest.h

@@ -0,0 +1,87 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_CREATEOCEANBASEDATASOURCEREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEOCEANBASEDATASOURCEREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT CreateOceanBaseDataSourceRequest : public RpcServiceRequest {
+public:
+	CreateOceanBaseDataSourceRequest();
+	~CreateOceanBaseDataSourceRequest();
+	std::string getCluster() const;
+	void setCluster(const std::string &cluster);
+	std::string getDrcUserName() const;
+	void setDrcUserName(const std::string &drcUserName);
+	std::string getLogProxyIp() const;
+	void setLogProxyIp(const std::string &logProxyIp);
+	std::string getDescription() const;
+	void setDescription(const std::string &description);
+	std::string getType() const;
+	void setType(const std::string &type);
+	std::string getPassword() const;
+	void setPassword(const std::string &password);
+	std::string getInnerDrcPassword() const;
+	void setInnerDrcPassword(const std::string &innerDrcPassword);
+	std::string getTenant() const;
+	void setTenant(const std::string &tenant);
+	std::string getConfigUrl() const;
+	void setConfigUrl(const std::string &configUrl);
+	std::string getIp() const;
+	void setIp(const std::string &ip);
+	int getPort() const;
+	void setPort(int port);
+	std::string getVpcId() const;
+	void setVpcId(const std::string &vpcId);
+	std::string getName() const;
+	void setName(const std::string &name);
+	std::string getDrcPassword() const;
+	void setDrcPassword(const std::string &drcPassword);
+	std::string getLogProxyPort() const;
+	void setLogProxyPort(const std::string &logProxyPort);
+	std::string getUserName() const;
+	void setUserName(const std::string &userName);
+
+private:
+	std::string cluster_;
+	std::string drcUserName_;
+	std::string logProxyIp_;
+	std::string description_;
+	std::string type_;
+	std::string password_;
+	std::string innerDrcPassword_;
+	std::string tenant_;
+	std::string configUrl_;
+	std::string ip_;
+	int port_;
+	std::string vpcId_;
+	std::string name_;
+	std::string drcPassword_;
+	std::string logProxyPort_;
+	std::string userName_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEOCEANBASEDATASOURCEREQUEST_H_

+ 49 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateOceanBaseDataSourceResult.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_OCEANBASEPRO_MODEL_CREATEOCEANBASEDATASOURCERESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEOCEANBASEDATASOURCERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT CreateOceanBaseDataSourceResult : public ServiceResult
+			{
+			public:
+
+
+				CreateOceanBaseDataSourceResult();
+				explicit CreateOceanBaseDataSourceResult(const std::string &payload);
+				~CreateOceanBaseDataSourceResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEOCEANBASEDATASOURCERESULT_H_

+ 75 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateOmsMysqlDataSourceRequest.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_OCEANBASEPRO_MODEL_CREATEOMSMYSQLDATASOURCEREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEOMSMYSQLDATASOURCEREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT CreateOmsMysqlDataSourceRequest : public RpcServiceRequest {
+public:
+	CreateOmsMysqlDataSourceRequest();
+	~CreateOmsMysqlDataSourceRequest();
+	std::string getSchema() const;
+	void setSchema(const std::string &schema);
+	std::string getDescription() const;
+	void setDescription(const std::string &description);
+	std::string getDgDatabaseId() const;
+	void setDgDatabaseId(const std::string &dgDatabaseId);
+	std::string getType() const;
+	void setType(const std::string &type);
+	std::string getPassword() const;
+	void setPassword(const std::string &password);
+	std::string getIp() const;
+	void setIp(const std::string &ip);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	std::string getPort() const;
+	void setPort(const std::string &port);
+	std::string getVpcId() const;
+	void setVpcId(const std::string &vpcId);
+	std::string getName() const;
+	void setName(const std::string &name);
+	std::string getBid() const;
+	void setBid(const std::string &bid);
+	std::string getUsername() const;
+	void setUsername(const std::string &username);
+
+private:
+	std::string schema_;
+	std::string description_;
+	std::string dgDatabaseId_;
+	std::string type_;
+	std::string password_;
+	std::string ip_;
+	std::string instanceId_;
+	std::string port_;
+	std::string vpcId_;
+	std::string name_;
+	std::string bid_;
+	std::string username_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEOMSMYSQLDATASOURCEREQUEST_H_

+ 55 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateOmsMysqlDataSourceResult.h

@@ -0,0 +1,55 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_CREATEOMSMYSQLDATASOURCERESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEOMSMYSQLDATASOURCERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT CreateOmsMysqlDataSourceResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					std::string endpointId;
+				};
+
+
+				CreateOmsMysqlDataSourceResult();
+				explicit CreateOmsMysqlDataSourceResult(const std::string &payload);
+				~CreateOmsMysqlDataSourceResult();
+				Data getData()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				Data data_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEOMSMYSQLDATASOURCERESULT_H_

+ 145 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateOmsOpenAPIProjectRequest.h

@@ -0,0 +1,145 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_CREATEOMSOPENAPIPROJECTREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEOMSOPENAPIPROJECTREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT CreateOmsOpenAPIProjectRequest : public RpcServiceRequest {
+public:
+	struct DestConfig {
+		long sendMsgTimeout;
+		long sequenceStartTimestamp;
+		int partition;
+		std::string serializerType;
+		std::string endpointType;
+		std::string endpointId;
+		bool sequenceEnable;
+		std::string partitionMode;
+		bool enableMsgTrace;
+		std::string topicType;
+		std::string msgTags;
+		std::string producerGroup;
+	};
+	struct TransferMapping {
+		std::string mode;
+		struct DatabasesItem {
+			std::string mappedName;
+			struct TablesItem {
+				std::string mappedName;
+				std::string string;
+				std::vector<std::string> filterColumns;
+				struct AdbTableSchema {
+					std::string string;
+					std::vector<std::string> primaryKeys;
+					std::string partitionStatement;
+					int partitionLifeCycle;
+					std::string string;
+					std::vector<std::string> distributedKeys;
+				};
+				AdbTableSchema adbTableSchema;
+				std::string tableId;
+				std::string whereClause;
+				std::string string;
+				std::vector<std::string> shardColumns;
+				std::string tableName;
+				std::string type;
+			};
+			TablesItem tablesItem;
+			std::vector<TablesItem> tables;
+			std::string databaseName;
+			std::string tenantName;
+			std::string databaseId;
+			std::string type;
+		};
+		DatabasesItem databasesItem;
+		std::vector<DatabasesItem> databases;
+	};
+	struct TransferStepConfig {
+		struct IncrSyncStepTransferConfig {
+			bool storeTransactionEnabled;
+			std::string string;
+			std::vector<std::string> recordTypeList;
+			std::string transferStepType;
+			long storeLogKeptHour;
+			long startTimestamp;
+		};
+		IncrSyncStepTransferConfig incrSyncStepTransferConfig;
+		bool enableFullSync;
+		bool enableIncrSync;
+		bool enableStructSync;
+	};
+	struct SourceConfig {
+		long sendMsgTimeout;
+		long sequenceStartTimestamp;
+		int partition;
+		std::string serializerType;
+		std::string endpointType;
+		std::string endpointId;
+		bool sequenceEnable;
+		std::string partitionMode;
+		bool enableMsgTrace;
+		std::string topicType;
+		std::string msgTags;
+		std::string producerGroup;
+	};
+	CreateOmsOpenAPIProjectRequest();
+	~CreateOmsOpenAPIProjectRequest();
+	DestConfig getDestConfig() const;
+	void setDestConfig(const DestConfig &destConfig);
+	int getPageNumber() const;
+	void setPageNumber(int pageNumber);
+	int getPageSize() const;
+	void setPageSize(int pageSize);
+	TransferMapping getTransferMapping() const;
+	void setTransferMapping(const TransferMapping &transferMapping);
+	TransferStepConfig getTransferStepConfig() const;
+	void setTransferStepConfig(const TransferStepConfig &transferStepConfig);
+	std::string getWorkerGradeId() const;
+	void setWorkerGradeId(const std::string &workerGradeId);
+	std::string getProjectName() const;
+	void setProjectName(const std::string &projectName);
+	SourceConfig getSourceConfig() const;
+	void setSourceConfig(const SourceConfig &sourceConfig);
+	std::string getBusinessName() const;
+	void setBusinessName(const std::string &businessName);
+	std::vector<std::string> getLabelIds() const;
+	void setLabelIds(const std::vector<std::string> &labelIds);
+
+private:
+	DestConfig destConfig_;
+	int pageNumber_;
+	int pageSize_;
+	TransferMapping transferMapping_;
+	TransferStepConfig transferStepConfig_;
+	std::string workerGradeId_;
+	std::string projectName_;
+	SourceConfig sourceConfig_;
+	std::string businessName_;
+	std::vector<std::string> labelIds_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEOMSOPENAPIPROJECTREQUEST_H_

+ 76 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateOmsOpenAPIProjectResult.h

@@ -0,0 +1,76 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_CREATEOMSOPENAPIPROJECTRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEOMSOPENAPIPROJECTRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT CreateOmsOpenAPIProjectResult : public ServiceResult
+			{
+			public:
+				struct ErrorDetail
+				{
+					std::string message;
+					std::string level;
+					std::string code;
+					std::string proposal;
+				};
+
+
+				CreateOmsOpenAPIProjectResult();
+				explicit CreateOmsOpenAPIProjectResult(const std::string &payload);
+				~CreateOmsOpenAPIProjectResult();
+				ErrorDetail getErrorDetail()const;
+				long getTotalCount()const;
+				std::string getMessage()const;
+				int getPageSize()const;
+				int getPageNumber()const;
+				std::string getData()const;
+				std::string getAdvice()const;
+				std::string getCode()const;
+				std::string getCost()const;
+				bool getSuccess()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				ErrorDetail errorDetail_;
+				long totalCount_;
+				std::string message_;
+				int pageSize_;
+				int pageNumber_;
+				std::string data_;
+				std::string advice_;
+				std::string code_;
+				std::string cost_;
+				bool success_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEOMSOPENAPIPROJECTRESULT_H_

+ 318 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateProjectRequest.h

@@ -0,0 +1,318 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_CREATEPROJECTREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEPROJECTREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT CreateProjectRequest : public RpcServiceRequest {
+public:
+	struct FullTransferConfig {
+		bool nonePkUkTruncateDstTable;
+		std::string fullVerifySpeedMode;
+		std::string fullTransferSpeedMode;
+		bool allowDestTableNotEmpty;
+	};
+	struct TransferMapping {
+		std::string mode;
+		struct DatabasesItem {
+			std::string mappedName;
+			struct SpecificViewsItem {
+				std::string mappedName;
+				std::string string;
+				std::vector<std::string> filterColumns;
+				struct AdbTableSchema {
+					std::string string;
+					std::vector<std::string> primaryKeys;
+					std::string partitionStatement;
+					std::string partitionLifeCycle;
+					std::string string;
+					std::vector<std::string> distributedKeys;
+				};
+				AdbTableSchema adbTableSchema;
+				std::string name;
+				std::string whereClause;
+				std::string id;
+				std::string string;
+				std::vector<std::string> shardColumns;
+			};
+			SpecificViewsItem specificViewsItem;
+			std::vector<SpecificViewsItem> specificViews;
+			struct TablesItem {
+				std::string mappedName;
+				std::string string;
+				std::vector<std::string> filterColumns;
+				struct AdbTableSchema {
+					std::string string;
+					std::vector<std::string> primaryKeys;
+					std::string partitionStatement;
+					std::string partitionLifeCycle;
+					std::string string;
+					std::vector<std::string> distributedKeys;
+				};
+				AdbTableSchema adbTableSchema;
+				std::string name;
+				std::string whereClause;
+				std::string id;
+				std::string string;
+				std::vector<std::string> shardColumns;
+			};
+			TablesItem tablesItem;
+			std::vector<TablesItem> tables;
+			std::string clusterName;
+			std::string name;
+			std::string tenantName;
+			std::string id;
+			struct SpecificTablesItem {
+				std::string mappedName;
+				std::string string;
+				std::vector<std::string> filterColumns;
+				struct AdbTableSchema {
+					std::string string;
+					std::vector<std::string> primaryKeys;
+					std::string partitionStatement;
+					std::string partitionLifeCycle;
+					std::string string;
+					std::vector<std::string> distributedKeys;
+				};
+				AdbTableSchema adbTableSchema;
+				std::string name;
+				std::string whereClause;
+				std::string id;
+				std::string string;
+				std::vector<std::string> shardColumns;
+			};
+			SpecificTablesItem specificTablesItem;
+			std::vector<SpecificTablesItem> specificTables;
+			struct ViewsItem {
+				std::string mappedName;
+				std::string string;
+				std::vector<std::string> filterColumns;
+				struct AdbTableSchema {
+					std::string string;
+					std::vector<std::string> primaryKeys;
+					std::string partitionStatement;
+					std::string partitionLifeCycle;
+					std::string string;
+					std::vector<std::string> distributedKeys;
+				};
+				AdbTableSchema adbTableSchema;
+				std::string name;
+				std::string whereClause;
+				std::string id;
+				std::string string;
+				std::vector<std::string> shardColumns;
+			};
+			ViewsItem viewsItem;
+			std::vector<ViewsItem> views;
+		};
+		DatabasesItem databasesItem;
+		std::vector<DatabasesItem> databases;
+		std::string string;
+		std::vector<std::string> tableAndViewBlackList;
+		struct DatabasesBlackItem {
+			std::string mappedName;
+			struct SpecificViewsItem {
+				std::string mappedName;
+				std::string string;
+				std::vector<std::string> filterColumns;
+				struct AdbTableSchema {
+					std::string string;
+					std::vector<std::string> primaryKeys;
+					std::string partitionStatement;
+					std::string partitionLifeCycle;
+					std::string string;
+					std::vector<std::string> distributedKeys;
+				};
+				AdbTableSchema adbTableSchema;
+				std::string name;
+				std::string whereClause;
+				std::string id;
+				std::string string;
+				std::vector<std::string> shardColumns;
+			};
+			SpecificViewsItem specificViewsItem;
+			std::vector<SpecificViewsItem> specificViews;
+			struct TablesItem {
+				std::string mappedName;
+				std::string string;
+				std::vector<std::string> filterColumns;
+				struct AdbTableSchema {
+					std::string string;
+					std::vector<std::string> primaryKeys;
+					std::string partitionStatement;
+					std::string partitionLifeCycle;
+					std::string string;
+					std::vector<std::string> distributedKeys;
+				};
+				AdbTableSchema adbTableSchema;
+				std::string name;
+				std::string whereClause;
+				std::string id;
+				std::string string;
+				std::vector<std::string> shardColumns;
+			};
+			TablesItem tablesItem;
+			std::vector<TablesItem> tables;
+			std::string clusterName;
+			std::string name;
+			std::string tenantName;
+			std::string id;
+			struct SpecificTablesItem {
+				std::string mappedName;
+				std::string string;
+				std::vector<std::string> filterColumns;
+				struct AdbTableSchema {
+					std::string string;
+					std::vector<std::string> primaryKeys;
+					std::string partitionStatement;
+					std::string partitionLifeCycle;
+					std::string string;
+					std::vector<std::string> distributedKeys;
+				};
+				AdbTableSchema adbTableSchema;
+				std::string name;
+				std::string whereClause;
+				std::string id;
+				std::string string;
+				std::vector<std::string> shardColumns;
+			};
+			SpecificTablesItem specificTablesItem;
+			std::vector<SpecificTablesItem> specificTables;
+			struct ViewsItem {
+				std::string mappedName;
+				std::string string;
+				std::vector<std::string> filterColumns;
+				struct AdbTableSchema {
+					std::string string;
+					std::vector<std::string> primaryKeys;
+					std::string partitionStatement;
+					std::string partitionLifeCycle;
+					std::string string;
+					std::vector<std::string> distributedKeys;
+				};
+				AdbTableSchema adbTableSchema;
+				std::string name;
+				std::string whereClause;
+				std::string id;
+				std::string string;
+				std::vector<std::string> shardColumns;
+			};
+			ViewsItem viewsItem;
+			std::vector<ViewsItem> views;
+		};
+		DatabasesBlackItem databasesBlackItem;
+		std::vector<DatabasesBlackItem> databasesBlack;
+		std::string string;
+		std::vector<std::string> tableAndViewWhiteList;
+	};
+	struct CommonTransferConfig {
+		long rocketMqSendMsgTimeout;
+		int mqPartition;
+		std::string tableCategory;
+		bool activeActive;
+		std::string datahubTopicType;
+		std::string rocketMqMsgTags;
+		bool rocketMqEnableMsgTrace;
+		std::string dataWorksBusinessName;
+		std::string rocketMqProducerGroup;
+		std::string mqSerializerType;
+		std::string mqPartitionMode;
+	};
+	struct StructTransferConfig {
+		std::string byteCharConvertStrategy;
+		bool deferIndexCreation;
+	};
+	struct IncrTransferConfig {
+		bool enableSequencingWithinTxn;
+		int storeLogKeptHour;
+		std::string startTimestamp;
+		std::string string;
+		std::vector<std::string> recordTypeWhiteList;
+		int incrSyncConcurrency;
+		bool enableIncrSyncStatistics;
+	};
+	CreateProjectRequest();
+	~CreateProjectRequest();
+	std::string getSinkEndpointId() const;
+	void setSinkEndpointId(const std::string &sinkEndpointId);
+	bool getUseOss() const;
+	void setUseOss(bool useOss);
+	std::string getOssKey() const;
+	void setOssKey(const std::string &ossKey);
+	std::string getSourceEndpointId() const;
+	void setSourceEndpointId(const std::string &sourceEndpointId);
+	std::string getType() const;
+	void setType(const std::string &type);
+	FullTransferConfig getFullTransferConfig() const;
+	void setFullTransferConfig(const FullTransferConfig &fullTransferConfig);
+	bool getEnableStructTransfer() const;
+	void setEnableStructTransfer(bool enableStructTransfer);
+	TransferMapping getTransferMapping() const;
+	void setTransferMapping(const TransferMapping &transferMapping);
+	std::string getWorkerGradeId() const;
+	void setWorkerGradeId(const std::string &workerGradeId);
+	CommonTransferConfig getCommonTransferConfig() const;
+	void setCommonTransferConfig(const CommonTransferConfig &commonTransferConfig);
+	StructTransferConfig getStructTransferConfig() const;
+	void setStructTransferConfig(const StructTransferConfig &structTransferConfig);
+	bool getEnableIncrTransfer() const;
+	void setEnableIncrTransfer(bool enableIncrTransfer);
+	bool getEnableFullTransfer() const;
+	void setEnableFullTransfer(bool enableFullTransfer);
+	bool getEnableFullVerify() const;
+	void setEnableFullVerify(bool enableFullVerify);
+	std::string getName() const;
+	void setName(const std::string &name);
+	std::vector<std::string> getLabelIds() const;
+	void setLabelIds(const std::vector<std::string> &labelIds);
+	IncrTransferConfig getIncrTransferConfig() const;
+	void setIncrTransferConfig(const IncrTransferConfig &incrTransferConfig);
+	bool getEnableReverseIncrTransfer() const;
+	void setEnableReverseIncrTransfer(bool enableReverseIncrTransfer);
+
+private:
+	std::string sinkEndpointId_;
+	bool useOss_;
+	std::string ossKey_;
+	std::string sourceEndpointId_;
+	std::string type_;
+	FullTransferConfig fullTransferConfig_;
+	bool enableStructTransfer_;
+	TransferMapping transferMapping_;
+	std::string workerGradeId_;
+	CommonTransferConfig commonTransferConfig_;
+	StructTransferConfig structTransferConfig_;
+	bool enableIncrTransfer_;
+	bool enableFullTransfer_;
+	bool enableFullVerify_;
+	std::string name_;
+	std::vector<std::string> labelIds_;
+	IncrTransferConfig incrTransferConfig_;
+	bool enableReverseIncrTransfer_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEPROJECTREQUEST_H_

+ 49 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateProjectResult.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_OCEANBASEPRO_MODEL_CREATEPROJECTRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEPROJECTRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT CreateProjectResult : public ServiceResult
+			{
+			public:
+
+
+				CreateProjectResult();
+				explicit CreateProjectResult(const std::string &payload);
+				~CreateProjectResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATEPROJECTRESULT_H_

+ 48 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateSecurityIpGroupRequest.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_OCEANBASEPRO_MODEL_CREATESECURITYIPGROUPREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATESECURITYIPGROUPREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT CreateSecurityIpGroupRequest : public RpcServiceRequest {
+public:
+	CreateSecurityIpGroupRequest();
+	~CreateSecurityIpGroupRequest();
+	std::string getSecurityIps() const;
+	void setSecurityIps(const std::string &securityIps);
+	std::string getSecurityIpGroupName() const;
+	void setSecurityIpGroupName(const std::string &securityIpGroupName);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+
+private:
+	std::string securityIps_;
+	std::string securityIpGroupName_;
+	std::string instanceId_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATESECURITYIPGROUPREQUEST_H_

+ 57 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateSecurityIpGroupResult.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_OCEANBASEPRO_MODEL_CREATESECURITYIPGROUPRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATESECURITYIPGROUPRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT CreateSecurityIpGroupResult : public ServiceResult
+			{
+			public:
+				struct SecurityIpGroup
+				{
+					std::string securityIps;
+					std::string instanceId;
+					std::string securityIpGroupName;
+				};
+
+
+				CreateSecurityIpGroupResult();
+				explicit CreateSecurityIpGroupResult(const std::string &payload);
+				~CreateSecurityIpGroupResult();
+				SecurityIpGroup getSecurityIpGroup()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				SecurityIpGroup securityIpGroup_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATESECURITYIPGROUPRESULT_H_

+ 54 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateTenantReadOnlyConnectionRequest.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_OCEANBASEPRO_MODEL_CREATETENANTREADONLYCONNECTIONREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATETENANTREADONLYCONNECTIONREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT CreateTenantReadOnlyConnectionRequest : public RpcServiceRequest {
+public:
+	CreateTenantReadOnlyConnectionRequest();
+	~CreateTenantReadOnlyConnectionRequest();
+	std::string getTenantId() const;
+	void setTenantId(const std::string &tenantId);
+	std::string getVSwitchId() const;
+	void setVSwitchId(const std::string &vSwitchId);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	std::string getVpcId() const;
+	void setVpcId(const std::string &vpcId);
+	std::string getZoneId() const;
+	void setZoneId(const std::string &zoneId);
+
+private:
+	std::string tenantId_;
+	std::string vSwitchId_;
+	std::string instanceId_;
+	std::string vpcId_;
+	std::string zoneId_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATETENANTREADONLYCONNECTIONREQUEST_H_

+ 49 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateTenantReadOnlyConnectionResult.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_OCEANBASEPRO_MODEL_CREATETENANTREADONLYCONNECTIONRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATETENANTREADONLYCONNECTIONRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT CreateTenantReadOnlyConnectionResult : public ServiceResult
+			{
+			public:
+
+
+				CreateTenantReadOnlyConnectionResult();
+				explicit CreateTenantReadOnlyConnectionResult(const std::string &payload);
+				~CreateTenantReadOnlyConnectionResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATETENANTREADONLYCONNECTIONRESULT_H_

+ 75 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateTenantRequest.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_OCEANBASEPRO_MODEL_CREATETENANTREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATETENANTREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT CreateTenantRequest : public RpcServiceRequest {
+public:
+	CreateTenantRequest();
+	~CreateTenantRequest();
+	std::string getCharset() const;
+	void setCharset(const std::string &charset);
+	std::string getTenantMode() const;
+	void setTenantMode(const std::string &tenantMode);
+	int getMemory() const;
+	void setMemory(int memory);
+	std::string getTimeZone() const;
+	void setTimeZone(const std::string &timeZone);
+	std::string getDescription() const;
+	void setDescription(const std::string &description);
+	std::string getUserVSwitchId() const;
+	void setUserVSwitchId(const std::string &userVSwitchId);
+	std::string getUserVpcId() const;
+	void setUserVpcId(const std::string &userVpcId);
+	int getCpu() const;
+	void setCpu(int cpu);
+	int getUnitNum() const;
+	void setUnitNum(int unitNum);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	std::string getPrimaryZone() const;
+	void setPrimaryZone(const std::string &primaryZone);
+	std::string getTenantName() const;
+	void setTenantName(const std::string &tenantName);
+
+private:
+	std::string charset_;
+	std::string tenantMode_;
+	int memory_;
+	std::string timeZone_;
+	std::string description_;
+	std::string userVSwitchId_;
+	std::string userVpcId_;
+	int cpu_;
+	int unitNum_;
+	std::string instanceId_;
+	std::string primaryZone_;
+	std::string tenantName_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATETENANTREQUEST_H_

+ 51 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateTenantResult.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_OCEANBASEPRO_MODEL_CREATETENANTRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATETENANTRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT CreateTenantResult : public ServiceResult
+			{
+			public:
+
+
+				CreateTenantResult();
+				explicit CreateTenantResult(const std::string &payload);
+				~CreateTenantResult();
+				std::string getTenantId()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string tenantId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATETENANTRESULT_H_

+ 51 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateTenantSecurityIpGroupRequest.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_OCEANBASEPRO_MODEL_CREATETENANTSECURITYIPGROUPREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATETENANTSECURITYIPGROUPREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT CreateTenantSecurityIpGroupRequest : public RpcServiceRequest {
+public:
+	CreateTenantSecurityIpGroupRequest();
+	~CreateTenantSecurityIpGroupRequest();
+	std::string getSecurityIps() const;
+	void setSecurityIps(const std::string &securityIps);
+	std::string getSecurityIpGroupName() const;
+	void setSecurityIpGroupName(const std::string &securityIpGroupName);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	std::string getTenantId() const;
+	void setTenantId(const std::string &tenantId);
+
+private:
+	std::string securityIps_;
+	std::string securityIpGroupName_;
+	std::string instanceId_;
+	std::string tenantId_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATETENANTSECURITYIPGROUPREQUEST_H_

+ 58 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateTenantSecurityIpGroupResult.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_OCEANBASEPRO_MODEL_CREATETENANTSECURITYIPGROUPRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATETENANTSECURITYIPGROUPRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT CreateTenantSecurityIpGroupResult : public ServiceResult
+			{
+			public:
+				struct SecurityIpGroup
+				{
+					std::string tenantId;
+					std::string securityIps;
+					std::string instanceId;
+					std::string securityIpGroupName;
+				};
+
+
+				CreateTenantSecurityIpGroupResult();
+				explicit CreateTenantSecurityIpGroupResult(const std::string &payload);
+				~CreateTenantSecurityIpGroupResult();
+				SecurityIpGroup getSecurityIpGroup()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				SecurityIpGroup securityIpGroup_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATETENANTSECURITYIPGROUPRESULT_H_

+ 63 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateTenantUserRequest.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_OCEANBASEPRO_MODEL_CREATETENANTUSERREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATETENANTUSERREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT CreateTenantUserRequest : public RpcServiceRequest {
+public:
+	CreateTenantUserRequest();
+	~CreateTenantUserRequest();
+	std::string getRoles() const;
+	void setRoles(const std::string &roles);
+	std::string getDescription() const;
+	void setDescription(const std::string &description);
+	std::string getUserPassword() const;
+	void setUserPassword(const std::string &userPassword);
+	std::string getTenantId() const;
+	void setTenantId(const std::string &tenantId);
+	std::string getEncryptionType() const;
+	void setEncryptionType(const std::string &encryptionType);
+	std::string getUserType() const;
+	void setUserType(const std::string &userType);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	std::string getUserName() const;
+	void setUserName(const std::string &userName);
+
+private:
+	std::string roles_;
+	std::string description_;
+	std::string userPassword_;
+	std::string tenantId_;
+	std::string encryptionType_;
+	std::string userType_;
+	std::string instanceId_;
+	std::string userName_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATETENANTUSERREQUEST_H_

+ 63 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/CreateTenantUserResult.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_OCEANBASEPRO_MODEL_CREATETENANTUSERRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATETENANTUSERRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT CreateTenantUserResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					struct RolesItem
+					{
+						std::string role;
+						std::string database;
+					};
+					std::string userName;
+					std::vector<Data::RolesItem> roles;
+					std::string userType;
+					std::string userStatus;
+				};
+
+
+				CreateTenantUserResult();
+				explicit CreateTenantUserResult(const std::string &payload);
+				~CreateTenantUserResult();
+				std::vector<Data> getTenantUser()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<Data> tenantUser_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_CREATETENANTUSERRESULT_H_

+ 48 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteDatabasesRequest.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_OCEANBASEPRO_MODEL_DELETEDATABASESREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETEDATABASESREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DeleteDatabasesRequest : public RpcServiceRequest {
+public:
+	DeleteDatabasesRequest();
+	~DeleteDatabasesRequest();
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	std::string getDatabaseNames() const;
+	void setDatabaseNames(const std::string &databaseNames);
+	std::string getTenantId() const;
+	void setTenantId(const std::string &tenantId);
+
+private:
+	std::string instanceId_;
+	std::string databaseNames_;
+	std::string tenantId_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETEDATABASESREQUEST_H_

+ 49 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteDatabasesResult.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_OCEANBASEPRO_MODEL_DELETEDATABASESRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETEDATABASESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DeleteDatabasesResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteDatabasesResult();
+				explicit DeleteDatabasesResult(const std::string &payload);
+				~DeleteDatabasesResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETEDATABASESRESULT_H_

+ 45 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteInstancesRequest.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETEINSTANCESREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETEINSTANCESREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DeleteInstancesRequest : public RpcServiceRequest {
+public:
+	DeleteInstancesRequest();
+	~DeleteInstancesRequest();
+	std::string getBackupRetainMode() const;
+	void setBackupRetainMode(const std::string &backupRetainMode);
+	std::string getInstanceIds() const;
+	void setInstanceIds(const std::string &instanceIds);
+
+private:
+	std::string backupRetainMode_;
+	std::string instanceIds_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETEINSTANCESREQUEST_H_

+ 49 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteInstancesResult.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_OCEANBASEPRO_MODEL_DELETEINSTANCESRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETEINSTANCESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DeleteInstancesResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteInstancesResult();
+				explicit DeleteInstancesResult(const std::string &payload);
+				~DeleteInstancesResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETEINSTANCESRESULT_H_

+ 51 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteOmsOpenAPIProjectRequest.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_OCEANBASEPRO_MODEL_DELETEOMSOPENAPIPROJECTREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETEOMSOPENAPIPROJECTREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DeleteOmsOpenAPIProjectRequest : public RpcServiceRequest {
+public:
+	DeleteOmsOpenAPIProjectRequest();
+	~DeleteOmsOpenAPIProjectRequest();
+	int getPageNumber() const;
+	void setPageNumber(int pageNumber);
+	int getPageSize() const;
+	void setPageSize(int pageSize);
+	std::string getWorkerGradeId() const;
+	void setWorkerGradeId(const std::string &workerGradeId);
+	std::string getProjectId() const;
+	void setProjectId(const std::string &projectId);
+
+private:
+	int pageNumber_;
+	int pageSize_;
+	std::string workerGradeId_;
+	std::string projectId_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETEOMSOPENAPIPROJECTREQUEST_H_

+ 76 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteOmsOpenAPIProjectResult.h

@@ -0,0 +1,76 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_DELETEOMSOPENAPIPROJECTRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETEOMSOPENAPIPROJECTRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DeleteOmsOpenAPIProjectResult : public ServiceResult
+			{
+			public:
+				struct ErrorDetail
+				{
+					std::string message;
+					std::string level;
+					std::string code;
+					std::string proposal;
+				};
+
+
+				DeleteOmsOpenAPIProjectResult();
+				explicit DeleteOmsOpenAPIProjectResult(const std::string &payload);
+				~DeleteOmsOpenAPIProjectResult();
+				ErrorDetail getErrorDetail()const;
+				long getTotalCount()const;
+				std::string getMessage()const;
+				int getPageSize()const;
+				int getPageNumber()const;
+				bool getData()const;
+				std::string getAdvice()const;
+				std::string getCode()const;
+				std::string getCost()const;
+				bool getSuccess()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				ErrorDetail errorDetail_;
+				long totalCount_;
+				std::string message_;
+				int pageSize_;
+				int pageNumber_;
+				bool data_;
+				std::string advice_;
+				std::string code_;
+				std::string cost_;
+				bool success_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETEOMSOPENAPIPROJECTRESULT_H_

+ 42 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteProjectRequest.h

@@ -0,0 +1,42 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_DELETEPROJECTREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETEPROJECTREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DeleteProjectRequest : public RpcServiceRequest {
+public:
+	DeleteProjectRequest();
+	~DeleteProjectRequest();
+	std::string getId() const;
+	void setId(const std::string &id);
+
+private:
+	std::string id_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETEPROJECTREQUEST_H_

+ 49 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteProjectResult.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_OCEANBASEPRO_MODEL_DELETEPROJECTRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETEPROJECTRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DeleteProjectResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteProjectResult();
+				explicit DeleteProjectResult(const std::string &payload);
+				~DeleteProjectResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETEPROJECTRESULT_H_

+ 45 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteSecurityIpGroupRequest.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETESECURITYIPGROUPREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETESECURITYIPGROUPREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DeleteSecurityIpGroupRequest : public RpcServiceRequest {
+public:
+	DeleteSecurityIpGroupRequest();
+	~DeleteSecurityIpGroupRequest();
+	std::string getSecurityIpGroupName() const;
+	void setSecurityIpGroupName(const std::string &securityIpGroupName);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+
+private:
+	std::string securityIpGroupName_;
+	std::string instanceId_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETESECURITYIPGROUPREQUEST_H_

+ 56 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteSecurityIpGroupResult.h

@@ -0,0 +1,56 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_DELETESECURITYIPGROUPRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETESECURITYIPGROUPRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DeleteSecurityIpGroupResult : public ServiceResult
+			{
+			public:
+				struct SecurityIpGroup
+				{
+					std::string instanceId;
+					std::string securityIpGroupName;
+				};
+
+
+				DeleteSecurityIpGroupResult();
+				explicit DeleteSecurityIpGroupResult(const std::string &payload);
+				~DeleteSecurityIpGroupResult();
+				SecurityIpGroup getSecurityIpGroup()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				SecurityIpGroup securityIpGroup_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETESECURITYIPGROUPRESULT_H_

+ 48 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteTenantSecurityIpGroupRequest.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_OCEANBASEPRO_MODEL_DELETETENANTSECURITYIPGROUPREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETETENANTSECURITYIPGROUPREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DeleteTenantSecurityIpGroupRequest : public RpcServiceRequest {
+public:
+	DeleteTenantSecurityIpGroupRequest();
+	~DeleteTenantSecurityIpGroupRequest();
+	std::string getSecurityIpGroupName() const;
+	void setSecurityIpGroupName(const std::string &securityIpGroupName);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	std::string getTenantId() const;
+	void setTenantId(const std::string &tenantId);
+
+private:
+	std::string securityIpGroupName_;
+	std::string instanceId_;
+	std::string tenantId_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETETENANTSECURITYIPGROUPREQUEST_H_

+ 57 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteTenantSecurityIpGroupResult.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_OCEANBASEPRO_MODEL_DELETETENANTSECURITYIPGROUPRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETETENANTSECURITYIPGROUPRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DeleteTenantSecurityIpGroupResult : public ServiceResult
+			{
+			public:
+				struct SecurityIpGroup
+				{
+					std::string tenantId;
+					std::string instanceId;
+					std::string securityIpGroupName;
+				};
+
+
+				DeleteTenantSecurityIpGroupResult();
+				explicit DeleteTenantSecurityIpGroupResult(const std::string &payload);
+				~DeleteTenantSecurityIpGroupResult();
+				SecurityIpGroup getSecurityIpGroup()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				SecurityIpGroup securityIpGroup_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETETENANTSECURITYIPGROUPRESULT_H_

+ 48 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteTenantUsersRequest.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_OCEANBASEPRO_MODEL_DELETETENANTUSERSREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETETENANTUSERSREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DeleteTenantUsersRequest : public RpcServiceRequest {
+public:
+	DeleteTenantUsersRequest();
+	~DeleteTenantUsersRequest();
+	std::string getUsers() const;
+	void setUsers(const std::string &users);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	std::string getTenantId() const;
+	void setTenantId(const std::string &tenantId);
+
+private:
+	std::string users_;
+	std::string instanceId_;
+	std::string tenantId_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETETENANTUSERSREQUEST_H_

+ 49 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteTenantUsersResult.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_OCEANBASEPRO_MODEL_DELETETENANTUSERSRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETETENANTUSERSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DeleteTenantUsersResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteTenantUsersResult();
+				explicit DeleteTenantUsersResult(const std::string &payload);
+				~DeleteTenantUsersResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETETENANTUSERSRESULT_H_

+ 45 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteTenantsRequest.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETETENANTSREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETETENANTSREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DeleteTenantsRequest : public RpcServiceRequest {
+public:
+	DeleteTenantsRequest();
+	~DeleteTenantsRequest();
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	std::string getTenantIds() const;
+	void setTenantIds(const std::string &tenantIds);
+
+private:
+	std::string instanceId_;
+	std::string tenantIds_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETETENANTSREQUEST_H_

+ 51 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DeleteTenantsResult.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_OCEANBASEPRO_MODEL_DELETETENANTSRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETETENANTSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DeleteTenantsResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteTenantsResult();
+				explicit DeleteTenantsResult(const std::string &payload);
+				~DeleteTenantsResult();
+				std::vector<std::string> getTenantIds()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<std::string> tenantIds_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DELETETENANTSRESULT_H_

+ 90 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeAnomalySQLListRequest.h

@@ -0,0 +1,90 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_DESCRIBEANOMALYSQLLISTREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEANOMALYSQLLISTREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeAnomalySQLListRequest : public RpcServiceRequest {
+public:
+	DescribeAnomalySQLListRequest();
+	~DescribeAnomalySQLListRequest();
+	std::string getStartTime() const;
+	void setStartTime(const std::string &startTime);
+	int getPageNumber() const;
+	void setPageNumber(int pageNumber);
+	std::string getSearchRule() const;
+	void setSearchRule(const std::string &searchRule);
+	std::string getTenantId() const;
+	void setTenantId(const std::string &tenantId);
+	int getPageSize() const;
+	void setPageSize(int pageSize);
+	std::string getSearchParameter() const;
+	void setSearchParameter(const std::string &searchParameter);
+	std::string getSortOrder() const;
+	void setSortOrder(const std::string &sortOrder);
+	std::string getSearchValue() const;
+	void setSearchValue(const std::string &searchValue);
+	std::string getSQLId() const;
+	void setSQLId(const std::string &sQLId);
+	std::string getFilterCondition() const;
+	void setFilterCondition(const std::string &filterCondition);
+	std::string getEndTime() const;
+	void setEndTime(const std::string &endTime);
+	std::string getNodeIp() const;
+	void setNodeIp(const std::string &nodeIp);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	std::string getDbName() const;
+	void setDbName(const std::string &dbName);
+	std::string getSearchKeyWord() const;
+	void setSearchKeyWord(const std::string &searchKeyWord);
+	std::string getSortColumn() const;
+	void setSortColumn(const std::string &sortColumn);
+	std::string getAcceptLanguage() const;
+	void setAcceptLanguage(const std::string &acceptLanguage);
+
+private:
+	std::string startTime_;
+	int pageNumber_;
+	std::string searchRule_;
+	std::string tenantId_;
+	int pageSize_;
+	std::string searchParameter_;
+	std::string sortOrder_;
+	std::string searchValue_;
+	std::string sQLId_;
+	std::string filterCondition_;
+	std::string endTime_;
+	std::string nodeIp_;
+	std::string instanceId_;
+	std::string dbName_;
+	std::string searchKeyWord_;
+	std::string sortColumn_;
+	std::string acceptLanguage_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEANOMALYSQLLISTREQUEST_H_

+ 68 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeAnomalySQLListResult.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_OCEANBASEPRO_MODEL_DESCRIBEANOMALYSQLLISTRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEANOMALYSQLLISTRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeAnomalySQLListResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					std::string suggestion;
+					long executions;
+					std::string diagnosisRule;
+					std::string userName;
+					std::string requestTimeUTCString;
+					std::string dbName;
+					float requestTime;
+					std::string diagnosis;
+					float cpuTime;
+					long key;
+					std::string sQLId;
+					std::string sQLText;
+				};
+
+
+				DescribeAnomalySQLListResult();
+				explicit DescribeAnomalySQLListResult(const std::string &payload);
+				~DescribeAnomalySQLListResult();
+				long getTotalCount()const;
+				std::vector<Data> getAnomalySQLList()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				long totalCount_;
+				std::vector<Data> anomalySQLList_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEANOMALYSQLLISTRESULT_H_

+ 48 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeAvailableCpuResourceRequest.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_OCEANBASEPRO_MODEL_DESCRIBEAVAILABLECPURESOURCEREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEAVAILABLECPURESOURCEREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeAvailableCpuResourceRequest : public RpcServiceRequest {
+public:
+	DescribeAvailableCpuResourceRequest();
+	~DescribeAvailableCpuResourceRequest();
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	std::string getModifyType() const;
+	void setModifyType(const std::string &modifyType);
+	std::string getTenantId() const;
+	void setTenantId(const std::string &tenantId);
+
+private:
+	std::string instanceId_;
+	std::string modifyType_;
+	std::string tenantId_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEAVAILABLECPURESOURCEREQUEST_H_

+ 57 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeAvailableCpuResourceResult.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_OCEANBASEPRO_MODEL_DESCRIBEAVAILABLECPURESOURCERESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEAVAILABLECPURESOURCERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeAvailableCpuResourceResult : public ServiceResult
+			{
+			public:
+				struct DataItem
+				{
+					long unitNum;
+					long maxCpu;
+					long minCpu;
+				};
+
+
+				DescribeAvailableCpuResourceResult();
+				explicit DescribeAvailableCpuResourceResult(const std::string &payload);
+				~DescribeAvailableCpuResourceResult();
+				std::vector<DataItem> getData()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<DataItem> data_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEAVAILABLECPURESOURCERESULT_H_

+ 51 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeAvailableMemResourceRequest.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_OCEANBASEPRO_MODEL_DESCRIBEAVAILABLEMEMRESOURCEREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEAVAILABLEMEMRESOURCEREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeAvailableMemResourceRequest : public RpcServiceRequest {
+public:
+	DescribeAvailableMemResourceRequest();
+	~DescribeAvailableMemResourceRequest();
+	long getUnitNum() const;
+	void setUnitNum(long unitNum);
+	long getCpuNum() const;
+	void setCpuNum(long cpuNum);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	std::string getTenantId() const;
+	void setTenantId(const std::string &tenantId);
+
+private:
+	long unitNum_;
+	long cpuNum_;
+	std::string instanceId_;
+	std::string tenantId_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEAVAILABLEMEMRESOURCEREQUEST_H_

+ 57 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeAvailableMemResourceResult.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_OCEANBASEPRO_MODEL_DESCRIBEAVAILABLEMEMRESOURCERESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEAVAILABLEMEMRESOURCERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeAvailableMemResourceResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					long maxMem;
+					long usedMem;
+					long minMem;
+				};
+
+
+				DescribeAvailableMemResourceResult();
+				explicit DescribeAvailableMemResourceResult(const std::string &payload);
+				~DescribeAvailableMemResourceResult();
+				Data getData()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				Data data_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEAVAILABLEMEMRESOURCERESULT_H_

+ 48 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeCharsetRequest.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_OCEANBASEPRO_MODEL_DESCRIBECHARSETREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBECHARSETREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeCharsetRequest : public RpcServiceRequest {
+public:
+	DescribeCharsetRequest();
+	~DescribeCharsetRequest();
+	std::string getTenantMode() const;
+	void setTenantMode(const std::string &tenantMode);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	std::string getSeries() const;
+	void setSeries(const std::string &series);
+
+private:
+	std::string tenantMode_;
+	std::string instanceId_;
+	std::string series_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBECHARSETREQUEST_H_

+ 56 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeCharsetResult.h

@@ -0,0 +1,56 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_DESCRIBECHARSETRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBECHARSETRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeCharsetResult : public ServiceResult
+			{
+			public:
+				struct CharsetItem
+				{
+					std::vector<std::string> collations;
+					std::string charset;
+				};
+
+
+				DescribeCharsetResult();
+				explicit DescribeCharsetResult(const std::string &payload);
+				~DescribeCharsetResult();
+				std::vector<CharsetItem> getCharset()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<CharsetItem> charset_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBECHARSETRESULT_H_

+ 57 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeDatabasesRequest.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_OCEANBASEPRO_MODEL_DESCRIBEDATABASESREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEDATABASESREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeDatabasesRequest : public RpcServiceRequest {
+public:
+	DescribeDatabasesRequest();
+	~DescribeDatabasesRequest();
+	std::string getSearchKey() const;
+	void setSearchKey(const std::string &searchKey);
+	int getPageNumber() const;
+	void setPageNumber(int pageNumber);
+	std::string getDatabaseName() const;
+	void setDatabaseName(const std::string &databaseName);
+	bool getWithTables() const;
+	void setWithTables(bool withTables);
+	std::string getTenantId() const;
+	void setTenantId(const std::string &tenantId);
+	int getPageSize() const;
+	void setPageSize(int pageSize);
+
+private:
+	std::string searchKey_;
+	int pageNumber_;
+	std::string databaseName_;
+	bool withTables_;
+	std::string tenantId_;
+	int pageSize_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEDATABASESREQUEST_H_

+ 80 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeDatabasesResult.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_OCEANBASEPRO_MODEL_DESCRIBEDATABASESRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEDATABASESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeDatabasesResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					struct UsersItem
+					{
+						std::string role;
+						std::string userName;
+						std::string privileges;
+						std::string userType;
+					};
+					struct TablesItem
+					{
+						std::string tableName;
+					};
+					std::string status;
+					std::string description;
+					std::string instanceId;
+					std::string createTime;
+					std::string databaseName;
+					std::string encoding;
+					std::vector<Data::UsersItem> users;
+					std::string collation;
+					std::string dbType;
+					std::string tenantId;
+					double requiredSize;
+					double dataSize;
+					std::vector<Data::TablesItem> tables;
+				};
+
+
+				DescribeDatabasesResult();
+				explicit DescribeDatabasesResult(const std::string &payload);
+				~DescribeDatabasesResult();
+				int getTotalCount()const;
+				std::vector<Data> getDatabases()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				int totalCount_;
+				std::vector<Data> databases_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEDATABASESRESULT_H_

+ 42 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceCreatableZoneRequest.h

@@ -0,0 +1,42 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_DESCRIBEINSTANCECREATABLEZONEREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCECREATABLEZONEREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeInstanceCreatableZoneRequest : public RpcServiceRequest {
+public:
+	DescribeInstanceCreatableZoneRequest();
+	~DescribeInstanceCreatableZoneRequest();
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+
+private:
+	std::string instanceId_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCECREATABLEZONEREQUEST_H_

+ 56 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceCreatableZoneResult.h

@@ -0,0 +1,56 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_DESCRIBEINSTANCECREATABLEZONERESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCECREATABLEZONERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeInstanceCreatableZoneResult : public ServiceResult
+			{
+			public:
+				struct ZoneListItem
+				{
+					bool isInCluster;
+					std::string zone;
+				};
+
+
+				DescribeInstanceCreatableZoneResult();
+				explicit DescribeInstanceCreatableZoneResult(const std::string &payload);
+				~DescribeInstanceCreatableZoneResult();
+				std::vector<ZoneListItem> getZoneList()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<ZoneListItem> zoneList_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCECREATABLEZONERESULT_H_

+ 45 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceRequest.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCEREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCEREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeInstanceRequest : public RpcServiceRequest {
+public:
+	DescribeInstanceRequest();
+	~DescribeInstanceRequest();
+	int getPageNumber() const;
+	void setPageNumber(int pageNumber);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+
+private:
+	int pageNumber_;
+	std::string instanceId_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCEREQUEST_H_

+ 146 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceResult.h

@@ -0,0 +1,146 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_DESCRIBEINSTANCERESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeInstanceResult : public ServiceResult
+			{
+			public:
+				struct Instance
+				{
+					struct Resource
+					{
+						struct Cpu
+						{
+							long unitCpu;
+							long totalCpu;
+							long usedCpu;
+							long originalTotalCpu;
+						};
+						struct Memory
+						{
+							long usedMemory;
+							long unitMemory;
+							long totalMemory;
+							long originalTotalMemory;
+						};
+						struct DiskSize
+						{
+							double dataUsedSize;
+							long originalTotalDiskSize;
+							long usedDiskSize;
+							std::vector<std::string> maxDiskUsedObServer;
+							double maxDiskUsedPercent;
+							double maxDiskSize;
+							long unitDiskSize;
+							long totalDiskSize;
+						};
+						struct LogDiskSize
+						{
+							long unitDiskSize;
+							long totalDiskSize;
+						};
+						struct CapacityUnit
+						{
+							std::string usedCapacityUnit;
+							int maxCapacityUnit;
+							int minCapacityUnit;
+						};
+						CapacityUnit capacityUnit;
+						long unitCount;
+						Memory memory;
+						DiskSize diskSize;
+						Cpu cpu;
+						LogDiskSize logDiskSize;
+					};
+					struct TenantCreatable
+					{
+						bool enableCreateTenant;
+						std::string disableCreateTenantReason;
+					};
+					struct DataDiskAutoScaleConfig
+					{
+						long upperbound;
+						long scaleStepInNormal;
+						long upperMergeThreshold;
+						long scaleStepInMerge;
+						long maxDiskSize;
+						long upperThreshold;
+						bool autoScale;
+					};
+					std::string deployType;
+					std::string nodeNum;
+					bool enableIsolationOptimization;
+					std::string dataMergeTime;
+					bool inTempCapacityStatus;
+					bool isTrustEcs;
+					bool isLatestObVersion;
+					std::vector<std::string> availableZones;
+					std::vector<std::string> zones;
+					std::string diskType;
+					std::string deployMode;
+					std::string version;
+					bool isolationOptimization;
+					std::string instanceRole;
+					std::string maintainTime;
+					std::string obRpmVersion;
+					std::string replicaMode;
+					std::string status;
+					bool autoUpgradeObVersion;
+					std::string instanceId;
+					std::string createTime;
+					Resource resource;
+					std::string instanceClass;
+					std::string payType;
+					bool dataDiskAutoScale;
+					std::string instanceName;
+					std::string series;
+					DataDiskAutoScaleConfig dataDiskAutoScaleConfig;
+					bool enableUpgradeLogDisk;
+					bool autoRenewal;
+					TenantCreatable tenantCreatable;
+					std::string expireTime;
+				};
+
+
+				DescribeInstanceResult();
+				explicit DescribeInstanceResult(const std::string &payload);
+				~DescribeInstanceResult();
+				Instance getInstance()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				Instance instance_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCERESULT_H_

+ 42 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceSSLRequest.h

@@ -0,0 +1,42 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_DESCRIBEINSTANCESSLREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCESSLREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeInstanceSSLRequest : public RpcServiceRequest {
+public:
+	DescribeInstanceSSLRequest();
+	~DescribeInstanceSSLRequest();
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+
+private:
+	std::string instanceId_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCESSLREQUEST_H_

+ 61 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceSSLResult.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_OCEANBASEPRO_MODEL_DESCRIBEINSTANCESSLRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCESSLRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeInstanceSSLResult : public ServiceResult
+			{
+			public:
+				struct InstanceSSL
+				{
+					std::string status;
+					std::string forceSSL;
+					std::string enableSSL;
+					std::string validPeriod;
+					std::string instanceId;
+					std::string caUrl;
+					bool forceSSLSupport;
+				};
+
+
+				DescribeInstanceSSLResult();
+				explicit DescribeInstanceSSLResult(const std::string &payload);
+				~DescribeInstanceSSLResult();
+				InstanceSSL getInstanceSSL()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				InstanceSSL instanceSSL_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCESSLRESULT_H_

+ 42 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceSecurityConfigsRequest.h

@@ -0,0 +1,42 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_DESCRIBEINSTANCESECURITYCONFIGSREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCESECURITYCONFIGSREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeInstanceSecurityConfigsRequest : public RpcServiceRequest {
+public:
+	DescribeInstanceSecurityConfigsRequest();
+	~DescribeInstanceSecurityConfigsRequest();
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+
+private:
+	std::string instanceId_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCESECURITYCONFIGSREQUEST_H_

+ 65 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceSecurityConfigsResult.h

@@ -0,0 +1,65 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_DESCRIBEINSTANCESECURITYCONFIGSRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCESECURITYCONFIGSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeInstanceSecurityConfigsResult : public ServiceResult
+			{
+			public:
+				struct InstanceSecurityConfigs
+				{
+					struct SecurityConfigsItem
+					{
+						std::string configName;
+						std::string riskDescription;
+						bool risk;
+						std::string configDescription;
+						std::string configGroup;
+					};
+					std::vector<SecurityConfigsItem> securityConfigs;
+					int totalCheckCount;
+					int totalRiskCount;
+				};
+
+
+				DescribeInstanceSecurityConfigsResult();
+				explicit DescribeInstanceSecurityConfigsResult(const std::string &payload);
+				~DescribeInstanceSecurityConfigsResult();
+				InstanceSecurityConfigs getInstanceSecurityConfigs()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				InstanceSecurityConfigs instanceSecurityConfigs_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCESECURITYCONFIGSRESULT_H_

+ 45 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceTagsRequest.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCETAGSREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCETAGSREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeInstanceTagsRequest : public RpcServiceRequest {
+public:
+	DescribeInstanceTagsRequest();
+	~DescribeInstanceTagsRequest();
+	std::string getTags() const;
+	void setTags(const std::string &tags);
+	std::string getInstanceIds() const;
+	void setInstanceIds(const std::string &instanceIds);
+
+private:
+	std::string tags_;
+	std::string instanceIds_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCETAGSREQUEST_H_

+ 57 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceTagsResult.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_OCEANBASEPRO_MODEL_DESCRIBEINSTANCETAGSRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCETAGSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeInstanceTagsResult : public ServiceResult
+			{
+			public:
+				struct TagResourcesItem
+				{
+					std::string resourceId;
+					std::string resourceType;
+					std::string tag;
+				};
+
+
+				DescribeInstanceTagsResult();
+				explicit DescribeInstanceTagsResult(const std::string &payload);
+				~DescribeInstanceTagsResult();
+				std::vector<TagResourcesItem> getTagResources()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<TagResourcesItem> tagResources_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCETAGSRESULT_H_

+ 42 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceTenantModesRequest.h

@@ -0,0 +1,42 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_DESCRIBEINSTANCETENANTMODESREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCETENANTMODESREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeInstanceTenantModesRequest : public RpcServiceRequest {
+public:
+	DescribeInstanceTenantModesRequest();
+	~DescribeInstanceTenantModesRequest();
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+
+private:
+	std::string instanceId_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCETENANTMODESREQUEST_H_

+ 51 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceTenantModesResult.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_OCEANBASEPRO_MODEL_DESCRIBEINSTANCETENANTMODESRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCETENANTMODESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeInstanceTenantModesResult : public ServiceResult
+			{
+			public:
+
+
+				DescribeInstanceTenantModesResult();
+				explicit DescribeInstanceTenantModesResult(const std::string &payload);
+				~DescribeInstanceTenantModesResult();
+				std::vector<std::string> getInstanceModes()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<std::string> instanceModes_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCETENANTMODESRESULT_H_

+ 45 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceTopologyRequest.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCETOPOLOGYREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCETOPOLOGYREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeInstanceTopologyRequest : public RpcServiceRequest {
+public:
+	DescribeInstanceTopologyRequest();
+	~DescribeInstanceTopologyRequest();
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	std::string getReplicaTypes() const;
+	void setReplicaTypes(const std::string &replicaTypes);
+
+private:
+	std::string instanceId_;
+	std::string replicaTypes_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCETOPOLOGYREQUEST_H_

+ 133 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstanceTopologyResult.h

@@ -0,0 +1,133 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_DESCRIBEINSTANCETOPOLOGYRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCETOPOLOGYRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeInstanceTopologyResult : public ServiceResult
+			{
+			public:
+				struct InstanceTopology
+				{
+					struct TenantsItem
+					{
+						struct TenantZonesItem
+						{
+							struct UnitsItem
+							{
+								float unitCpu;
+								long unitDataSize;
+								std::string unitId;
+								float unitMemory;
+								bool enableMigrateUnit;
+								bool enableCancelMigrateUnit;
+								std::string nodeId;
+								std::string unitStatus;
+								bool manualMigrate;
+							};
+							std::string tenantZoneRole;
+							std::string isPrimaryTenantZone;
+							std::string tenantZoneId;
+							std::vector<TenantZonesItem::UnitsItem> units;
+						};
+						std::string primaryZoneDeployType;
+						std::string tenantId;
+						std::string tenantStatus;
+						std::string tenantName;
+						float tenantMemory;
+						std::vector<TenantsItem::TenantZonesItem> tenantZones;
+						int tenantUnitNum;
+						float tenantCpu;
+						std::string tenantDeployType;
+						std::string tenantMode;
+					};
+					struct ZonesItem
+					{
+						struct ZoneResource
+						{
+							struct DiskSize1
+							{
+								std::vector<std::string> maxDiskUsedObServer;
+								double maxDiskUsedPercent;
+							};
+							DiskSize1 diskSize1;
+						};
+						struct NodesItem
+						{
+							struct NodeResourceItem
+							{
+								struct Cpu
+								{
+									int totalCpu;
+									float usedCpu;
+								};
+								struct Memory
+								{
+									float usedMemory;
+									long totalMemory;
+								};
+								struct DiskSize
+								{
+									double usedDiskSize;
+									double totalDiskSize;
+								};
+								Memory memory;
+								DiskSize diskSize;
+								Cpu cpu;
+							};
+							std::vector<NodesItem::NodeResourceItem> nodeResource;
+							std::string nodeId;
+							std::string nodeStatus;
+							long nodeCopyId;
+						};
+						std::string zoneId;
+						ZoneResource zoneResource;
+						std::string region;
+						std::string zoneDisk;
+						std::vector<ZonesItem::NodesItem> nodes;
+					};
+					std::vector<TenantsItem> tenants;
+					std::vector<ZonesItem> zones;
+				};
+
+
+				DescribeInstanceTopologyResult();
+				explicit DescribeInstanceTopologyResult(const std::string &payload);
+				~DescribeInstanceTopologyResult();
+				InstanceTopology getInstanceTopology()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				InstanceTopology instanceTopology_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCETOPOLOGYRESULT_H_

+ 57 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstancesRequest.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_OCEANBASEPRO_MODEL_DESCRIBEINSTANCESREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCESREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeInstancesRequest : public RpcServiceRequest {
+public:
+	DescribeInstancesRequest();
+	~DescribeInstancesRequest();
+	std::string getSearchKey() const;
+	void setSearchKey(const std::string &searchKey);
+	int getPageNumber() const;
+	void setPageNumber(int pageNumber);
+	std::string getResourceGroupId() const;
+	void setResourceGroupId(const std::string &resourceGroupId);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	std::string getInstanceName() const;
+	void setInstanceName(const std::string &instanceName);
+	int getPageSize() const;
+	void setPageSize(int pageSize);
+
+private:
+	std::string searchKey_;
+	int pageNumber_;
+	std::string resourceGroupId_;
+	std::string instanceId_;
+	std::string instanceName_;
+	int pageSize_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCESREQUEST_H_

+ 129 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeInstancesResult.h

@@ -0,0 +1,129 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_DESCRIBEINSTANCESRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeInstancesResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					struct Resource
+					{
+						struct Cpu
+						{
+							long unitCpu;
+							long totalCpu;
+							long usedCpu;
+							long originalTotalCpu;
+						};
+						struct Memory
+						{
+							long usedMemory;
+							long unitMemory;
+							long totalMemory;
+							long originalTotalMemory;
+						};
+						struct DiskSize
+						{
+							long originalTotalDiskSize;
+							long usedDiskSize;
+							long unitDiskSize;
+							long totalDiskSize;
+						};
+						struct CapacityUnit
+						{
+							int usedCapacityUnit;
+							int maxCapacityUnit;
+							int minCapacityUnit;
+						};
+						CapacityUnit capacityUnit;
+						long unitCount;
+						Memory memory;
+						DiskSize diskSize;
+						Cpu cpu;
+					};
+					struct DataDiskAutoScaleConfig
+					{
+						long upperbound;
+						long scaleStepInNormal;
+						long upperMergeThreshold;
+						long scaleStepInMerge;
+						long maxDiskSize;
+						long upperThreshold;
+						bool autoScale;
+					};
+					std::string deployType;
+					std::string resourceGroupId;
+					bool enableUpgradeNodes;
+					long usedDiskSize;
+					int cpu;
+					bool inTempCapacityStatus;
+					std::vector<std::string> availableZones;
+					std::string diskType;
+					std::string deployMode;
+					std::string version;
+					std::string commodityCode;
+					std::string diskSize;
+					std::string instanceRole;
+					std::string instanceType;
+					std::string maintainTime;
+					std::string instanceId;
+					std::string createTime;
+					Resource resource;
+					std::string instanceClass;
+					std::string payType;
+					std::string instanceName;
+					std::string series;
+					DataDiskAutoScaleConfig dataDiskAutoScaleConfig;
+					std::string vpcId;
+					long mem;
+					std::string state;
+					int expireSeconds;
+					std::string expireTime;
+				};
+
+
+				DescribeInstancesResult();
+				explicit DescribeInstancesResult(const std::string &payload);
+				~DescribeInstancesResult();
+				std::vector<Data> getInstances()const;
+				int getTotalCount()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<Data> instances_;
+				int totalCount_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEINSTANCESRESULT_H_

+ 66 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeMetricsDataRequest.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_OCEANBASEPRO_MODEL_DESCRIBEMETRICSDATAREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEMETRICSDATAREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeMetricsDataRequest : public RpcServiceRequest {
+public:
+	DescribeMetricsDataRequest();
+	~DescribeMetricsDataRequest();
+	std::string getGroupByLabels() const;
+	void setGroupByLabels(const std::string &groupByLabels);
+	std::string getStartTime() const;
+	void setStartTime(const std::string &startTime);
+	std::string getLimit() const;
+	void setLimit(const std::string &limit);
+	std::string getSortOrder() const;
+	void setSortOrder(const std::string &sortOrder);
+	std::string getSortMetricKey() const;
+	void setSortMetricKey(const std::string &sortMetricKey);
+	std::string getEndTime() const;
+	void setEndTime(const std::string &endTime);
+	std::string getLabels() const;
+	void setLabels(const std::string &labels);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	std::string getMetrics() const;
+	void setMetrics(const std::string &metrics);
+
+private:
+	std::string groupByLabels_;
+	std::string startTime_;
+	std::string limit_;
+	std::string sortOrder_;
+	std::string sortMetricKey_;
+	std::string endTime_;
+	std::string labels_;
+	std::string instanceId_;
+	std::string metrics_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEMETRICSDATAREQUEST_H_

+ 51 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeMetricsDataResult.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_OCEANBASEPRO_MODEL_DESCRIBEMETRICSDATARESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEMETRICSDATARESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeMetricsDataResult : public ServiceResult
+			{
+			public:
+
+
+				DescribeMetricsDataResult();
+				explicit DescribeMetricsDataResult(const std::string &payload);
+				~DescribeMetricsDataResult();
+				std::string getData()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string data_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEMETRICSDATARESULT_H_

+ 66 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeNodeMetricsRequest.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_OCEANBASEPRO_MODEL_DESCRIBENODEMETRICSREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBENODEMETRICSREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeNodeMetricsRequest : public RpcServiceRequest {
+public:
+	DescribeNodeMetricsRequest();
+	~DescribeNodeMetricsRequest();
+	std::string getStartTime() const;
+	void setStartTime(const std::string &startTime);
+	int getPageNumber() const;
+	void setPageNumber(int pageNumber);
+	int getPageSize() const;
+	void setPageSize(int pageSize);
+	std::string getTenantId() const;
+	void setTenantId(const std::string &tenantId);
+	std::string getNodeIdList() const;
+	void setNodeIdList(const std::string &nodeIdList);
+	std::string getEndTime() const;
+	void setEndTime(const std::string &endTime);
+	std::string getNodeName() const;
+	void setNodeName(const std::string &nodeName);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	std::string getMetrics() const;
+	void setMetrics(const std::string &metrics);
+
+private:
+	std::string startTime_;
+	int pageNumber_;
+	int pageSize_;
+	std::string tenantId_;
+	std::string nodeIdList_;
+	std::string endTime_;
+	std::string nodeName_;
+	std::string instanceId_;
+	std::string metrics_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBENODEMETRICSREQUEST_H_

+ 53 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeNodeMetricsResult.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_OCEANBASEPRO_MODEL_DESCRIBENODEMETRICSRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBENODEMETRICSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeNodeMetricsResult : public ServiceResult
+			{
+			public:
+
+
+				DescribeNodeMetricsResult();
+				explicit DescribeNodeMetricsResult(const std::string &payload);
+				~DescribeNodeMetricsResult();
+				int getTotalCount()const;
+				std::string getNodeMetrics()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				int totalCount_;
+				std::string nodeMetrics_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBENODEMETRICSRESULT_H_

+ 93 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOasAnomalySQLListRequest.h

@@ -0,0 +1,93 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_DESCRIBEOASANOMALYSQLLISTREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOASANOMALYSQLLISTREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeOasAnomalySQLListRequest : public RpcServiceRequest {
+public:
+	DescribeOasAnomalySQLListRequest();
+	~DescribeOasAnomalySQLListRequest();
+	std::string getStartTime() const;
+	void setStartTime(const std::string &startTime);
+	std::string getSearchRule() const;
+	void setSearchRule(const std::string &searchRule);
+	bool getMergeDynamicSql() const;
+	void setMergeDynamicSql(bool mergeDynamicSql);
+	long getCurrent() const;
+	void setCurrent(long current);
+	bool getDynamicSql() const;
+	void setDynamicSql(bool dynamicSql);
+	long getSqlTextLength() const;
+	void setSqlTextLength(long sqlTextLength);
+	std::string getTenantId() const;
+	void setTenantId(const std::string &tenantId);
+	long getPageSize() const;
+	void setPageSize(long pageSize);
+	std::string getSearchValue() const;
+	void setSearchValue(const std::string &searchValue);
+	std::string getSqlId() const;
+	void setSqlId(const std::string &sqlId);
+	std::string getFilterCondition() const;
+	void setFilterCondition(const std::string &filterCondition);
+	std::string getSearchParam() const;
+	void setSearchParam(const std::string &searchParam);
+	std::string getEndTime() const;
+	void setEndTime(const std::string &endTime);
+	std::string getNodeIp() const;
+	void setNodeIp(const std::string &nodeIp);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	std::string getDbName() const;
+	void setDbName(const std::string &dbName);
+	std::string getSearchKeyWord() const;
+	void setSearchKeyWord(const std::string &searchKeyWord);
+	std::string getAcceptLanguage() const;
+	void setAcceptLanguage(const std::string &acceptLanguage);
+
+private:
+	std::string startTime_;
+	std::string searchRule_;
+	bool mergeDynamicSql_;
+	long current_;
+	bool dynamicSql_;
+	long sqlTextLength_;
+	std::string tenantId_;
+	long pageSize_;
+	std::string searchValue_;
+	std::string sqlId_;
+	std::string filterCondition_;
+	std::string searchParam_;
+	std::string endTime_;
+	std::string nodeIp_;
+	std::string instanceId_;
+	std::string dbName_;
+	std::string searchKeyWord_;
+	std::string acceptLanguage_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOASANOMALYSQLLISTREQUEST_H_

+ 95 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOasAnomalySQLListResult.h

@@ -0,0 +1,95 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_DESCRIBEOASANOMALYSQLLISTRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOASANOMALYSQLLISTRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeOasAnomalySQLListResult : public ServiceResult
+			{
+			public:
+				struct DataItem
+				{
+					struct SqlListItem
+					{
+						double avgCpuTime;
+						double executions;
+						double sumDbTime;
+						std::string userName;
+						double lastExecutedTime;
+						double avgGetPlanTime;
+						double cpuTime;
+						std::string sqlId;
+						std::string sumElapsedTime;
+						std::string suggestion;
+						std::string sqlTextShort;
+						double avgElapsedTime;
+						std::string dbName;
+						std::string diagnosis;
+						std::string riskLevel;
+						double avgDbTime;
+						std::vector<std::string> diagTypes1;
+					};
+					double avgCpuTime;
+					double executions;
+					bool dynamicSql;
+					double sumDbTime;
+					std::vector<DataItem::SqlListItem> sqlList;
+					std::string userName;
+					double lastExecutedTime;
+					double avgGetPlanTime;
+					double cpuTime;
+					std::vector<std::string> diagTypes;
+					std::string sqlId;
+					std::string sumElapsedTime;
+					std::string suggestion;
+					std::string sqlTextShort;
+					double avgElapsedTime;
+					std::string dbName;
+					std::string diagnosis;
+					std::string riskLevel;
+					double avgDbTime;
+				};
+
+
+				DescribeOasAnomalySQLListResult();
+				explicit DescribeOasAnomalySQLListResult(const std::string &payload);
+				~DescribeOasAnomalySQLListResult();
+				long getTotalCount()const;
+				std::vector<DataItem> getData()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				long totalCount_;
+				std::vector<DataItem> data_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOASANOMALYSQLLISTRESULT_H_

+ 60 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOasSQLDetailsRequest.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_OCEANBASEPRO_MODEL_DESCRIBEOASSQLDETAILSREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOASSQLDETAILSREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeOasSQLDetailsRequest : public RpcServiceRequest {
+public:
+	DescribeOasSQLDetailsRequest();
+	~DescribeOasSQLDetailsRequest();
+	std::string getStartTime() const;
+	void setStartTime(const std::string &startTime);
+	bool getDynamicSql() const;
+	void setDynamicSql(bool dynamicSql);
+	std::string getTenantId() const;
+	void setTenantId(const std::string &tenantId);
+	std::string getSqlId() const;
+	void setSqlId(const std::string &sqlId);
+	std::string getEndTime() const;
+	void setEndTime(const std::string &endTime);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	std::string getDbName() const;
+	void setDbName(const std::string &dbName);
+
+private:
+	std::string startTime_;
+	bool dynamicSql_;
+	std::string tenantId_;
+	std::string sqlId_;
+	std::string endTime_;
+	std::string instanceId_;
+	std::string dbName_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOASSQLDETAILSREQUEST_H_

+ 59 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOasSQLDetailsResult.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_OCEANBASEPRO_MODEL_DESCRIBEOASSQLDETAILSRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOASSQLDETAILSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeOasSQLDetailsResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					std::string fulltext;
+					std::string userName;
+					std::string statement;
+					std::vector<std::string> tables;
+					std::string dbName;
+				};
+
+
+				DescribeOasSQLDetailsResult();
+				explicit DescribeOasSQLDetailsResult(const std::string &payload);
+				~DescribeOasSQLDetailsResult();
+				Data getData()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				Data data_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOASSQLDETAILSRESULT_H_

+ 66 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOasSQLHistoryListRequest.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_OCEANBASEPRO_MODEL_DESCRIBEOASSQLHISTORYLISTREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOASSQLHISTORYLISTREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeOasSQLHistoryListRequest : public RpcServiceRequest {
+public:
+	DescribeOasSQLHistoryListRequest();
+	~DescribeOasSQLHistoryListRequest();
+	std::string getStartTime() const;
+	void setStartTime(const std::string &startTime);
+	bool getDynamicSql() const;
+	void setDynamicSql(bool dynamicSql);
+	std::string getTenantId() const;
+	void setTenantId(const std::string &tenantId);
+	std::string getSqlId() const;
+	void setSqlId(const std::string &sqlId);
+	std::string getEndTime() const;
+	void setEndTime(const std::string &endTime);
+	std::string getNodeIp() const;
+	void setNodeIp(const std::string &nodeIp);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	std::string getDbName() const;
+	void setDbName(const std::string &dbName);
+	std::string getAcceptLanguage() const;
+	void setAcceptLanguage(const std::string &acceptLanguage);
+
+private:
+	std::string startTime_;
+	bool dynamicSql_;
+	std::string tenantId_;
+	std::string sqlId_;
+	std::string endTime_;
+	std::string nodeIp_;
+	std::string instanceId_;
+	std::string dbName_;
+	std::string acceptLanguage_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOASSQLHISTORYLISTREQUEST_H_

+ 121 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOasSQLHistoryListResult.h

@@ -0,0 +1,121 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_DESCRIBEOASSQLHISTORYLISTRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOASSQLHISTORYLISTRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeOasSQLHistoryListResult : public ServiceResult
+			{
+			public:
+				struct DataItem
+				{
+					long executions;
+					long avgRowCacheHit;
+					std::string server;
+					double maxApplicationWaitTime;
+					double maxAffectedRows;
+					double maxUserIoWaitTime;
+					double avgUserIoWaitTime;
+					long retryCount;
+					double retCode6002Count;
+					long missPlans;
+					long avgLogicalReads;
+					double retCode5167Count;
+					long avgBlockCacheHit;
+					double execPs;
+					double tableScanPercentage;
+					double retCode5217Count;
+					double avgUsedWorkerCount;
+					double maxElapsedTime;
+					double localPlanPercentage;
+					double avgGetPlanTime;
+					double avgNetTime;
+					double remotePlanPercentage;
+					long avgAffectedRows;
+					double avgApplicationWaitTime;
+					long avgSsstoreReadRows;
+					long avgMemstoreReadRows;
+					double avgQueueTime;
+					double maxCpuTime;
+					long avgDiskReads;
+					double retCode5001Count;
+					double avgCpuTime;
+					double retCode5024Count;
+					double sumLogicalReads;
+					double strongConsistencyPercentage;
+					double retCode4013Count;
+					double avgConcurrencyWaitTime;
+					std::string timestamp;
+					long avgBlockIndexCacheHit;
+					long avgBloomFilterCacheHit;
+					double sumElapsedTime;
+					long avgReturnRows;
+					long failCount;
+					double avgPartitionCount;
+					std::string dbName;
+					double avgWaitTime;
+					double weakConsistencyPercentage;
+					double avgDecodeTime;
+					std::string sQLId;
+					long avgRpcCount;
+					double avgNetWaitTime;
+					double maxDiskReads;
+					double avgExpectedWorkerCount;
+					double distPlanPercentage;
+					long remotePlans;
+					double avgWaitCount;
+					std::string userName;
+					double avgExecuteTime;
+					double maxWaitTime;
+					double avgExecutorRpcCount;
+					double avgScheduleTime;
+					double maxConcurrencyWaitTime;
+					double missPlanPercentage;
+					double retCode4012Count;
+					double avgElapsedTime;
+					double failPercentage;
+					double maxReturnRows;
+					double sumWaitTime;
+				};
+
+
+				DescribeOasSQLHistoryListResult();
+				explicit DescribeOasSQLHistoryListResult(const std::string &payload);
+				~DescribeOasSQLHistoryListResult();
+				std::vector<DataItem> getData()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<DataItem> data_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOASSQLHISTORYLISTRESULT_H_

+ 63 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOasSQLPlansRequest.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_OCEANBASEPRO_MODEL_DESCRIBEOASSQLPLANSREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOASSQLPLANSREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeOasSQLPlansRequest : public RpcServiceRequest {
+public:
+	DescribeOasSQLPlansRequest();
+	~DescribeOasSQLPlansRequest();
+	std::string getStartTime() const;
+	void setStartTime(const std::string &startTime);
+	bool getDynamicSql() const;
+	void setDynamicSql(bool dynamicSql);
+	std::string getTenantId() const;
+	void setTenantId(const std::string &tenantId);
+	std::string getSqlId() const;
+	void setSqlId(const std::string &sqlId);
+	std::string getEndTime() const;
+	void setEndTime(const std::string &endTime);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	std::string getDbName() const;
+	void setDbName(const std::string &dbName);
+	std::string getAcceptLanguage() const;
+	void setAcceptLanguage(const std::string &acceptLanguage);
+
+private:
+	std::string startTime_;
+	bool dynamicSql_;
+	std::string tenantId_;
+	std::string sqlId_;
+	std::string endTime_;
+	std::string instanceId_;
+	std::string dbName_;
+	std::string acceptLanguage_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOASSQLPLANSREQUEST_H_

+ 109 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOasSQLPlansResult.h

@@ -0,0 +1,109 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_DESCRIBEOASSQLPLANSRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOASSQLPLANSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeOasSQLPlansResult : public ServiceResult
+			{
+			public:
+				struct DataItem
+				{
+					struct PlanExplain
+					{
+						std::string planJsonString;
+					};
+					struct PlansItem
+					{
+						long executions;
+						double avgCpuTime;
+						std::string planHash;
+						std::string server;
+						double timeoutPercentage;
+						double avgConcurrencyWaitTime;
+						long firstLoadTimeUs;
+						double avgDiskWrites;
+						double avgUserIoWaitTime;
+						long planSize;
+						long serverId;
+						std::string outlineData;
+						std::string planType;
+						long obDbId;
+						double hitPercentage;
+						double avgBufferGets;
+						double execPs;
+						double delayedLargeQueryPercentage;
+						bool tableScan;
+						double largeQueryPercentage;
+						long schemaVersion;
+						long planId;
+						std::string firstLoadTime;
+						double avgRowProcessed;
+						std::string planUnionHash;
+						long mergedVersion;
+						bool hitDiagnosis;
+						std::string sqlId;
+						std::string uid;
+						double avgApplicationWaitTime;
+						long collectTimeUs;
+						double avgElapsedTime;
+						long obServerId;
+						long outlineId;
+						double avgDiskReads;
+					};
+					double avgCpuTime;
+					long executions;
+					std::string planHash;
+					std::string firstLoadTime;
+					std::string planUnionHash;
+					long mergedVersion;
+					bool hitDiagnosis;
+					std::vector<DataItem::PlansItem> plans;
+					bool bounded;
+					std::string querySql;
+					std::string planType;
+					double hitPercentage;
+					PlanExplain planExplain;
+				};
+
+
+				DescribeOasSQLPlansResult();
+				explicit DescribeOasSQLPlansResult(const std::string &payload);
+				~DescribeOasSQLPlansResult();
+				std::vector<DataItem> getData()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<DataItem> data_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOASSQLPLANSRESULT_H_

+ 87 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOasSlowSQLListRequest.h

@@ -0,0 +1,87 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_DESCRIBEOASSLOWSQLLISTREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOASSLOWSQLLISTREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeOasSlowSQLListRequest : public RpcServiceRequest {
+public:
+	DescribeOasSlowSQLListRequest();
+	~DescribeOasSlowSQLListRequest();
+	std::string getStartTime() const;
+	void setStartTime(const std::string &startTime);
+	std::string getSearchRule() const;
+	void setSearchRule(const std::string &searchRule);
+	bool getMergeDynamicSql() const;
+	void setMergeDynamicSql(bool mergeDynamicSql);
+	bool getDynamicSql() const;
+	void setDynamicSql(bool dynamicSql);
+	long getSqlTextLength() const;
+	void setSqlTextLength(long sqlTextLength);
+	std::string getTenantId() const;
+	void setTenantId(const std::string &tenantId);
+	std::string getSearchValue() const;
+	void setSearchValue(const std::string &searchValue);
+	std::string getSqlId() const;
+	void setSqlId(const std::string &sqlId);
+	std::string getFilterCondition() const;
+	void setFilterCondition(const std::string &filterCondition);
+	std::string getSearchParam() const;
+	void setSearchParam(const std::string &searchParam);
+	std::string getEndTime() const;
+	void setEndTime(const std::string &endTime);
+	std::string getNodeIp() const;
+	void setNodeIp(const std::string &nodeIp);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	std::string getDbName() const;
+	void setDbName(const std::string &dbName);
+	std::string getSearchKeyWord() const;
+	void setSearchKeyWord(const std::string &searchKeyWord);
+	std::string getAcceptLanguage() const;
+	void setAcceptLanguage(const std::string &acceptLanguage);
+
+private:
+	std::string startTime_;
+	std::string searchRule_;
+	bool mergeDynamicSql_;
+	bool dynamicSql_;
+	long sqlTextLength_;
+	std::string tenantId_;
+	std::string searchValue_;
+	std::string sqlId_;
+	std::string filterCondition_;
+	std::string searchParam_;
+	std::string endTime_;
+	std::string nodeIp_;
+	std::string instanceId_;
+	std::string dbName_;
+	std::string searchKeyWord_;
+	std::string acceptLanguage_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOASSLOWSQLLISTREQUEST_H_

+ 213 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOasSlowSQLListResult.h

@@ -0,0 +1,213 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_DESCRIBEOASSLOWSQLLISTRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOASSLOWSQLLISTRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeOasSlowSQLListResult : public ServiceResult
+			{
+			public:
+				struct DataItem
+				{
+					struct SqlListItem
+					{
+						double executions;
+						double avgRowCacheHit;
+						double maxApplicationWaitTime;
+						std::string server;
+						double maxAffectedRows;
+						double maxUserIoWaitTime;
+						std::string clientIp;
+						bool inner;
+						double avgUserIoWaitTime;
+						double retryCount;
+						long retCode6002Count;
+						double missPlans;
+						long retCode5167Count;
+						std::string sqlType;
+						double avgLogicalReads;
+						double execPs;
+						double avgBlockCacheHit;
+						double tableScanPercentage;
+						long retCode5217Count;
+						double avgUsedWorkerCount;
+						double maxElapsedTime;
+						double localPlanPercentage;
+						double avgGetPlanTime;
+						double avgNetTime;
+						double remotePlanPercentage;
+						std::string sqlId;
+						double avgAffectedRows;
+						double avgApplicationWaitTime;
+						std::string sqlTextShort;
+						double avgSsstoreReadRows;
+						double avgMemstoreReadRows;
+						double avgQueueTime;
+						double maxCpuTime;
+						double avgDiskReads;
+						long retCode5001Count;
+						long retCode5024Count;
+						double sumLogicalReads;
+						double avgCpuTime;
+						double sumDbTime;
+						double strongConsistencyPercentage;
+						long retCode4013Count;
+						double avgConcurrencyWaitTime;
+						double avgBlockIndexCacheHit;
+						double sumElapsedTime;
+						double avgBloomFilterCacheHit;
+						double avgReturnRows;
+						double avgPartitionCount;
+						double failCount;
+						std::string dbName;
+						double avgWaitTime;
+						double weakConsistencyPercentage;
+						double avgDecodeTime;
+						double avgRpcCount;
+						double maxDiskReads;
+						double avgNetWaitTime;
+						double avgDbTime;
+						double avgExpectedWorkerCount;
+						double distPlanPercentage;
+						double remotePlans;
+						double avgWaitCount;
+						std::string userName;
+						double rpcCount;
+						double avgExecuteTime;
+						std::string serverIp;
+						double maxWaitTime;
+						double avgExecutorRpcCount;
+						double avgScheduleTime;
+						double maxConcurrencyWaitTime;
+						double missPlanPercentage;
+						std::string waitEvent;
+						double totalWaitTime;
+						long retCode4012Count;
+						double avgElapsedTime;
+						double failPercentage;
+						double maxReturnRows;
+						double sumWaitTime;
+						long serverPort;
+					};
+					double executions;
+					double avgRowCacheHit;
+					double maxApplicationWaitTime;
+					std::string server;
+					double maxAffectedRows;
+					double maxUserIoWaitTime;
+					std::string clientIp;
+					bool inner;
+					double avgUserIoWaitTime;
+					double retryCount;
+					long retCode6002Count;
+					double missPlans;
+					long retCode5167Count;
+					std::string sqlType;
+					double avgLogicalReads;
+					double execPs;
+					double avgBlockCacheHit;
+					double tableScanPercentage;
+					long retCode5217Count;
+					double avgUsedWorkerCount;
+					double maxElapsedTime;
+					double localPlanPercentage;
+					double avgGetPlanTime;
+					double avgNetTime;
+					double remotePlanPercentage;
+					std::string sqlId;
+					double avgAffectedRows;
+					double avgApplicationWaitTime;
+					std::string sqlTextShort;
+					double avgSsstoreReadRows;
+					double avgMemstoreReadRows;
+					double avgQueueTime;
+					double maxCpuTime;
+					double avgDiskReads;
+					long retCode5001Count;
+					long retCode5024Count;
+					double sumLogicalReads;
+					double avgCpuTime;
+					double sumDbTime;
+					double strongConsistencyPercentage;
+					long retCode4013Count;
+					double avgConcurrencyWaitTime;
+					double avgBlockIndexCacheHit;
+					double sumElapsedTime;
+					double avgBloomFilterCacheHit;
+					double avgReturnRows;
+					double avgPartitionCount;
+					double failCount;
+					std::string dbName;
+					double avgWaitTime;
+					double weakConsistencyPercentage;
+					double avgDecodeTime;
+					double avgRpcCount;
+					double maxDiskReads;
+					double avgNetWaitTime;
+					double avgDbTime;
+					double avgExpectedWorkerCount;
+					double distPlanPercentage;
+					bool dynamicSql;
+					std::vector<DataItem::SqlListItem> sqlList;
+					double remotePlans;
+					double avgWaitCount;
+					std::string userName;
+					double rpcCount;
+					double avgExecuteTime;
+					std::string serverIp;
+					double maxWaitTime;
+					double avgExecutorRpcCount;
+					double avgScheduleTime;
+					double maxConcurrencyWaitTime;
+					double missPlanPercentage;
+					std::string waitEvent;
+					double totalWaitTime;
+					long retCode4012Count;
+					double avgElapsedTime;
+					double failPercentage;
+					double maxReturnRows;
+					double sumWaitTime;
+					long serverPort;
+				};
+
+
+				DescribeOasSlowSQLListResult();
+				explicit DescribeOasSlowSQLListResult(const std::string &payload);
+				~DescribeOasSlowSQLListResult();
+				std::vector<DataItem> getData()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<DataItem> data_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOASSLOWSQLLISTRESULT_H_

+ 87 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOasTopSQLListRequest.h

@@ -0,0 +1,87 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_DESCRIBEOASTOPSQLLISTREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOASTOPSQLLISTREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeOasTopSQLListRequest : public RpcServiceRequest {
+public:
+	DescribeOasTopSQLListRequest();
+	~DescribeOasTopSQLListRequest();
+	std::string getStartTime() const;
+	void setStartTime(const std::string &startTime);
+	std::string getSearchRule() const;
+	void setSearchRule(const std::string &searchRule);
+	bool getMergeDynamicSql() const;
+	void setMergeDynamicSql(bool mergeDynamicSql);
+	bool getDynamicSql() const;
+	void setDynamicSql(bool dynamicSql);
+	long getSqlTextLength() const;
+	void setSqlTextLength(long sqlTextLength);
+	std::string getTenantId() const;
+	void setTenantId(const std::string &tenantId);
+	std::string getSearchValue() const;
+	void setSearchValue(const std::string &searchValue);
+	std::string getSqlId() const;
+	void setSqlId(const std::string &sqlId);
+	std::string getFilterCondition() const;
+	void setFilterCondition(const std::string &filterCondition);
+	std::string getSearchParam() const;
+	void setSearchParam(const std::string &searchParam);
+	std::string getEndTime() const;
+	void setEndTime(const std::string &endTime);
+	std::string getNodeIp() const;
+	void setNodeIp(const std::string &nodeIp);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	std::string getDbName() const;
+	void setDbName(const std::string &dbName);
+	std::string getSearchKeyWord() const;
+	void setSearchKeyWord(const std::string &searchKeyWord);
+	std::string getAcceptLanguage() const;
+	void setAcceptLanguage(const std::string &acceptLanguage);
+
+private:
+	std::string startTime_;
+	std::string searchRule_;
+	bool mergeDynamicSql_;
+	bool dynamicSql_;
+	long sqlTextLength_;
+	std::string tenantId_;
+	std::string searchValue_;
+	std::string sqlId_;
+	std::string filterCondition_;
+	std::string searchParam_;
+	std::string endTime_;
+	std::string nodeIp_;
+	std::string instanceId_;
+	std::string dbName_;
+	std::string searchKeyWord_;
+	std::string acceptLanguage_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOASTOPSQLLISTREQUEST_H_

+ 216 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOasTopSQLListResult.h

@@ -0,0 +1,216 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_DESCRIBEOASTOPSQLLISTRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOASTOPSQLLISTRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeOasTopSQLListResult : public ServiceResult
+			{
+			public:
+				struct DataItem
+				{
+					struct SqlListItem
+					{
+						double executions;
+						double avgRowCacheHit;
+						double maxApplicationWaitTime;
+						std::string server;
+						double maxAffectedRows;
+						double maxUserIoWaitTime;
+						std::string clientIp;
+						bool inner;
+						double avgUserIoWaitTime;
+						double retryCount;
+						long retCode6002Count;
+						double missPlans;
+						long retCode5167Count;
+						std::string sqlType;
+						double avgLogicalReads;
+						double execPs;
+						double avgBlockCacheHit;
+						double tableScanPercentage;
+						long retCode5217Count;
+						double avgUsedWorkerCount;
+						double maxElapsedTime;
+						double localPlanPercentage;
+						double avgGetPlanTime;
+						double cpuPercentage;
+						double avgNetTime;
+						double remotePlanPercentage;
+						std::string sqlId;
+						double avgAffectedRows;
+						double avgApplicationWaitTime;
+						std::string sqlTextShort;
+						double avgSsstoreReadRows;
+						double avgMemstoreReadRows;
+						double avgQueueTime;
+						double maxCpuTime;
+						double avgDiskReads;
+						long retCode5001Count;
+						long retCode5024Count;
+						double sumLogicalReads;
+						double avgCpuTime;
+						double sumDbTime;
+						double strongConsistencyPercentage;
+						long retCode4013Count;
+						double avgConcurrencyWaitTime;
+						double avgBlockIndexCacheHit;
+						double sumElapsedTime;
+						double avgBloomFilterCacheHit;
+						double avgReturnRows;
+						double avgPartitionCount;
+						double failCount;
+						std::string dbName;
+						double avgWaitTime;
+						double weakConsistencyPercentage;
+						double avgDecodeTime;
+						double avgRpcCount;
+						double maxDiskReads;
+						double avgNetWaitTime;
+						double avgDbTime;
+						double avgExpectedWorkerCount;
+						double distPlanPercentage;
+						double remotePlans;
+						double avgWaitCount;
+						std::string userName;
+						double rpcCount;
+						double avgExecuteTime;
+						std::string serverIp;
+						double maxWaitTime;
+						double avgExecutorRpcCount;
+						double avgScheduleTime;
+						double maxConcurrencyWaitTime;
+						double missPlanPercentage;
+						std::string waitEvent;
+						double totalWaitTime;
+						long retCode4012Count;
+						double avgElapsedTime;
+						double failPercentage;
+						double maxReturnRows;
+						double sumWaitTime;
+						long serverPort;
+					};
+					double executions;
+					double avgRowCacheHit;
+					double maxApplicationWaitTime;
+					std::string server;
+					double maxAffectedRows;
+					double maxUserIoWaitTime;
+					std::string clientIp;
+					bool inner;
+					double avgUserIoWaitTime;
+					double retryCount;
+					long retCode6002Count;
+					double missPlans;
+					long retCode5167Count;
+					std::string sqlType;
+					double avgLogicalReads;
+					double execPs;
+					double avgBlockCacheHit;
+					double tableScanPercentage;
+					long retCode5217Count;
+					double avgUsedWorkerCount;
+					double maxElapsedTime;
+					double localPlanPercentage;
+					double avgGetPlanTime;
+					double cpuPercentage;
+					double avgNetTime;
+					double remotePlanPercentage;
+					std::string sqlId;
+					double avgAffectedRows;
+					double avgApplicationWaitTime;
+					std::string sqlTextShort;
+					double avgSsstoreReadRows;
+					double avgMemstoreReadRows;
+					double avgQueueTime;
+					double maxCpuTime;
+					double avgDiskReads;
+					long retCode5001Count;
+					long retCode5024Count;
+					double sumLogicalReads;
+					double avgCpuTime;
+					double sumDbTime;
+					double strongConsistencyPercentage;
+					long retCode4013Count;
+					double avgConcurrencyWaitTime;
+					double avgBlockIndexCacheHit;
+					double sumElapsedTime;
+					double avgBloomFilterCacheHit;
+					double avgReturnRows;
+					double avgPartitionCount;
+					double failCount;
+					std::string dbName;
+					double avgWaitTime;
+					double weakConsistencyPercentage;
+					double avgDecodeTime;
+					double avgRpcCount;
+					double maxDiskReads;
+					double avgNetWaitTime;
+					double avgDbTime;
+					double avgExpectedWorkerCount;
+					double distPlanPercentage;
+					bool dynamicSql;
+					std::vector<DataItem::SqlListItem> sqlList;
+					double remotePlans;
+					double avgWaitCount;
+					std::string userName;
+					double rpcCount;
+					double avgExecuteTime;
+					std::string serverIp;
+					double maxWaitTime;
+					double avgExecutorRpcCount;
+					double avgScheduleTime;
+					double maxConcurrencyWaitTime;
+					double missPlanPercentage;
+					std::string waitEvent;
+					long lastFailCode;
+					double totalWaitTime;
+					long retCode4012Count;
+					double avgElapsedTime;
+					double failPercentage;
+					double maxReturnRows;
+					double sumWaitTime;
+					long serverPort;
+				};
+
+
+				DescribeOasTopSQLListResult();
+				explicit DescribeOasTopSQLListResult(const std::string &payload);
+				~DescribeOasTopSQLListResult();
+				std::vector<DataItem> getData()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<DataItem> data_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOASTOPSQLLISTRESULT_H_

+ 51 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOmsOpenAPIProjectRequest.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_OCEANBASEPRO_MODEL_DESCRIBEOMSOPENAPIPROJECTREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOMSOPENAPIPROJECTREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeOmsOpenAPIProjectRequest : public RpcServiceRequest {
+public:
+	DescribeOmsOpenAPIProjectRequest();
+	~DescribeOmsOpenAPIProjectRequest();
+	int getPageNumber() const;
+	void setPageNumber(int pageNumber);
+	int getPageSize() const;
+	void setPageSize(int pageSize);
+	std::string getWorkerGradeId() const;
+	void setWorkerGradeId(const std::string &workerGradeId);
+	std::string getProjectId() const;
+	void setProjectId(const std::string &projectId);
+
+private:
+	int pageNumber_;
+	int pageSize_;
+	std::string workerGradeId_;
+	std::string projectId_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOMSOPENAPIPROJECTREQUEST_H_

+ 234 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOmsOpenAPIProjectResult.h

@@ -0,0 +1,234 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_DESCRIBEOMSOPENAPIPROJECTRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOMSOPENAPIPROJECTRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeOmsOpenAPIProjectResult : public ServiceResult
+			{
+			public:
+				struct ErrorDetail
+				{
+					std::string message;
+					std::string level;
+					std::string code;
+					std::string proposal;
+				};
+				struct Data
+				{
+					struct SourceConfig
+					{
+						int partition;
+						std::string topicType;
+						long sendMsgTimeout;
+						std::string producerGroup;
+						std::string endpointId;
+						std::string endpointType;
+						std::string partitionMode;
+						bool sequenceEnable;
+						std::string msgTags;
+						long sequenceStartTimestamp;
+						bool enableMsgTrace;
+						std::string serializerType;
+					};
+					struct DestConfig
+					{
+						int partition;
+						std::string topicType;
+						long sendMsgTimeout;
+						std::string producerGroup;
+						std::string endpointId;
+						std::string endpointType;
+						std::string partitionMode;
+						bool sequenceEnable;
+						std::string msgTags;
+						long sequenceStartTimestamp;
+						bool enableMsgTrace;
+						std::string serializerType;
+					};
+					struct TransferMapping
+					{
+						struct Database
+						{
+							struct Table
+							{
+								struct AdbTableSchema
+								{
+									std::vector<std::string> primaryKeys;
+									std::vector<std::string> distributedKeys;
+									int partitionLifeCycle;
+									std::string partitionStatement;
+								};
+								std::string tableId;
+								std::string tableName;
+								std::string type;
+								std::vector<std::string> shardColumns;
+								std::string whereClause;
+								std::vector<std::string> filterColumns;
+								AdbTableSchema adbTableSchema;
+								std::string mappedName;
+							};
+							std::string type;
+							std::string tenantName;
+							std::string databaseName;
+							std::vector<Database::Table> tables;
+							std::string databaseId;
+							std::string mappedName;
+						};
+						std::vector<Database> databases;
+						std::string mode;
+					};
+					struct TransferStepConfig
+					{
+						struct IncrSyncStepTransferConfig
+						{
+							long storeLogKeptHour;
+							long startTimestamp;
+							std::vector<std::string> recordTypeList;
+							std::string transferStepType;
+							bool storeTransactionEnabled;
+						};
+						bool enableStructSync;
+						bool enableFullSync;
+						IncrSyncStepTransferConfig incrSyncStepTransferConfig;
+						bool enableIncrSync;
+					};
+					struct Label
+					{
+						std::string id;
+						std::string creator;
+						int count;
+						std::string name;
+					};
+					struct Step
+					{
+						struct StepInfo
+						{
+							struct ConnectorFullProgressOverview
+							{
+								int progress;
+								long finishedCount;
+								long estimatedRemainingTimeOfSec;
+								long estimatedTotalCount;
+							};
+							long srcRt;
+							ConnectorFullProgressOverview connectorFullProgressOverview;
+							bool validated;
+							long dstRps;
+							long dstIops;
+							long dstRtRef;
+							long inconsistencies;
+							bool skipped;
+							long srcRps;
+							std::string deployId;
+							long srcIopsRef;
+							long srcIops;
+							long srcRpsRef;
+							long gmt;
+							long processedRecords;
+							std::string checkpoint;
+							long dstRt;
+							long capacity;
+							long dstRpsRef;
+							long incrTimestampCheckpoint;
+							long srcRtRef;
+							std::string jobId;
+						};
+						struct ExtraInfo
+						{
+							struct ErrorDetail1
+							{
+								std::string message;
+								std::string level;
+								std::string code;
+								std::string proposal;
+							};
+							std::string errorMsg;
+							std::string errorParam;
+							std::vector<ErrorDetail1> errorDetails;
+							std::string errorCode;
+							std::string failedTime;
+						};
+						StepInfo stepInfo;
+						std::string finishTime;
+						long estimatedRemainingSeconds;
+						bool interactive;
+						std::string startTime;
+						int stepOrder;
+						ExtraInfo extraInfo;
+						std::string stepName;
+						std::string stepDescription;
+						std::string stepStatus;
+						int stepProgress;
+					};
+					std::vector<Step> steps;
+					TransferStepConfig transferStepConfig;
+					DestConfig destConfig;
+					TransferMapping transferMapping;
+					std::string businessName;
+					std::string projectName;
+					std::string projectOwner;
+					SourceConfig sourceConfig;
+					std::string projectId;
+					std::vector<Label> labels;
+				};
+
+
+				DescribeOmsOpenAPIProjectResult();
+				explicit DescribeOmsOpenAPIProjectResult(const std::string &payload);
+				~DescribeOmsOpenAPIProjectResult();
+				ErrorDetail getErrorDetail()const;
+				long getTotalCount()const;
+				std::string getMessage()const;
+				int getPageSize()const;
+				int getPageNumber()const;
+				Data getData()const;
+				std::string getAdvice()const;
+				std::string getCode()const;
+				std::string getCost()const;
+				bool getSuccess()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				ErrorDetail errorDetail_;
+				long totalCount_;
+				std::string message_;
+				int pageSize_;
+				int pageNumber_;
+				Data data_;
+				std::string advice_;
+				std::string code_;
+				std::string cost_;
+				bool success_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOMSOPENAPIPROJECTRESULT_H_

+ 51 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOmsOpenAPIProjectStepsRequest.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_OCEANBASEPRO_MODEL_DESCRIBEOMSOPENAPIPROJECTSTEPSREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOMSOPENAPIPROJECTSTEPSREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeOmsOpenAPIProjectStepsRequest : public RpcServiceRequest {
+public:
+	DescribeOmsOpenAPIProjectStepsRequest();
+	~DescribeOmsOpenAPIProjectStepsRequest();
+	int getPageNumber() const;
+	void setPageNumber(int pageNumber);
+	int getPageSize() const;
+	void setPageSize(int pageSize);
+	std::string getWorkerGradeId() const;
+	void setWorkerGradeId(const std::string &workerGradeId);
+	std::string getProjectId() const;
+	void setProjectId(const std::string &projectId);
+
+private:
+	int pageNumber_;
+	int pageSize_;
+	std::string workerGradeId_;
+	std::string projectId_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOMSOPENAPIPROJECTSTEPSREQUEST_H_

+ 137 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOmsOpenAPIProjectStepsResult.h

@@ -0,0 +1,137 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_DESCRIBEOMSOPENAPIPROJECTSTEPSRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOMSOPENAPIPROJECTSTEPSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeOmsOpenAPIProjectStepsResult : public ServiceResult
+			{
+			public:
+				struct ErrorDetail1
+				{
+					std::string message;
+					std::string level;
+					std::string code;
+					std::string proposal;
+				};
+				struct DataItem
+				{
+					struct StepInfo
+					{
+						struct ConnectorFullProgressOverview
+						{
+							int progress;
+							long finishedCount;
+							long estimatedRemainingTimeOfSec;
+							long estimatedTotalCount;
+						};
+						long srcRt;
+						ConnectorFullProgressOverview connectorFullProgressOverview;
+						bool validated;
+						long dstRps;
+						long dstIops;
+						long dstRtRef;
+						long inconsistencies;
+						bool skipped;
+						long srcRps;
+						std::string deployId;
+						long srcIopsRef;
+						long srcIops;
+						long srcRpsRef;
+						long gmt;
+						long processedRecords;
+						std::string checkpoint;
+						long dstRt;
+						long capacity;
+						long dstRpsRef;
+						long incrTimestampCheckpoint;
+						long srcRtRef;
+						std::string jobId;
+					};
+					struct ExtraInfo
+					{
+						struct ErrorDetail
+						{
+							std::string message;
+							std::string level;
+							std::string code;
+							std::string proposal;
+						};
+						std::string errorMsg;
+						std::string errorParam;
+						std::vector<ErrorDetail> errorDetails;
+						std::string errorCode;
+						std::string failedTime;
+					};
+					StepInfo stepInfo;
+					std::string finishTime;
+					long estimatedRemainingSeconds;
+					bool interactive;
+					std::string startTime;
+					int stepOrder;
+					ExtraInfo extraInfo;
+					std::string stepName;
+					std::string stepDescription;
+					std::string stepStatus;
+					int stepProgress;
+				};
+
+
+				DescribeOmsOpenAPIProjectStepsResult();
+				explicit DescribeOmsOpenAPIProjectStepsResult(const std::string &payload);
+				~DescribeOmsOpenAPIProjectStepsResult();
+				long getTotalCount()const;
+				std::string getMessage()const;
+				int getPageSize()const;
+				int getPageNumber()const;
+				ErrorDetail1 getErrorDetail1()const;
+				std::vector<DataItem> getData()const;
+				std::string getAdvice()const;
+				std::string getCode()const;
+				std::string getCost()const;
+				bool getSuccess()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				long totalCount_;
+				std::string message_;
+				int pageSize_;
+				int pageNumber_;
+				ErrorDetail1 errorDetail1_;
+				std::vector<DataItem> data_;
+				std::string advice_;
+				std::string code_;
+				std::string cost_;
+				bool success_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOMSOPENAPIPROJECTSTEPSRESULT_H_

+ 57 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOutlineBindingRequest.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_OCEANBASEPRO_MODEL_DESCRIBEOUTLINEBINDINGREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOUTLINEBINDINGREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeOutlineBindingRequest : public RpcServiceRequest {
+public:
+	DescribeOutlineBindingRequest();
+	~DescribeOutlineBindingRequest();
+	std::string getSQLId() const;
+	void setSQLId(const std::string &sQLId);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	std::string getDatabaseName() const;
+	void setDatabaseName(const std::string &databaseName);
+	std::string getTenantId() const;
+	void setTenantId(const std::string &tenantId);
+	std::string getTableName() const;
+	void setTableName(const std::string &tableName);
+	bool getIsConcurrentLimit() const;
+	void setIsConcurrentLimit(bool isConcurrentLimit);
+
+private:
+	std::string sQLId_;
+	std::string instanceId_;
+	std::string databaseName_;
+	std::string tenantId_;
+	std::string tableName_;
+	bool isConcurrentLimit_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOUTLINEBINDINGREQUEST_H_

+ 59 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeOutlineBindingResult.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_OCEANBASEPRO_MODEL_DESCRIBEOUTLINEBINDINGRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOUTLINEBINDINGRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeOutlineBindingResult : public ServiceResult
+			{
+			public:
+				struct OutlineBinding
+				{
+					std::string tableName;
+					int maxConcurrent;
+					long outlineId;
+					std::string bindPlan;
+					std::string bindIndex;
+				};
+
+
+				DescribeOutlineBindingResult();
+				explicit DescribeOutlineBindingResult(const std::string &payload);
+				~DescribeOutlineBindingResult();
+				OutlineBinding getOutlineBinding()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				OutlineBinding outlineBinding_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEOUTLINEBINDINGRESULT_H_

+ 60 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeParametersHistoryRequest.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_OCEANBASEPRO_MODEL_DESCRIBEPARAMETERSHISTORYREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEPARAMETERSHISTORYREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeParametersHistoryRequest : public RpcServiceRequest {
+public:
+	DescribeParametersHistoryRequest();
+	~DescribeParametersHistoryRequest();
+	std::string getStartTime() const;
+	void setStartTime(const std::string &startTime);
+	int getPageNumber() const;
+	void setPageNumber(int pageNumber);
+	std::string getDimensionValue() const;
+	void setDimensionValue(const std::string &dimensionValue);
+	int getPageSize() const;
+	void setPageSize(int pageSize);
+	std::string getDimension() const;
+	void setDimension(const std::string &dimension);
+	std::string getEndTime() const;
+	void setEndTime(const std::string &endTime);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+
+private:
+	std::string startTime_;
+	int pageNumber_;
+	std::string dimensionValue_;
+	int pageSize_;
+	std::string dimension_;
+	std::string endTime_;
+	std::string instanceId_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEPARAMETERSHISTORYREQUEST_H_

+ 67 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeParametersHistoryResult.h

@@ -0,0 +1,67 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_DESCRIBEPARAMETERSHISTORYRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEPARAMETERSHISTORYRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeParametersHistoryResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					struct ParametersItem
+					{
+						std::string status;
+						std::string dimensionValue;
+						std::string oldValue;
+						std::string createTime;
+						std::string updateTime;
+						std::string newValue;
+						std::string name;
+					};
+					int totalCount;
+					std::vector<Data::ParametersItem> parameters;
+					int pageNumber;
+				};
+
+
+				DescribeParametersHistoryResult();
+				explicit DescribeParametersHistoryResult(const std::string &payload);
+				~DescribeParametersHistoryResult();
+				std::vector<Data> getRespond()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<Data> respond_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEPARAMETERSHISTORYRESULT_H_

+ 48 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeParametersRequest.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_OCEANBASEPRO_MODEL_DESCRIBEPARAMETERSREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEPARAMETERSREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeParametersRequest : public RpcServiceRequest {
+public:
+	DescribeParametersRequest();
+	~DescribeParametersRequest();
+	std::string getDimensionValue() const;
+	void setDimensionValue(const std::string &dimensionValue);
+	std::string getInstanceId() const;
+	void setInstanceId(const std::string &instanceId);
+	std::string getDimension() const;
+	void setDimension(const std::string &dimension);
+
+private:
+	std::string dimensionValue_;
+	std::string instanceId_;
+	std::string dimension_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEPARAMETERSREQUEST_H_

+ 64 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeParametersResult.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEPARAMETERSRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEPARAMETERSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeParametersResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					std::string defaultValue;
+					std::string description;
+					bool readonly;
+					std::string valueType;
+					std::vector<std::string> acceptableValue;
+					std::string currentValue;
+					bool needReboot;
+					std::string unit;
+					std::string name;
+					std::vector<std::string> rejectedValue;
+				};
+
+
+				DescribeParametersResult();
+				explicit DescribeParametersResult(const std::string &payload);
+				~DescribeParametersResult();
+				std::vector<Data> getParameters()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<Data> parameters_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEPARAMETERSRESULT_H_

+ 42 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeProjectComponentsRequest.h

@@ -0,0 +1,42 @@
+/*
+ * 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_OCEANBASEPRO_MODEL_DESCRIBEPROJECTCOMPONENTSREQUEST_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEPROJECTCOMPONENTSREQUEST_H_
+
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace OceanBasePro {
+namespace Model {
+class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeProjectComponentsRequest : public RpcServiceRequest {
+public:
+	DescribeProjectComponentsRequest();
+	~DescribeProjectComponentsRequest();
+	std::string getId() const;
+	void setId(const std::string &id);
+
+private:
+	std::string id_;
+};
+} // namespace Model
+} // namespace OceanBasePro
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEPROJECTCOMPONENTSREQUEST_H_

+ 49 - 0
oceanbasepro/include/alibabacloud/oceanbasepro/model/DescribeProjectComponentsResult.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_OCEANBASEPRO_MODEL_DESCRIBEPROJECTCOMPONENTSRESULT_H_
+#define ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEPROJECTCOMPONENTSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/oceanbasepro/OceanBaseProExport.h>
+
+namespace AlibabaCloud
+{
+	namespace OceanBasePro
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_OCEANBASEPRO_EXPORT DescribeProjectComponentsResult : public ServiceResult
+			{
+			public:
+
+
+				DescribeProjectComponentsResult();
+				explicit DescribeProjectComponentsResult(const std::string &payload);
+				~DescribeProjectComponentsResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_OCEANBASEPRO_MODEL_DESCRIBEPROJECTCOMPONENTSRESULT_H_

Daži faili netika attēloti, jo izmaiņu fails ir pārāk liels