فهرست منبع

由治世发起的CS SDK自动发布, BUILD_ID=442, 版本号:1.2.0

Signed-off-by: haowei.yao <haowei.yao@alibaba-inc.com>
haowei.yao 8 سال پیش
والد
کامیت
a83c6f6c79
100فایلهای تغییر یافته به همراه6718 افزوده شده و 2 حذف شده
  1. 3 0
      CHANGELOG
  2. 2 1
      CMakeLists.txt
  3. 1 1
      VERSION
  4. 250 0
      cs/CMakeLists.txt
  5. 383 0
      cs/include/alibabacloud/cs/CSClient.h
  6. 32 0
      cs/include/alibabacloud/cs/CSExport.h
  7. 45 0
      cs/include/alibabacloud/cs/model/AddAgilityClusterRequest.h
  8. 49 0
      cs/include/alibabacloud/cs/model/AddAgilityClusterResult.h
  9. 48 0
      cs/include/alibabacloud/cs/model/AttachInstancesRequest.h
  10. 49 0
      cs/include/alibabacloud/cs/model/AttachInstancesResult.h
  11. 51 0
      cs/include/alibabacloud/cs/model/CallBackAgilityClusterRequest.h
  12. 49 0
      cs/include/alibabacloud/cs/model/CallBackAgilityClusterResult.h
  13. 51 0
      cs/include/alibabacloud/cs/model/CallbackClusterTokenRequest.h
  14. 49 0
      cs/include/alibabacloud/cs/model/CallbackClusterTokenResult.h
  15. 45 0
      cs/include/alibabacloud/cs/model/CheckAliyunCSServiceRoleRequest.h
  16. 49 0
      cs/include/alibabacloud/cs/model/CheckAliyunCSServiceRoleResult.h
  17. 45 0
      cs/include/alibabacloud/cs/model/CreateClusterRequest.h
  18. 49 0
      cs/include/alibabacloud/cs/model/CreateClusterResult.h
  19. 48 0
      cs/include/alibabacloud/cs/model/CreateClusterTokenRequest.h
  20. 49 0
      cs/include/alibabacloud/cs/model/CreateClusterTokenResult.h
  21. 45 0
      cs/include/alibabacloud/cs/model/CreateTemplateRequest.h
  22. 49 0
      cs/include/alibabacloud/cs/model/CreateTemplateResult.h
  23. 57 0
      cs/include/alibabacloud/cs/model/DeleteClusterNodeRequest.h
  24. 49 0
      cs/include/alibabacloud/cs/model/DeleteClusterNodeResult.h
  25. 48 0
      cs/include/alibabacloud/cs/model/DeleteClusterRequest.h
  26. 49 0
      cs/include/alibabacloud/cs/model/DeleteClusterResult.h
  27. 48 0
      cs/include/alibabacloud/cs/model/DescribeAgilityTunnelAgentInfoRequest.h
  28. 49 0
      cs/include/alibabacloud/cs/model/DescribeAgilityTunnelAgentInfoResult.h
  29. 48 0
      cs/include/alibabacloud/cs/model/DescribeAgilityTunnelCertsRequest.h
  30. 49 0
      cs/include/alibabacloud/cs/model/DescribeAgilityTunnelCertsResult.h
  31. 45 0
      cs/include/alibabacloud/cs/model/DescribeApiVersionRequest.h
  32. 49 0
      cs/include/alibabacloud/cs/model/DescribeApiVersionResult.h
  33. 48 0
      cs/include/alibabacloud/cs/model/DescribeClusterCertsRequest.h
  34. 49 0
      cs/include/alibabacloud/cs/model/DescribeClusterCertsResult.h
  35. 48 0
      cs/include/alibabacloud/cs/model/DescribeClusterDetailRequest.h
  36. 49 0
      cs/include/alibabacloud/cs/model/DescribeClusterDetailResult.h
  37. 48 0
      cs/include/alibabacloud/cs/model/DescribeClusterHostsRequest.h
  38. 49 0
      cs/include/alibabacloud/cs/model/DescribeClusterHostsResult.h
  39. 48 0
      cs/include/alibabacloud/cs/model/DescribeClusterLogsRequest.h
  40. 49 0
      cs/include/alibabacloud/cs/model/DescribeClusterLogsResult.h
  41. 48 0
      cs/include/alibabacloud/cs/model/DescribeClusterNodeInfoRequest.h
  42. 49 0
      cs/include/alibabacloud/cs/model/DescribeClusterNodeInfoResult.h
  43. 51 0
      cs/include/alibabacloud/cs/model/DescribeClusterNodeInfoWithInstanceRequest.h
  44. 49 0
      cs/include/alibabacloud/cs/model/DescribeClusterNodeInfoWithInstanceResult.h
  45. 54 0
      cs/include/alibabacloud/cs/model/DescribeClusterNodesRequest.h
  46. 49 0
      cs/include/alibabacloud/cs/model/DescribeClusterNodesResult.h
  47. 48 0
      cs/include/alibabacloud/cs/model/DescribeClusterScaledNodeRequest.h
  48. 49 0
      cs/include/alibabacloud/cs/model/DescribeClusterScaledNodeResult.h
  49. 48 0
      cs/include/alibabacloud/cs/model/DescribeClusterServicesRequest.h
  50. 49 0
      cs/include/alibabacloud/cs/model/DescribeClusterServicesResult.h
  51. 48 0
      cs/include/alibabacloud/cs/model/DescribeClusterTokensRequest.h
  52. 49 0
      cs/include/alibabacloud/cs/model/DescribeClusterTokensResult.h
  53. 51 0
      cs/include/alibabacloud/cs/model/DescribeClustersRequest.h
  54. 49 0
      cs/include/alibabacloud/cs/model/DescribeClustersResult.h
  55. 54 0
      cs/include/alibabacloud/cs/model/DescribeImagesRequest.h
  56. 49 0
      cs/include/alibabacloud/cs/model/DescribeImagesResult.h
  57. 51 0
      cs/include/alibabacloud/cs/model/DescribeServiceContainersRequest.h
  58. 49 0
      cs/include/alibabacloud/cs/model/DescribeServiceContainersResult.h
  59. 48 0
      cs/include/alibabacloud/cs/model/DescribeTaskInfoRequest.h
  60. 49 0
      cs/include/alibabacloud/cs/model/DescribeTaskInfoResult.h
  61. 48 0
      cs/include/alibabacloud/cs/model/DescribeTemplateAttributeRequest.h
  62. 49 0
      cs/include/alibabacloud/cs/model/DescribeTemplateAttributeResult.h
  63. 45 0
      cs/include/alibabacloud/cs/model/DescribeTemplatesRequest.h
  64. 49 0
      cs/include/alibabacloud/cs/model/DescribeTemplatesResult.h
  65. 51 0
      cs/include/alibabacloud/cs/model/DescribeUserContainersRequest.h
  66. 49 0
      cs/include/alibabacloud/cs/model/DescribeUserContainersResult.h
  67. 51 0
      cs/include/alibabacloud/cs/model/DownloadClusterNodeCertsRequest.h
  68. 49 0
      cs/include/alibabacloud/cs/model/DownloadClusterNodeCertsResult.h
  69. 48 0
      cs/include/alibabacloud/cs/model/GatherLogsTokenRequest.h
  70. 49 0
      cs/include/alibabacloud/cs/model/GatherLogsTokenResult.h
  71. 48 0
      cs/include/alibabacloud/cs/model/GetClusterProjectsRequest.h
  72. 49 0
      cs/include/alibabacloud/cs/model/GetClusterProjectsResult.h
  73. 51 0
      cs/include/alibabacloud/cs/model/GetProjectEventsRequest.h
  74. 49 0
      cs/include/alibabacloud/cs/model/GetProjectEventsResult.h
  75. 51 0
      cs/include/alibabacloud/cs/model/GetTriggerHookRequest.h
  76. 49 0
      cs/include/alibabacloud/cs/model/GetTriggerHookResult.h
  77. 45 0
      cs/include/alibabacloud/cs/model/ModifyClusterNameRequest.h
  78. 49 0
      cs/include/alibabacloud/cs/model/ModifyClusterNameResult.h
  79. 51 0
      cs/include/alibabacloud/cs/model/ResetClusterNodeRequest.h
  80. 49 0
      cs/include/alibabacloud/cs/model/ResetClusterNodeResult.h
  81. 48 0
      cs/include/alibabacloud/cs/model/RevokeClusterTokenRequest.h
  82. 49 0
      cs/include/alibabacloud/cs/model/RevokeClusterTokenResult.h
  83. 48 0
      cs/include/alibabacloud/cs/model/ScaleClusterRequest.h
  84. 49 0
      cs/include/alibabacloud/cs/model/ScaleClusterResult.h
  85. 48 0
      cs/include/alibabacloud/cs/model/ScaleInClusterRequest.h
  86. 49 0
      cs/include/alibabacloud/cs/model/ScaleInClusterResult.h
  87. 45 0
      cs/include/alibabacloud/cs/model/UpdateSubUserResoucesRequest.h
  88. 49 0
      cs/include/alibabacloud/cs/model/UpdateSubUserResoucesResult.h
  89. 51 0
      cs/include/alibabacloud/cs/model/UpgradeClusterComponentsRequest.h
  90. 49 0
      cs/include/alibabacloud/cs/model/UpgradeClusterComponentsResult.h
  91. 1573 0
      cs/src/CSClient.cc
  92. 27 0
      cs/src/model/AddAgilityClusterRequest.cc
  93. 45 0
      cs/src/model/AddAgilityClusterResult.cc
  94. 38 0
      cs/src/model/AttachInstancesRequest.cc
  95. 45 0
      cs/src/model/AttachInstancesResult.cc
  96. 49 0
      cs/src/model/CallBackAgilityClusterRequest.cc
  97. 45 0
      cs/src/model/CallBackAgilityClusterResult.cc
  98. 49 0
      cs/src/model/CallbackClusterTokenRequest.cc
  99. 45 0
      cs/src/model/CallbackClusterTokenResult.cc
  100. 27 0
      cs/src/model/CheckAliyunCSServiceRoleRequest.cc

+ 3 - 0
CHANGELOG

@@ -1,3 +1,6 @@
+2018-02-27 Version: 1.2.0
+1, add new api DescribeClusters,DescribeClusterLogs,DescribeClusterNodes,UpgradeClusterComponents
+
 2018-02-09 Version: 1.1.0
 1, Aliyun E-HPC service SDK, initial version.
 2, Include APIs of E-HPC clusters, nodes, users, jobs, job templates etc.

+ 2 - 1
CMakeLists.txt

@@ -61,4 +61,5 @@ add_subdirectory(tesladam)
 add_subdirectory(cms)
 add_subdirectory(afs)
 add_subdirectory(aegis)
-add_subdirectory(ehpc)
+add_subdirectory(ehpc)
+add_subdirectory(cs)

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.1.0
+1.2.0

+ 250 - 0
cs/CMakeLists.txt

@@ -0,0 +1,250 @@
+#
+# 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(cs_public_header 
+	include/alibabacloud/cs/CSClient.h
+	include/alibabacloud/cs/CSExport.h )
+
+set(cs_public_header_model 
+	include/alibabacloud/cs/model/AttachInstancesRequest.h
+	include/alibabacloud/cs/model/AttachInstancesResult.h
+	include/alibabacloud/cs/model/CallbackClusterTokenRequest.h
+	include/alibabacloud/cs/model/CallbackClusterTokenResult.h
+	include/alibabacloud/cs/model/DescribeTemplatesRequest.h
+	include/alibabacloud/cs/model/DescribeTemplatesResult.h
+	include/alibabacloud/cs/model/GetProjectEventsRequest.h
+	include/alibabacloud/cs/model/GetProjectEventsResult.h
+	include/alibabacloud/cs/model/CheckAliyunCSServiceRoleRequest.h
+	include/alibabacloud/cs/model/CheckAliyunCSServiceRoleResult.h
+	include/alibabacloud/cs/model/DescribeTemplateAttributeRequest.h
+	include/alibabacloud/cs/model/DescribeTemplateAttributeResult.h
+	include/alibabacloud/cs/model/CreateTemplateRequest.h
+	include/alibabacloud/cs/model/CreateTemplateResult.h
+	include/alibabacloud/cs/model/DescribeClusterCertsRequest.h
+	include/alibabacloud/cs/model/DescribeClusterCertsResult.h
+	include/alibabacloud/cs/model/DeleteClusterRequest.h
+	include/alibabacloud/cs/model/DeleteClusterResult.h
+	include/alibabacloud/cs/model/DescribeClusterNodesRequest.h
+	include/alibabacloud/cs/model/DescribeClusterNodesResult.h
+	include/alibabacloud/cs/model/CallBackAgilityClusterRequest.h
+	include/alibabacloud/cs/model/CallBackAgilityClusterResult.h
+	include/alibabacloud/cs/model/DescribeClusterScaledNodeRequest.h
+	include/alibabacloud/cs/model/DescribeClusterScaledNodeResult.h
+	include/alibabacloud/cs/model/DescribeClusterLogsRequest.h
+	include/alibabacloud/cs/model/DescribeClusterLogsResult.h
+	include/alibabacloud/cs/model/DescribeClusterDetailRequest.h
+	include/alibabacloud/cs/model/DescribeClusterDetailResult.h
+	include/alibabacloud/cs/model/ResetClusterNodeRequest.h
+	include/alibabacloud/cs/model/ResetClusterNodeResult.h
+	include/alibabacloud/cs/model/DescribeServiceContainersRequest.h
+	include/alibabacloud/cs/model/DescribeServiceContainersResult.h
+	include/alibabacloud/cs/model/DescribeTaskInfoRequest.h
+	include/alibabacloud/cs/model/DescribeTaskInfoResult.h
+	include/alibabacloud/cs/model/GetClusterProjectsRequest.h
+	include/alibabacloud/cs/model/GetClusterProjectsResult.h
+	include/alibabacloud/cs/model/DescribeClusterServicesRequest.h
+	include/alibabacloud/cs/model/DescribeClusterServicesResult.h
+	include/alibabacloud/cs/model/ScaleInClusterRequest.h
+	include/alibabacloud/cs/model/ScaleInClusterResult.h
+	include/alibabacloud/cs/model/DeleteClusterNodeRequest.h
+	include/alibabacloud/cs/model/DeleteClusterNodeResult.h
+	include/alibabacloud/cs/model/RevokeClusterTokenRequest.h
+	include/alibabacloud/cs/model/RevokeClusterTokenResult.h
+	include/alibabacloud/cs/model/DescribeClustersRequest.h
+	include/alibabacloud/cs/model/DescribeClustersResult.h
+	include/alibabacloud/cs/model/AddAgilityClusterRequest.h
+	include/alibabacloud/cs/model/AddAgilityClusterResult.h
+	include/alibabacloud/cs/model/DescribeImagesRequest.h
+	include/alibabacloud/cs/model/DescribeImagesResult.h
+	include/alibabacloud/cs/model/GetTriggerHookRequest.h
+	include/alibabacloud/cs/model/GetTriggerHookResult.h
+	include/alibabacloud/cs/model/DescribeClusterTokensRequest.h
+	include/alibabacloud/cs/model/DescribeClusterTokensResult.h
+	include/alibabacloud/cs/model/UpdateSubUserResoucesRequest.h
+	include/alibabacloud/cs/model/UpdateSubUserResoucesResult.h
+	include/alibabacloud/cs/model/ModifyClusterNameRequest.h
+	include/alibabacloud/cs/model/ModifyClusterNameResult.h
+	include/alibabacloud/cs/model/DescribeClusterHostsRequest.h
+	include/alibabacloud/cs/model/DescribeClusterHostsResult.h
+	include/alibabacloud/cs/model/DescribeApiVersionRequest.h
+	include/alibabacloud/cs/model/DescribeApiVersionResult.h
+	include/alibabacloud/cs/model/GatherLogsTokenRequest.h
+	include/alibabacloud/cs/model/GatherLogsTokenResult.h
+	include/alibabacloud/cs/model/CreateClusterTokenRequest.h
+	include/alibabacloud/cs/model/CreateClusterTokenResult.h
+	include/alibabacloud/cs/model/DescribeUserContainersRequest.h
+	include/alibabacloud/cs/model/DescribeUserContainersResult.h
+	include/alibabacloud/cs/model/DescribeAgilityTunnelAgentInfoRequest.h
+	include/alibabacloud/cs/model/DescribeAgilityTunnelAgentInfoResult.h
+	include/alibabacloud/cs/model/DescribeClusterNodeInfoRequest.h
+	include/alibabacloud/cs/model/DescribeClusterNodeInfoResult.h
+	include/alibabacloud/cs/model/ScaleClusterRequest.h
+	include/alibabacloud/cs/model/ScaleClusterResult.h
+	include/alibabacloud/cs/model/DescribeAgilityTunnelCertsRequest.h
+	include/alibabacloud/cs/model/DescribeAgilityTunnelCertsResult.h
+	include/alibabacloud/cs/model/DescribeClusterNodeInfoWithInstanceRequest.h
+	include/alibabacloud/cs/model/DescribeClusterNodeInfoWithInstanceResult.h
+	include/alibabacloud/cs/model/UpgradeClusterComponentsRequest.h
+	include/alibabacloud/cs/model/UpgradeClusterComponentsResult.h
+	include/alibabacloud/cs/model/DownloadClusterNodeCertsRequest.h
+	include/alibabacloud/cs/model/DownloadClusterNodeCertsResult.h
+	include/alibabacloud/cs/model/CreateClusterRequest.h
+	include/alibabacloud/cs/model/CreateClusterResult.h )
+
+set(cs_src 
+	src/CSClient.cc
+	src/model/AttachInstancesRequest.cc
+	src/model/AttachInstancesResult.cc
+	src/model/CallbackClusterTokenRequest.cc
+	src/model/CallbackClusterTokenResult.cc
+	src/model/DescribeTemplatesRequest.cc
+	src/model/DescribeTemplatesResult.cc
+	src/model/GetProjectEventsRequest.cc
+	src/model/GetProjectEventsResult.cc
+	src/model/CheckAliyunCSServiceRoleRequest.cc
+	src/model/CheckAliyunCSServiceRoleResult.cc
+	src/model/DescribeTemplateAttributeRequest.cc
+	src/model/DescribeTemplateAttributeResult.cc
+	src/model/CreateTemplateRequest.cc
+	src/model/CreateTemplateResult.cc
+	src/model/DescribeClusterCertsRequest.cc
+	src/model/DescribeClusterCertsResult.cc
+	src/model/DeleteClusterRequest.cc
+	src/model/DeleteClusterResult.cc
+	src/model/DescribeClusterNodesRequest.cc
+	src/model/DescribeClusterNodesResult.cc
+	src/model/CallBackAgilityClusterRequest.cc
+	src/model/CallBackAgilityClusterResult.cc
+	src/model/DescribeClusterScaledNodeRequest.cc
+	src/model/DescribeClusterScaledNodeResult.cc
+	src/model/DescribeClusterLogsRequest.cc
+	src/model/DescribeClusterLogsResult.cc
+	src/model/DescribeClusterDetailRequest.cc
+	src/model/DescribeClusterDetailResult.cc
+	src/model/ResetClusterNodeRequest.cc
+	src/model/ResetClusterNodeResult.cc
+	src/model/DescribeServiceContainersRequest.cc
+	src/model/DescribeServiceContainersResult.cc
+	src/model/DescribeTaskInfoRequest.cc
+	src/model/DescribeTaskInfoResult.cc
+	src/model/GetClusterProjectsRequest.cc
+	src/model/GetClusterProjectsResult.cc
+	src/model/DescribeClusterServicesRequest.cc
+	src/model/DescribeClusterServicesResult.cc
+	src/model/ScaleInClusterRequest.cc
+	src/model/ScaleInClusterResult.cc
+	src/model/DeleteClusterNodeRequest.cc
+	src/model/DeleteClusterNodeResult.cc
+	src/model/RevokeClusterTokenRequest.cc
+	src/model/RevokeClusterTokenResult.cc
+	src/model/DescribeClustersRequest.cc
+	src/model/DescribeClustersResult.cc
+	src/model/AddAgilityClusterRequest.cc
+	src/model/AddAgilityClusterResult.cc
+	src/model/DescribeImagesRequest.cc
+	src/model/DescribeImagesResult.cc
+	src/model/GetTriggerHookRequest.cc
+	src/model/GetTriggerHookResult.cc
+	src/model/DescribeClusterTokensRequest.cc
+	src/model/DescribeClusterTokensResult.cc
+	src/model/UpdateSubUserResoucesRequest.cc
+	src/model/UpdateSubUserResoucesResult.cc
+	src/model/ModifyClusterNameRequest.cc
+	src/model/ModifyClusterNameResult.cc
+	src/model/DescribeClusterHostsRequest.cc
+	src/model/DescribeClusterHostsResult.cc
+	src/model/DescribeApiVersionRequest.cc
+	src/model/DescribeApiVersionResult.cc
+	src/model/GatherLogsTokenRequest.cc
+	src/model/GatherLogsTokenResult.cc
+	src/model/CreateClusterTokenRequest.cc
+	src/model/CreateClusterTokenResult.cc
+	src/model/DescribeUserContainersRequest.cc
+	src/model/DescribeUserContainersResult.cc
+	src/model/DescribeAgilityTunnelAgentInfoRequest.cc
+	src/model/DescribeAgilityTunnelAgentInfoResult.cc
+	src/model/DescribeClusterNodeInfoRequest.cc
+	src/model/DescribeClusterNodeInfoResult.cc
+	src/model/ScaleClusterRequest.cc
+	src/model/ScaleClusterResult.cc
+	src/model/DescribeAgilityTunnelCertsRequest.cc
+	src/model/DescribeAgilityTunnelCertsResult.cc
+	src/model/DescribeClusterNodeInfoWithInstanceRequest.cc
+	src/model/DescribeClusterNodeInfoWithInstanceResult.cc
+	src/model/UpgradeClusterComponentsRequest.cc
+	src/model/UpgradeClusterComponentsResult.cc
+	src/model/DownloadClusterNodeCertsRequest.cc
+	src/model/DownloadClusterNodeCertsResult.cc
+	src/model/CreateClusterRequest.cc
+	src/model/CreateClusterResult.cc )
+
+add_library(cs ${LIB_TYPE}
+	${cs_public_header}
+	${cs_public_header_model}
+	${cs_src})
+
+set_target_properties(cs
+	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}cs
+	)
+
+if(${LIB_TYPE} STREQUAL "SHARED")
+	set_target_properties(cs
+		PROPERTIES
+		DEFINE_SYMBOL ALIBABACLOUD_CS_LIBRARY)
+endif()
+
+target_include_directories(cs
+	PRIVATE include
+		${CMAKE_SOURCE_DIR}/core/include
+	)
+target_link_libraries(cs
+	core)
+
+if(CMAKE_HOST_WIN32)
+	ExternalProject_Get_Property(jsoncpp INSTALL_DIR)
+	set(jsoncpp_install_dir ${INSTALL_DIR})
+	add_dependencies(cs
+		jsoncpp)
+	target_include_directories(cs
+		PRIVATE	${jsoncpp_install_dir}/include)
+	target_link_libraries(cs
+		${jsoncpp_install_dir}/lib/jsoncpp.lib)
+	set_target_properties(cs
+    	PROPERTIES
+    		COMPILE_OPTIONS "/bigobj")
+else()
+	target_include_directories(cs
+		PRIVATE /usr/include/jsoncpp)
+	target_link_libraries(cs
+		jsoncpp)
+endif()
+
+install(FILES ${cs_public_header}
+	DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/alibabacloud/cs)
+install(FILES ${cs_public_header_model}
+	DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/alibabacloud/cs/model)
+install(TARGETS cs
+	ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+	LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+	RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+	)

+ 383 - 0
cs/include/alibabacloud/cs/CSClient.h

@@ -0,0 +1,383 @@
+/*
+ * 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_CS_CSCLIENT_H_
+#define ALIBABACLOUD_CS_CSCLIENT_H_
+
+#include <future>
+#include <alibabacloud/core/AsyncCallerContext.h>
+#include <alibabacloud/core/EndpointProvider.h>
+#include <alibabacloud/core/RoaServiceClient.h>
+#include "CSExport.h"
+#include "model/AttachInstancesRequest.h"
+#include "model/AttachInstancesResult.h"
+#include "model/CallbackClusterTokenRequest.h"
+#include "model/CallbackClusterTokenResult.h"
+#include "model/DescribeTemplatesRequest.h"
+#include "model/DescribeTemplatesResult.h"
+#include "model/GetProjectEventsRequest.h"
+#include "model/GetProjectEventsResult.h"
+#include "model/CheckAliyunCSServiceRoleRequest.h"
+#include "model/CheckAliyunCSServiceRoleResult.h"
+#include "model/DescribeTemplateAttributeRequest.h"
+#include "model/DescribeTemplateAttributeResult.h"
+#include "model/CreateTemplateRequest.h"
+#include "model/CreateTemplateResult.h"
+#include "model/DescribeClusterCertsRequest.h"
+#include "model/DescribeClusterCertsResult.h"
+#include "model/DeleteClusterRequest.h"
+#include "model/DeleteClusterResult.h"
+#include "model/DescribeClusterNodesRequest.h"
+#include "model/DescribeClusterNodesResult.h"
+#include "model/CallBackAgilityClusterRequest.h"
+#include "model/CallBackAgilityClusterResult.h"
+#include "model/DescribeClusterScaledNodeRequest.h"
+#include "model/DescribeClusterScaledNodeResult.h"
+#include "model/DescribeClusterLogsRequest.h"
+#include "model/DescribeClusterLogsResult.h"
+#include "model/DescribeClusterDetailRequest.h"
+#include "model/DescribeClusterDetailResult.h"
+#include "model/ResetClusterNodeRequest.h"
+#include "model/ResetClusterNodeResult.h"
+#include "model/DescribeServiceContainersRequest.h"
+#include "model/DescribeServiceContainersResult.h"
+#include "model/DescribeTaskInfoRequest.h"
+#include "model/DescribeTaskInfoResult.h"
+#include "model/GetClusterProjectsRequest.h"
+#include "model/GetClusterProjectsResult.h"
+#include "model/DescribeClusterServicesRequest.h"
+#include "model/DescribeClusterServicesResult.h"
+#include "model/ScaleInClusterRequest.h"
+#include "model/ScaleInClusterResult.h"
+#include "model/DeleteClusterNodeRequest.h"
+#include "model/DeleteClusterNodeResult.h"
+#include "model/RevokeClusterTokenRequest.h"
+#include "model/RevokeClusterTokenResult.h"
+#include "model/DescribeClustersRequest.h"
+#include "model/DescribeClustersResult.h"
+#include "model/AddAgilityClusterRequest.h"
+#include "model/AddAgilityClusterResult.h"
+#include "model/DescribeImagesRequest.h"
+#include "model/DescribeImagesResult.h"
+#include "model/GetTriggerHookRequest.h"
+#include "model/GetTriggerHookResult.h"
+#include "model/DescribeClusterTokensRequest.h"
+#include "model/DescribeClusterTokensResult.h"
+#include "model/UpdateSubUserResoucesRequest.h"
+#include "model/UpdateSubUserResoucesResult.h"
+#include "model/ModifyClusterNameRequest.h"
+#include "model/ModifyClusterNameResult.h"
+#include "model/DescribeClusterHostsRequest.h"
+#include "model/DescribeClusterHostsResult.h"
+#include "model/DescribeApiVersionRequest.h"
+#include "model/DescribeApiVersionResult.h"
+#include "model/GatherLogsTokenRequest.h"
+#include "model/GatherLogsTokenResult.h"
+#include "model/CreateClusterTokenRequest.h"
+#include "model/CreateClusterTokenResult.h"
+#include "model/DescribeUserContainersRequest.h"
+#include "model/DescribeUserContainersResult.h"
+#include "model/DescribeAgilityTunnelAgentInfoRequest.h"
+#include "model/DescribeAgilityTunnelAgentInfoResult.h"
+#include "model/DescribeClusterNodeInfoRequest.h"
+#include "model/DescribeClusterNodeInfoResult.h"
+#include "model/ScaleClusterRequest.h"
+#include "model/ScaleClusterResult.h"
+#include "model/DescribeAgilityTunnelCertsRequest.h"
+#include "model/DescribeAgilityTunnelCertsResult.h"
+#include "model/DescribeClusterNodeInfoWithInstanceRequest.h"
+#include "model/DescribeClusterNodeInfoWithInstanceResult.h"
+#include "model/UpgradeClusterComponentsRequest.h"
+#include "model/UpgradeClusterComponentsResult.h"
+#include "model/DownloadClusterNodeCertsRequest.h"
+#include "model/DownloadClusterNodeCertsResult.h"
+#include "model/CreateClusterRequest.h"
+#include "model/CreateClusterResult.h"
+
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		class ALIBABACLOUD_CS_EXPORT CSClient : public RoaServiceClient
+		{
+		public:
+			typedef Outcome<Error, Model::AttachInstancesResult> AttachInstancesOutcome;			
+			typedef std::future<AttachInstancesOutcome> AttachInstancesOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::AttachInstancesRequest&, const AttachInstancesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AttachInstancesAsyncHandler;
+			typedef Outcome<Error, Model::CallbackClusterTokenResult> CallbackClusterTokenOutcome;			
+			typedef std::future<CallbackClusterTokenOutcome> CallbackClusterTokenOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::CallbackClusterTokenRequest&, const CallbackClusterTokenOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CallbackClusterTokenAsyncHandler;
+			typedef Outcome<Error, Model::DescribeTemplatesResult> DescribeTemplatesOutcome;			
+			typedef std::future<DescribeTemplatesOutcome> DescribeTemplatesOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::DescribeTemplatesRequest&, const DescribeTemplatesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeTemplatesAsyncHandler;
+			typedef Outcome<Error, Model::GetProjectEventsResult> GetProjectEventsOutcome;			
+			typedef std::future<GetProjectEventsOutcome> GetProjectEventsOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::GetProjectEventsRequest&, const GetProjectEventsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetProjectEventsAsyncHandler;
+			typedef Outcome<Error, Model::CheckAliyunCSServiceRoleResult> CheckAliyunCSServiceRoleOutcome;			
+			typedef std::future<CheckAliyunCSServiceRoleOutcome> CheckAliyunCSServiceRoleOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::CheckAliyunCSServiceRoleRequest&, const CheckAliyunCSServiceRoleOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CheckAliyunCSServiceRoleAsyncHandler;
+			typedef Outcome<Error, Model::DescribeTemplateAttributeResult> DescribeTemplateAttributeOutcome;			
+			typedef std::future<DescribeTemplateAttributeOutcome> DescribeTemplateAttributeOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::DescribeTemplateAttributeRequest&, const DescribeTemplateAttributeOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeTemplateAttributeAsyncHandler;
+			typedef Outcome<Error, Model::CreateTemplateResult> CreateTemplateOutcome;			
+			typedef std::future<CreateTemplateOutcome> CreateTemplateOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::CreateTemplateRequest&, const CreateTemplateOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateTemplateAsyncHandler;
+			typedef Outcome<Error, Model::DescribeClusterCertsResult> DescribeClusterCertsOutcome;			
+			typedef std::future<DescribeClusterCertsOutcome> DescribeClusterCertsOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::DescribeClusterCertsRequest&, const DescribeClusterCertsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeClusterCertsAsyncHandler;
+			typedef Outcome<Error, Model::DeleteClusterResult> DeleteClusterOutcome;			
+			typedef std::future<DeleteClusterOutcome> DeleteClusterOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::DeleteClusterRequest&, const DeleteClusterOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteClusterAsyncHandler;
+			typedef Outcome<Error, Model::DescribeClusterNodesResult> DescribeClusterNodesOutcome;			
+			typedef std::future<DescribeClusterNodesOutcome> DescribeClusterNodesOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::DescribeClusterNodesRequest&, const DescribeClusterNodesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeClusterNodesAsyncHandler;
+			typedef Outcome<Error, Model::CallBackAgilityClusterResult> CallBackAgilityClusterOutcome;			
+			typedef std::future<CallBackAgilityClusterOutcome> CallBackAgilityClusterOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::CallBackAgilityClusterRequest&, const CallBackAgilityClusterOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CallBackAgilityClusterAsyncHandler;
+			typedef Outcome<Error, Model::DescribeClusterScaledNodeResult> DescribeClusterScaledNodeOutcome;			
+			typedef std::future<DescribeClusterScaledNodeOutcome> DescribeClusterScaledNodeOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::DescribeClusterScaledNodeRequest&, const DescribeClusterScaledNodeOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeClusterScaledNodeAsyncHandler;
+			typedef Outcome<Error, Model::DescribeClusterLogsResult> DescribeClusterLogsOutcome;			
+			typedef std::future<DescribeClusterLogsOutcome> DescribeClusterLogsOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::DescribeClusterLogsRequest&, const DescribeClusterLogsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeClusterLogsAsyncHandler;
+			typedef Outcome<Error, Model::DescribeClusterDetailResult> DescribeClusterDetailOutcome;			
+			typedef std::future<DescribeClusterDetailOutcome> DescribeClusterDetailOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::DescribeClusterDetailRequest&, const DescribeClusterDetailOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeClusterDetailAsyncHandler;
+			typedef Outcome<Error, Model::ResetClusterNodeResult> ResetClusterNodeOutcome;			
+			typedef std::future<ResetClusterNodeOutcome> ResetClusterNodeOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::ResetClusterNodeRequest&, const ResetClusterNodeOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ResetClusterNodeAsyncHandler;
+			typedef Outcome<Error, Model::DescribeServiceContainersResult> DescribeServiceContainersOutcome;			
+			typedef std::future<DescribeServiceContainersOutcome> DescribeServiceContainersOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::DescribeServiceContainersRequest&, const DescribeServiceContainersOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeServiceContainersAsyncHandler;
+			typedef Outcome<Error, Model::DescribeTaskInfoResult> DescribeTaskInfoOutcome;			
+			typedef std::future<DescribeTaskInfoOutcome> DescribeTaskInfoOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::DescribeTaskInfoRequest&, const DescribeTaskInfoOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeTaskInfoAsyncHandler;
+			typedef Outcome<Error, Model::GetClusterProjectsResult> GetClusterProjectsOutcome;			
+			typedef std::future<GetClusterProjectsOutcome> GetClusterProjectsOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::GetClusterProjectsRequest&, const GetClusterProjectsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetClusterProjectsAsyncHandler;
+			typedef Outcome<Error, Model::DescribeClusterServicesResult> DescribeClusterServicesOutcome;			
+			typedef std::future<DescribeClusterServicesOutcome> DescribeClusterServicesOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::DescribeClusterServicesRequest&, const DescribeClusterServicesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeClusterServicesAsyncHandler;
+			typedef Outcome<Error, Model::ScaleInClusterResult> ScaleInClusterOutcome;			
+			typedef std::future<ScaleInClusterOutcome> ScaleInClusterOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::ScaleInClusterRequest&, const ScaleInClusterOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ScaleInClusterAsyncHandler;
+			typedef Outcome<Error, Model::DeleteClusterNodeResult> DeleteClusterNodeOutcome;			
+			typedef std::future<DeleteClusterNodeOutcome> DeleteClusterNodeOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::DeleteClusterNodeRequest&, const DeleteClusterNodeOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteClusterNodeAsyncHandler;
+			typedef Outcome<Error, Model::RevokeClusterTokenResult> RevokeClusterTokenOutcome;			
+			typedef std::future<RevokeClusterTokenOutcome> RevokeClusterTokenOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::RevokeClusterTokenRequest&, const RevokeClusterTokenOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RevokeClusterTokenAsyncHandler;
+			typedef Outcome<Error, Model::DescribeClustersResult> DescribeClustersOutcome;			
+			typedef std::future<DescribeClustersOutcome> DescribeClustersOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::DescribeClustersRequest&, const DescribeClustersOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeClustersAsyncHandler;
+			typedef Outcome<Error, Model::AddAgilityClusterResult> AddAgilityClusterOutcome;			
+			typedef std::future<AddAgilityClusterOutcome> AddAgilityClusterOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::AddAgilityClusterRequest&, const AddAgilityClusterOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AddAgilityClusterAsyncHandler;
+			typedef Outcome<Error, Model::DescribeImagesResult> DescribeImagesOutcome;			
+			typedef std::future<DescribeImagesOutcome> DescribeImagesOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::DescribeImagesRequest&, const DescribeImagesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeImagesAsyncHandler;
+			typedef Outcome<Error, Model::GetTriggerHookResult> GetTriggerHookOutcome;			
+			typedef std::future<GetTriggerHookOutcome> GetTriggerHookOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::GetTriggerHookRequest&, const GetTriggerHookOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetTriggerHookAsyncHandler;
+			typedef Outcome<Error, Model::DescribeClusterTokensResult> DescribeClusterTokensOutcome;			
+			typedef std::future<DescribeClusterTokensOutcome> DescribeClusterTokensOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::DescribeClusterTokensRequest&, const DescribeClusterTokensOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeClusterTokensAsyncHandler;
+			typedef Outcome<Error, Model::UpdateSubUserResoucesResult> UpdateSubUserResoucesOutcome;			
+			typedef std::future<UpdateSubUserResoucesOutcome> UpdateSubUserResoucesOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::UpdateSubUserResoucesRequest&, const UpdateSubUserResoucesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateSubUserResoucesAsyncHandler;
+			typedef Outcome<Error, Model::ModifyClusterNameResult> ModifyClusterNameOutcome;			
+			typedef std::future<ModifyClusterNameOutcome> ModifyClusterNameOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::ModifyClusterNameRequest&, const ModifyClusterNameOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyClusterNameAsyncHandler;
+			typedef Outcome<Error, Model::DescribeClusterHostsResult> DescribeClusterHostsOutcome;			
+			typedef std::future<DescribeClusterHostsOutcome> DescribeClusterHostsOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::DescribeClusterHostsRequest&, const DescribeClusterHostsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeClusterHostsAsyncHandler;
+			typedef Outcome<Error, Model::DescribeApiVersionResult> DescribeApiVersionOutcome;			
+			typedef std::future<DescribeApiVersionOutcome> DescribeApiVersionOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::DescribeApiVersionRequest&, const DescribeApiVersionOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeApiVersionAsyncHandler;
+			typedef Outcome<Error, Model::GatherLogsTokenResult> GatherLogsTokenOutcome;			
+			typedef std::future<GatherLogsTokenOutcome> GatherLogsTokenOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::GatherLogsTokenRequest&, const GatherLogsTokenOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GatherLogsTokenAsyncHandler;
+			typedef Outcome<Error, Model::CreateClusterTokenResult> CreateClusterTokenOutcome;			
+			typedef std::future<CreateClusterTokenOutcome> CreateClusterTokenOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::CreateClusterTokenRequest&, const CreateClusterTokenOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateClusterTokenAsyncHandler;
+			typedef Outcome<Error, Model::DescribeUserContainersResult> DescribeUserContainersOutcome;			
+			typedef std::future<DescribeUserContainersOutcome> DescribeUserContainersOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::DescribeUserContainersRequest&, const DescribeUserContainersOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeUserContainersAsyncHandler;
+			typedef Outcome<Error, Model::DescribeAgilityTunnelAgentInfoResult> DescribeAgilityTunnelAgentInfoOutcome;			
+			typedef std::future<DescribeAgilityTunnelAgentInfoOutcome> DescribeAgilityTunnelAgentInfoOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::DescribeAgilityTunnelAgentInfoRequest&, const DescribeAgilityTunnelAgentInfoOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeAgilityTunnelAgentInfoAsyncHandler;
+			typedef Outcome<Error, Model::DescribeClusterNodeInfoResult> DescribeClusterNodeInfoOutcome;			
+			typedef std::future<DescribeClusterNodeInfoOutcome> DescribeClusterNodeInfoOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::DescribeClusterNodeInfoRequest&, const DescribeClusterNodeInfoOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeClusterNodeInfoAsyncHandler;
+			typedef Outcome<Error, Model::ScaleClusterResult> ScaleClusterOutcome;			
+			typedef std::future<ScaleClusterOutcome> ScaleClusterOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::ScaleClusterRequest&, const ScaleClusterOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ScaleClusterAsyncHandler;
+			typedef Outcome<Error, Model::DescribeAgilityTunnelCertsResult> DescribeAgilityTunnelCertsOutcome;			
+			typedef std::future<DescribeAgilityTunnelCertsOutcome> DescribeAgilityTunnelCertsOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::DescribeAgilityTunnelCertsRequest&, const DescribeAgilityTunnelCertsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeAgilityTunnelCertsAsyncHandler;
+			typedef Outcome<Error, Model::DescribeClusterNodeInfoWithInstanceResult> DescribeClusterNodeInfoWithInstanceOutcome;			
+			typedef std::future<DescribeClusterNodeInfoWithInstanceOutcome> DescribeClusterNodeInfoWithInstanceOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::DescribeClusterNodeInfoWithInstanceRequest&, const DescribeClusterNodeInfoWithInstanceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeClusterNodeInfoWithInstanceAsyncHandler;
+			typedef Outcome<Error, Model::UpgradeClusterComponentsResult> UpgradeClusterComponentsOutcome;			
+			typedef std::future<UpgradeClusterComponentsOutcome> UpgradeClusterComponentsOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::UpgradeClusterComponentsRequest&, const UpgradeClusterComponentsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpgradeClusterComponentsAsyncHandler;
+			typedef Outcome<Error, Model::DownloadClusterNodeCertsResult> DownloadClusterNodeCertsOutcome;			
+			typedef std::future<DownloadClusterNodeCertsOutcome> DownloadClusterNodeCertsOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::DownloadClusterNodeCertsRequest&, const DownloadClusterNodeCertsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DownloadClusterNodeCertsAsyncHandler;
+			typedef Outcome<Error, Model::CreateClusterResult> CreateClusterOutcome;			
+			typedef std::future<CreateClusterOutcome> CreateClusterOutcomeCallable;			
+			typedef std::function<void(const CSClient*, const Model::CreateClusterRequest&, const CreateClusterOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateClusterAsyncHandler;
+
+			CSClient(const Credentials &credentials, const ClientConfiguration &configuration);
+			CSClient(const std::shared_ptr<CredentialsProvider> &credentialsProvider, const ClientConfiguration &configuration);
+			CSClient(const std::string &accessKeyId, const std::string &accessKeySecret, const ClientConfiguration &configuration);
+			~CSClient();
+            AttachInstancesOutcome attachInstances(const Model::AttachInstancesRequest &request)const;
+            void attachInstancesAsync(const Model::AttachInstancesRequest& request, const AttachInstancesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            AttachInstancesOutcomeCallable attachInstancesCallable(const Model::AttachInstancesRequest& request) const;
+            CallbackClusterTokenOutcome callbackClusterToken(const Model::CallbackClusterTokenRequest &request)const;
+            void callbackClusterTokenAsync(const Model::CallbackClusterTokenRequest& request, const CallbackClusterTokenAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            CallbackClusterTokenOutcomeCallable callbackClusterTokenCallable(const Model::CallbackClusterTokenRequest& request) const;
+            DescribeTemplatesOutcome describeTemplates(const Model::DescribeTemplatesRequest &request)const;
+            void describeTemplatesAsync(const Model::DescribeTemplatesRequest& request, const DescribeTemplatesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            DescribeTemplatesOutcomeCallable describeTemplatesCallable(const Model::DescribeTemplatesRequest& request) const;
+            GetProjectEventsOutcome getProjectEvents(const Model::GetProjectEventsRequest &request)const;
+            void getProjectEventsAsync(const Model::GetProjectEventsRequest& request, const GetProjectEventsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            GetProjectEventsOutcomeCallable getProjectEventsCallable(const Model::GetProjectEventsRequest& request) const;
+            CheckAliyunCSServiceRoleOutcome checkAliyunCSServiceRole(const Model::CheckAliyunCSServiceRoleRequest &request)const;
+            void checkAliyunCSServiceRoleAsync(const Model::CheckAliyunCSServiceRoleRequest& request, const CheckAliyunCSServiceRoleAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            CheckAliyunCSServiceRoleOutcomeCallable checkAliyunCSServiceRoleCallable(const Model::CheckAliyunCSServiceRoleRequest& request) const;
+            DescribeTemplateAttributeOutcome describeTemplateAttribute(const Model::DescribeTemplateAttributeRequest &request)const;
+            void describeTemplateAttributeAsync(const Model::DescribeTemplateAttributeRequest& request, const DescribeTemplateAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            DescribeTemplateAttributeOutcomeCallable describeTemplateAttributeCallable(const Model::DescribeTemplateAttributeRequest& request) const;
+            CreateTemplateOutcome createTemplate(const Model::CreateTemplateRequest &request)const;
+            void createTemplateAsync(const Model::CreateTemplateRequest& request, const CreateTemplateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            CreateTemplateOutcomeCallable createTemplateCallable(const Model::CreateTemplateRequest& request) const;
+            DescribeClusterCertsOutcome describeClusterCerts(const Model::DescribeClusterCertsRequest &request)const;
+            void describeClusterCertsAsync(const Model::DescribeClusterCertsRequest& request, const DescribeClusterCertsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            DescribeClusterCertsOutcomeCallable describeClusterCertsCallable(const Model::DescribeClusterCertsRequest& request) const;
+            DeleteClusterOutcome deleteCluster(const Model::DeleteClusterRequest &request)const;
+            void deleteClusterAsync(const Model::DeleteClusterRequest& request, const DeleteClusterAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            DeleteClusterOutcomeCallable deleteClusterCallable(const Model::DeleteClusterRequest& request) const;
+            DescribeClusterNodesOutcome describeClusterNodes(const Model::DescribeClusterNodesRequest &request)const;
+            void describeClusterNodesAsync(const Model::DescribeClusterNodesRequest& request, const DescribeClusterNodesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            DescribeClusterNodesOutcomeCallable describeClusterNodesCallable(const Model::DescribeClusterNodesRequest& request) const;
+            CallBackAgilityClusterOutcome callBackAgilityCluster(const Model::CallBackAgilityClusterRequest &request)const;
+            void callBackAgilityClusterAsync(const Model::CallBackAgilityClusterRequest& request, const CallBackAgilityClusterAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            CallBackAgilityClusterOutcomeCallable callBackAgilityClusterCallable(const Model::CallBackAgilityClusterRequest& request) const;
+            DescribeClusterScaledNodeOutcome describeClusterScaledNode(const Model::DescribeClusterScaledNodeRequest &request)const;
+            void describeClusterScaledNodeAsync(const Model::DescribeClusterScaledNodeRequest& request, const DescribeClusterScaledNodeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            DescribeClusterScaledNodeOutcomeCallable describeClusterScaledNodeCallable(const Model::DescribeClusterScaledNodeRequest& request) const;
+            DescribeClusterLogsOutcome describeClusterLogs(const Model::DescribeClusterLogsRequest &request)const;
+            void describeClusterLogsAsync(const Model::DescribeClusterLogsRequest& request, const DescribeClusterLogsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            DescribeClusterLogsOutcomeCallable describeClusterLogsCallable(const Model::DescribeClusterLogsRequest& request) const;
+            DescribeClusterDetailOutcome describeClusterDetail(const Model::DescribeClusterDetailRequest &request)const;
+            void describeClusterDetailAsync(const Model::DescribeClusterDetailRequest& request, const DescribeClusterDetailAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            DescribeClusterDetailOutcomeCallable describeClusterDetailCallable(const Model::DescribeClusterDetailRequest& request) const;
+            ResetClusterNodeOutcome resetClusterNode(const Model::ResetClusterNodeRequest &request)const;
+            void resetClusterNodeAsync(const Model::ResetClusterNodeRequest& request, const ResetClusterNodeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            ResetClusterNodeOutcomeCallable resetClusterNodeCallable(const Model::ResetClusterNodeRequest& request) const;
+            DescribeServiceContainersOutcome describeServiceContainers(const Model::DescribeServiceContainersRequest &request)const;
+            void describeServiceContainersAsync(const Model::DescribeServiceContainersRequest& request, const DescribeServiceContainersAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            DescribeServiceContainersOutcomeCallable describeServiceContainersCallable(const Model::DescribeServiceContainersRequest& request) const;
+            DescribeTaskInfoOutcome describeTaskInfo(const Model::DescribeTaskInfoRequest &request)const;
+            void describeTaskInfoAsync(const Model::DescribeTaskInfoRequest& request, const DescribeTaskInfoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            DescribeTaskInfoOutcomeCallable describeTaskInfoCallable(const Model::DescribeTaskInfoRequest& request) const;
+            GetClusterProjectsOutcome getClusterProjects(const Model::GetClusterProjectsRequest &request)const;
+            void getClusterProjectsAsync(const Model::GetClusterProjectsRequest& request, const GetClusterProjectsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            GetClusterProjectsOutcomeCallable getClusterProjectsCallable(const Model::GetClusterProjectsRequest& request) const;
+            DescribeClusterServicesOutcome describeClusterServices(const Model::DescribeClusterServicesRequest &request)const;
+            void describeClusterServicesAsync(const Model::DescribeClusterServicesRequest& request, const DescribeClusterServicesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            DescribeClusterServicesOutcomeCallable describeClusterServicesCallable(const Model::DescribeClusterServicesRequest& request) const;
+            ScaleInClusterOutcome scaleInCluster(const Model::ScaleInClusterRequest &request)const;
+            void scaleInClusterAsync(const Model::ScaleInClusterRequest& request, const ScaleInClusterAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            ScaleInClusterOutcomeCallable scaleInClusterCallable(const Model::ScaleInClusterRequest& request) const;
+            DeleteClusterNodeOutcome deleteClusterNode(const Model::DeleteClusterNodeRequest &request)const;
+            void deleteClusterNodeAsync(const Model::DeleteClusterNodeRequest& request, const DeleteClusterNodeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            DeleteClusterNodeOutcomeCallable deleteClusterNodeCallable(const Model::DeleteClusterNodeRequest& request) const;
+            RevokeClusterTokenOutcome revokeClusterToken(const Model::RevokeClusterTokenRequest &request)const;
+            void revokeClusterTokenAsync(const Model::RevokeClusterTokenRequest& request, const RevokeClusterTokenAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            RevokeClusterTokenOutcomeCallable revokeClusterTokenCallable(const Model::RevokeClusterTokenRequest& request) const;
+            DescribeClustersOutcome describeClusters(const Model::DescribeClustersRequest &request)const;
+            void describeClustersAsync(const Model::DescribeClustersRequest& request, const DescribeClustersAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            DescribeClustersOutcomeCallable describeClustersCallable(const Model::DescribeClustersRequest& request) const;
+            AddAgilityClusterOutcome addAgilityCluster(const Model::AddAgilityClusterRequest &request)const;
+            void addAgilityClusterAsync(const Model::AddAgilityClusterRequest& request, const AddAgilityClusterAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            AddAgilityClusterOutcomeCallable addAgilityClusterCallable(const Model::AddAgilityClusterRequest& request) const;
+            DescribeImagesOutcome describeImages(const Model::DescribeImagesRequest &request)const;
+            void describeImagesAsync(const Model::DescribeImagesRequest& request, const DescribeImagesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            DescribeImagesOutcomeCallable describeImagesCallable(const Model::DescribeImagesRequest& request) const;
+            GetTriggerHookOutcome getTriggerHook(const Model::GetTriggerHookRequest &request)const;
+            void getTriggerHookAsync(const Model::GetTriggerHookRequest& request, const GetTriggerHookAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            GetTriggerHookOutcomeCallable getTriggerHookCallable(const Model::GetTriggerHookRequest& request) const;
+            DescribeClusterTokensOutcome describeClusterTokens(const Model::DescribeClusterTokensRequest &request)const;
+            void describeClusterTokensAsync(const Model::DescribeClusterTokensRequest& request, const DescribeClusterTokensAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            DescribeClusterTokensOutcomeCallable describeClusterTokensCallable(const Model::DescribeClusterTokensRequest& request) const;
+            UpdateSubUserResoucesOutcome updateSubUserResouces(const Model::UpdateSubUserResoucesRequest &request)const;
+            void updateSubUserResoucesAsync(const Model::UpdateSubUserResoucesRequest& request, const UpdateSubUserResoucesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            UpdateSubUserResoucesOutcomeCallable updateSubUserResoucesCallable(const Model::UpdateSubUserResoucesRequest& request) const;
+            ModifyClusterNameOutcome modifyClusterName(const Model::ModifyClusterNameRequest &request)const;
+            void modifyClusterNameAsync(const Model::ModifyClusterNameRequest& request, const ModifyClusterNameAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            ModifyClusterNameOutcomeCallable modifyClusterNameCallable(const Model::ModifyClusterNameRequest& request) const;
+            DescribeClusterHostsOutcome describeClusterHosts(const Model::DescribeClusterHostsRequest &request)const;
+            void describeClusterHostsAsync(const Model::DescribeClusterHostsRequest& request, const DescribeClusterHostsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            DescribeClusterHostsOutcomeCallable describeClusterHostsCallable(const Model::DescribeClusterHostsRequest& request) const;
+            DescribeApiVersionOutcome describeApiVersion(const Model::DescribeApiVersionRequest &request)const;
+            void describeApiVersionAsync(const Model::DescribeApiVersionRequest& request, const DescribeApiVersionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            DescribeApiVersionOutcomeCallable describeApiVersionCallable(const Model::DescribeApiVersionRequest& request) const;
+            GatherLogsTokenOutcome gatherLogsToken(const Model::GatherLogsTokenRequest &request)const;
+            void gatherLogsTokenAsync(const Model::GatherLogsTokenRequest& request, const GatherLogsTokenAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            GatherLogsTokenOutcomeCallable gatherLogsTokenCallable(const Model::GatherLogsTokenRequest& request) const;
+            CreateClusterTokenOutcome createClusterToken(const Model::CreateClusterTokenRequest &request)const;
+            void createClusterTokenAsync(const Model::CreateClusterTokenRequest& request, const CreateClusterTokenAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            CreateClusterTokenOutcomeCallable createClusterTokenCallable(const Model::CreateClusterTokenRequest& request) const;
+            DescribeUserContainersOutcome describeUserContainers(const Model::DescribeUserContainersRequest &request)const;
+            void describeUserContainersAsync(const Model::DescribeUserContainersRequest& request, const DescribeUserContainersAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            DescribeUserContainersOutcomeCallable describeUserContainersCallable(const Model::DescribeUserContainersRequest& request) const;
+            DescribeAgilityTunnelAgentInfoOutcome describeAgilityTunnelAgentInfo(const Model::DescribeAgilityTunnelAgentInfoRequest &request)const;
+            void describeAgilityTunnelAgentInfoAsync(const Model::DescribeAgilityTunnelAgentInfoRequest& request, const DescribeAgilityTunnelAgentInfoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            DescribeAgilityTunnelAgentInfoOutcomeCallable describeAgilityTunnelAgentInfoCallable(const Model::DescribeAgilityTunnelAgentInfoRequest& request) const;
+            DescribeClusterNodeInfoOutcome describeClusterNodeInfo(const Model::DescribeClusterNodeInfoRequest &request)const;
+            void describeClusterNodeInfoAsync(const Model::DescribeClusterNodeInfoRequest& request, const DescribeClusterNodeInfoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            DescribeClusterNodeInfoOutcomeCallable describeClusterNodeInfoCallable(const Model::DescribeClusterNodeInfoRequest& request) const;
+            ScaleClusterOutcome scaleCluster(const Model::ScaleClusterRequest &request)const;
+            void scaleClusterAsync(const Model::ScaleClusterRequest& request, const ScaleClusterAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            ScaleClusterOutcomeCallable scaleClusterCallable(const Model::ScaleClusterRequest& request) const;
+            DescribeAgilityTunnelCertsOutcome describeAgilityTunnelCerts(const Model::DescribeAgilityTunnelCertsRequest &request)const;
+            void describeAgilityTunnelCertsAsync(const Model::DescribeAgilityTunnelCertsRequest& request, const DescribeAgilityTunnelCertsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            DescribeAgilityTunnelCertsOutcomeCallable describeAgilityTunnelCertsCallable(const Model::DescribeAgilityTunnelCertsRequest& request) const;
+            DescribeClusterNodeInfoWithInstanceOutcome describeClusterNodeInfoWithInstance(const Model::DescribeClusterNodeInfoWithInstanceRequest &request)const;
+            void describeClusterNodeInfoWithInstanceAsync(const Model::DescribeClusterNodeInfoWithInstanceRequest& request, const DescribeClusterNodeInfoWithInstanceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            DescribeClusterNodeInfoWithInstanceOutcomeCallable describeClusterNodeInfoWithInstanceCallable(const Model::DescribeClusterNodeInfoWithInstanceRequest& request) const;
+            UpgradeClusterComponentsOutcome upgradeClusterComponents(const Model::UpgradeClusterComponentsRequest &request)const;
+            void upgradeClusterComponentsAsync(const Model::UpgradeClusterComponentsRequest& request, const UpgradeClusterComponentsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            UpgradeClusterComponentsOutcomeCallable upgradeClusterComponentsCallable(const Model::UpgradeClusterComponentsRequest& request) const;
+            DownloadClusterNodeCertsOutcome downloadClusterNodeCerts(const Model::DownloadClusterNodeCertsRequest &request)const;
+            void downloadClusterNodeCertsAsync(const Model::DownloadClusterNodeCertsRequest& request, const DownloadClusterNodeCertsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            DownloadClusterNodeCertsOutcomeCallable downloadClusterNodeCertsCallable(const Model::DownloadClusterNodeCertsRequest& request) const;
+            CreateClusterOutcome createCluster(const Model::CreateClusterRequest &request)const;
+            void createClusterAsync(const Model::CreateClusterRequest& request, const CreateClusterAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+            CreateClusterOutcomeCallable createClusterCallable(const Model::CreateClusterRequest& request) const;
+	
+		private:
+			virtual EndpointOutcome endpoint()const override;
+			std::shared_ptr<EndpointProvider> endpointProvider_;
+		};
+	}
+}
+
+#endif // !ALIBABACLOUD_CS_CSCLIENT_H_

+ 32 - 0
cs/include/alibabacloud/cs/CSExport.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_CS_CSEXPORT_H_
+#define ALIBABACLOUD_CS_CSEXPORT_H_
+
+#include <alibabacloud/core/Global.h>
+
+#if defined(ALIBABACLOUD_SHARED)
+#	if defined(ALIBABACLOUD_CS_LIBRARY)
+#		define ALIBABACLOUD_CS_EXPORT ALIBABACLOUD_DECL_EXPORT
+#	else
+#		define ALIBABACLOUD_CS_EXPORT ALIBABACLOUD_DECL_IMPORT
+#	endif
+#else
+#	define ALIBABACLOUD_CS_EXPORT
+#endif
+
+#endif // !ALIBABACLOUD_CS_CSEXPORT_H_

+ 45 - 0
cs/include/alibabacloud/cs/model/AddAgilityClusterRequest.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_CS_MODEL_ADDAGILITYCLUSTERREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_ADDAGILITYCLUSTERREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT AddAgilityClusterRequest : public RoaServiceRequest
+			{
+
+			public:
+				AddAgilityClusterRequest();
+				~AddAgilityClusterRequest();
+
+
+            private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_ADDAGILITYCLUSTERREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/AddAgilityClusterResult.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_CS_MODEL_ADDAGILITYCLUSTERRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_ADDAGILITYCLUSTERRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT AddAgilityClusterResult : public ServiceResult
+			{
+			public:
+
+
+				AddAgilityClusterResult();
+				explicit AddAgilityClusterResult(const std::string &payload);
+				~AddAgilityClusterResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_ADDAGILITYCLUSTERRESULT_H_

+ 48 - 0
cs/include/alibabacloud/cs/model/AttachInstancesRequest.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_CS_MODEL_ATTACHINSTANCESREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_ATTACHINSTANCESREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT AttachInstancesRequest : public RoaServiceRequest
+			{
+
+			public:
+				AttachInstancesRequest();
+				~AttachInstancesRequest();
+
+				std::string getClusterId()const;
+				void setClusterId(const std::string& clusterId);
+
+            private:
+				std::string clusterId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_ATTACHINSTANCESREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/AttachInstancesResult.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_CS_MODEL_ATTACHINSTANCESRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_ATTACHINSTANCESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT AttachInstancesResult : public ServiceResult
+			{
+			public:
+
+
+				AttachInstancesResult();
+				explicit AttachInstancesResult(const std::string &payload);
+				~AttachInstancesResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_ATTACHINSTANCESRESULT_H_

+ 51 - 0
cs/include/alibabacloud/cs/model/CallBackAgilityClusterRequest.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_CS_MODEL_CALLBACKAGILITYCLUSTERREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_CALLBACKAGILITYCLUSTERREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT CallBackAgilityClusterRequest : public RoaServiceRequest
+			{
+
+			public:
+				CallBackAgilityClusterRequest();
+				~CallBackAgilityClusterRequest();
+
+				std::string getReqOnce()const;
+				void setReqOnce(const std::string& reqOnce);
+				std::string getToken()const;
+				void setToken(const std::string& token);
+
+            private:
+				std::string reqOnce_;
+				std::string token_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_CALLBACKAGILITYCLUSTERREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/CallBackAgilityClusterResult.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_CS_MODEL_CALLBACKAGILITYCLUSTERRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_CALLBACKAGILITYCLUSTERRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT CallBackAgilityClusterResult : public ServiceResult
+			{
+			public:
+
+
+				CallBackAgilityClusterResult();
+				explicit CallBackAgilityClusterResult(const std::string &payload);
+				~CallBackAgilityClusterResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_CALLBACKAGILITYCLUSTERRESULT_H_

+ 51 - 0
cs/include/alibabacloud/cs/model/CallbackClusterTokenRequest.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_CS_MODEL_CALLBACKCLUSTERTOKENREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_CALLBACKCLUSTERTOKENREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT CallbackClusterTokenRequest : public RoaServiceRequest
+			{
+
+			public:
+				CallbackClusterTokenRequest();
+				~CallbackClusterTokenRequest();
+
+				std::string getReqOnce()const;
+				void setReqOnce(const std::string& reqOnce);
+				std::string getToken()const;
+				void setToken(const std::string& token);
+
+            private:
+				std::string reqOnce_;
+				std::string token_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_CALLBACKCLUSTERTOKENREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/CallbackClusterTokenResult.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_CS_MODEL_CALLBACKCLUSTERTOKENRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_CALLBACKCLUSTERTOKENRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT CallbackClusterTokenResult : public ServiceResult
+			{
+			public:
+
+
+				CallbackClusterTokenResult();
+				explicit CallbackClusterTokenResult(const std::string &payload);
+				~CallbackClusterTokenResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_CALLBACKCLUSTERTOKENRESULT_H_

+ 45 - 0
cs/include/alibabacloud/cs/model/CheckAliyunCSServiceRoleRequest.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_CS_MODEL_CHECKALIYUNCSSERVICEROLEREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_CHECKALIYUNCSSERVICEROLEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT CheckAliyunCSServiceRoleRequest : public RoaServiceRequest
+			{
+
+			public:
+				CheckAliyunCSServiceRoleRequest();
+				~CheckAliyunCSServiceRoleRequest();
+
+
+            private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_CHECKALIYUNCSSERVICEROLEREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/CheckAliyunCSServiceRoleResult.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_CS_MODEL_CHECKALIYUNCSSERVICEROLERESULT_H_
+#define ALIBABACLOUD_CS_MODEL_CHECKALIYUNCSSERVICEROLERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT CheckAliyunCSServiceRoleResult : public ServiceResult
+			{
+			public:
+
+
+				CheckAliyunCSServiceRoleResult();
+				explicit CheckAliyunCSServiceRoleResult(const std::string &payload);
+				~CheckAliyunCSServiceRoleResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_CHECKALIYUNCSSERVICEROLERESULT_H_

+ 45 - 0
cs/include/alibabacloud/cs/model/CreateClusterRequest.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_CS_MODEL_CREATECLUSTERREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_CREATECLUSTERREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT CreateClusterRequest : public RoaServiceRequest
+			{
+
+			public:
+				CreateClusterRequest();
+				~CreateClusterRequest();
+
+
+            private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_CREATECLUSTERREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/CreateClusterResult.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_CS_MODEL_CREATECLUSTERRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_CREATECLUSTERRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT CreateClusterResult : public ServiceResult
+			{
+			public:
+
+
+				CreateClusterResult();
+				explicit CreateClusterResult(const std::string &payload);
+				~CreateClusterResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_CREATECLUSTERRESULT_H_

+ 48 - 0
cs/include/alibabacloud/cs/model/CreateClusterTokenRequest.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_CS_MODEL_CREATECLUSTERTOKENREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_CREATECLUSTERTOKENREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT CreateClusterTokenRequest : public RoaServiceRequest
+			{
+
+			public:
+				CreateClusterTokenRequest();
+				~CreateClusterTokenRequest();
+
+				std::string getClusterId()const;
+				void setClusterId(const std::string& clusterId);
+
+            private:
+				std::string clusterId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_CREATECLUSTERTOKENREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/CreateClusterTokenResult.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_CS_MODEL_CREATECLUSTERTOKENRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_CREATECLUSTERTOKENRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT CreateClusterTokenResult : public ServiceResult
+			{
+			public:
+
+
+				CreateClusterTokenResult();
+				explicit CreateClusterTokenResult(const std::string &payload);
+				~CreateClusterTokenResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_CREATECLUSTERTOKENRESULT_H_

+ 45 - 0
cs/include/alibabacloud/cs/model/CreateTemplateRequest.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_CS_MODEL_CREATETEMPLATEREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_CREATETEMPLATEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT CreateTemplateRequest : public RoaServiceRequest
+			{
+
+			public:
+				CreateTemplateRequest();
+				~CreateTemplateRequest();
+
+
+            private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_CREATETEMPLATEREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/CreateTemplateResult.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_CS_MODEL_CREATETEMPLATERESULT_H_
+#define ALIBABACLOUD_CS_MODEL_CREATETEMPLATERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT CreateTemplateResult : public ServiceResult
+			{
+			public:
+
+
+				CreateTemplateResult();
+				explicit CreateTemplateResult(const std::string &payload);
+				~CreateTemplateResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_CREATETEMPLATERESULT_H_

+ 57 - 0
cs/include/alibabacloud/cs/model/DeleteClusterNodeRequest.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_CS_MODEL_DELETECLUSTERNODEREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_DELETECLUSTERNODEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DeleteClusterNodeRequest : public RoaServiceRequest
+			{
+
+			public:
+				DeleteClusterNodeRequest();
+				~DeleteClusterNodeRequest();
+
+				std::string getReleaseInstance()const;
+				void setReleaseInstance(const std::string& releaseInstance);
+				std::string getIp()const;
+				void setIp(const std::string& ip);
+				std::string getForce()const;
+				void setForce(const std::string& force);
+				std::string getClusterId()const;
+				void setClusterId(const std::string& clusterId);
+
+            private:
+				std::string releaseInstance_;
+				std::string ip_;
+				std::string force_;
+				std::string clusterId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DELETECLUSTERNODEREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/DeleteClusterNodeResult.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_CS_MODEL_DELETECLUSTERNODERESULT_H_
+#define ALIBABACLOUD_CS_MODEL_DELETECLUSTERNODERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DeleteClusterNodeResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteClusterNodeResult();
+				explicit DeleteClusterNodeResult(const std::string &payload);
+				~DeleteClusterNodeResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DELETECLUSTERNODERESULT_H_

+ 48 - 0
cs/include/alibabacloud/cs/model/DeleteClusterRequest.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_CS_MODEL_DELETECLUSTERREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_DELETECLUSTERREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DeleteClusterRequest : public RoaServiceRequest
+			{
+
+			public:
+				DeleteClusterRequest();
+				~DeleteClusterRequest();
+
+				std::string getClusterId()const;
+				void setClusterId(const std::string& clusterId);
+
+            private:
+				std::string clusterId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DELETECLUSTERREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/DeleteClusterResult.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_CS_MODEL_DELETECLUSTERRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_DELETECLUSTERRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DeleteClusterResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteClusterResult();
+				explicit DeleteClusterResult(const std::string &payload);
+				~DeleteClusterResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DELETECLUSTERRESULT_H_

+ 48 - 0
cs/include/alibabacloud/cs/model/DescribeAgilityTunnelAgentInfoRequest.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_CS_MODEL_DESCRIBEAGILITYTUNNELAGENTINFOREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBEAGILITYTUNNELAGENTINFOREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeAgilityTunnelAgentInfoRequest : public RoaServiceRequest
+			{
+
+			public:
+				DescribeAgilityTunnelAgentInfoRequest();
+				~DescribeAgilityTunnelAgentInfoRequest();
+
+				std::string getToken()const;
+				void setToken(const std::string& token);
+
+            private:
+				std::string token_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBEAGILITYTUNNELAGENTINFOREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/DescribeAgilityTunnelAgentInfoResult.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_CS_MODEL_DESCRIBEAGILITYTUNNELAGENTINFORESULT_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBEAGILITYTUNNELAGENTINFORESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeAgilityTunnelAgentInfoResult : public ServiceResult
+			{
+			public:
+
+
+				DescribeAgilityTunnelAgentInfoResult();
+				explicit DescribeAgilityTunnelAgentInfoResult(const std::string &payload);
+				~DescribeAgilityTunnelAgentInfoResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBEAGILITYTUNNELAGENTINFORESULT_H_

+ 48 - 0
cs/include/alibabacloud/cs/model/DescribeAgilityTunnelCertsRequest.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_CS_MODEL_DESCRIBEAGILITYTUNNELCERTSREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBEAGILITYTUNNELCERTSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeAgilityTunnelCertsRequest : public RoaServiceRequest
+			{
+
+			public:
+				DescribeAgilityTunnelCertsRequest();
+				~DescribeAgilityTunnelCertsRequest();
+
+				std::string getToken()const;
+				void setToken(const std::string& token);
+
+            private:
+				std::string token_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBEAGILITYTUNNELCERTSREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/DescribeAgilityTunnelCertsResult.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_CS_MODEL_DESCRIBEAGILITYTUNNELCERTSRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBEAGILITYTUNNELCERTSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeAgilityTunnelCertsResult : public ServiceResult
+			{
+			public:
+
+
+				DescribeAgilityTunnelCertsResult();
+				explicit DescribeAgilityTunnelCertsResult(const std::string &payload);
+				~DescribeAgilityTunnelCertsResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBEAGILITYTUNNELCERTSRESULT_H_

+ 45 - 0
cs/include/alibabacloud/cs/model/DescribeApiVersionRequest.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_CS_MODEL_DESCRIBEAPIVERSIONREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBEAPIVERSIONREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeApiVersionRequest : public RoaServiceRequest
+			{
+
+			public:
+				DescribeApiVersionRequest();
+				~DescribeApiVersionRequest();
+
+
+            private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBEAPIVERSIONREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/DescribeApiVersionResult.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_CS_MODEL_DESCRIBEAPIVERSIONRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBEAPIVERSIONRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeApiVersionResult : public ServiceResult
+			{
+			public:
+
+
+				DescribeApiVersionResult();
+				explicit DescribeApiVersionResult(const std::string &payload);
+				~DescribeApiVersionResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBEAPIVERSIONRESULT_H_

+ 48 - 0
cs/include/alibabacloud/cs/model/DescribeClusterCertsRequest.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_CS_MODEL_DESCRIBECLUSTERCERTSREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERCERTSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeClusterCertsRequest : public RoaServiceRequest
+			{
+
+			public:
+				DescribeClusterCertsRequest();
+				~DescribeClusterCertsRequest();
+
+				std::string getClusterId()const;
+				void setClusterId(const std::string& clusterId);
+
+            private:
+				std::string clusterId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERCERTSREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/DescribeClusterCertsResult.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_CS_MODEL_DESCRIBECLUSTERCERTSRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERCERTSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeClusterCertsResult : public ServiceResult
+			{
+			public:
+
+
+				DescribeClusterCertsResult();
+				explicit DescribeClusterCertsResult(const std::string &payload);
+				~DescribeClusterCertsResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERCERTSRESULT_H_

+ 48 - 0
cs/include/alibabacloud/cs/model/DescribeClusterDetailRequest.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_CS_MODEL_DESCRIBECLUSTERDETAILREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERDETAILREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeClusterDetailRequest : public RoaServiceRequest
+			{
+
+			public:
+				DescribeClusterDetailRequest();
+				~DescribeClusterDetailRequest();
+
+				std::string getClusterId()const;
+				void setClusterId(const std::string& clusterId);
+
+            private:
+				std::string clusterId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERDETAILREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/DescribeClusterDetailResult.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_CS_MODEL_DESCRIBECLUSTERDETAILRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERDETAILRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeClusterDetailResult : public ServiceResult
+			{
+			public:
+
+
+				DescribeClusterDetailResult();
+				explicit DescribeClusterDetailResult(const std::string &payload);
+				~DescribeClusterDetailResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERDETAILRESULT_H_

+ 48 - 0
cs/include/alibabacloud/cs/model/DescribeClusterHostsRequest.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_CS_MODEL_DESCRIBECLUSTERHOSTSREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERHOSTSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeClusterHostsRequest : public RoaServiceRequest
+			{
+
+			public:
+				DescribeClusterHostsRequest();
+				~DescribeClusterHostsRequest();
+
+				std::string getClusterId()const;
+				void setClusterId(const std::string& clusterId);
+
+            private:
+				std::string clusterId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERHOSTSREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/DescribeClusterHostsResult.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_CS_MODEL_DESCRIBECLUSTERHOSTSRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERHOSTSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeClusterHostsResult : public ServiceResult
+			{
+			public:
+
+
+				DescribeClusterHostsResult();
+				explicit DescribeClusterHostsResult(const std::string &payload);
+				~DescribeClusterHostsResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERHOSTSRESULT_H_

+ 48 - 0
cs/include/alibabacloud/cs/model/DescribeClusterLogsRequest.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_CS_MODEL_DESCRIBECLUSTERLOGSREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERLOGSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeClusterLogsRequest : public RoaServiceRequest
+			{
+
+			public:
+				DescribeClusterLogsRequest();
+				~DescribeClusterLogsRequest();
+
+				std::string getClusterId()const;
+				void setClusterId(const std::string& clusterId);
+
+            private:
+				std::string clusterId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERLOGSREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/DescribeClusterLogsResult.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_CS_MODEL_DESCRIBECLUSTERLOGSRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERLOGSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeClusterLogsResult : public ServiceResult
+			{
+			public:
+
+
+				DescribeClusterLogsResult();
+				explicit DescribeClusterLogsResult(const std::string &payload);
+				~DescribeClusterLogsResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERLOGSRESULT_H_

+ 48 - 0
cs/include/alibabacloud/cs/model/DescribeClusterNodeInfoRequest.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_CS_MODEL_DESCRIBECLUSTERNODEINFOREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERNODEINFOREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeClusterNodeInfoRequest : public RoaServiceRequest
+			{
+
+			public:
+				DescribeClusterNodeInfoRequest();
+				~DescribeClusterNodeInfoRequest();
+
+				std::string getToken()const;
+				void setToken(const std::string& token);
+
+            private:
+				std::string token_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERNODEINFOREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/DescribeClusterNodeInfoResult.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_CS_MODEL_DESCRIBECLUSTERNODEINFORESULT_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERNODEINFORESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeClusterNodeInfoResult : public ServiceResult
+			{
+			public:
+
+
+				DescribeClusterNodeInfoResult();
+				explicit DescribeClusterNodeInfoResult(const std::string &payload);
+				~DescribeClusterNodeInfoResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERNODEINFORESULT_H_

+ 51 - 0
cs/include/alibabacloud/cs/model/DescribeClusterNodeInfoWithInstanceRequest.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_CS_MODEL_DESCRIBECLUSTERNODEINFOWITHINSTANCEREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERNODEINFOWITHINSTANCEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeClusterNodeInfoWithInstanceRequest : public RoaServiceRequest
+			{
+
+			public:
+				DescribeClusterNodeInfoWithInstanceRequest();
+				~DescribeClusterNodeInfoWithInstanceRequest();
+
+				std::string getInstanceId()const;
+				void setInstanceId(const std::string& instanceId);
+				std::string getToken()const;
+				void setToken(const std::string& token);
+
+            private:
+				std::string instanceId_;
+				std::string token_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERNODEINFOWITHINSTANCEREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/DescribeClusterNodeInfoWithInstanceResult.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_CS_MODEL_DESCRIBECLUSTERNODEINFOWITHINSTANCERESULT_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERNODEINFOWITHINSTANCERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeClusterNodeInfoWithInstanceResult : public ServiceResult
+			{
+			public:
+
+
+				DescribeClusterNodeInfoWithInstanceResult();
+				explicit DescribeClusterNodeInfoWithInstanceResult(const std::string &payload);
+				~DescribeClusterNodeInfoWithInstanceResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERNODEINFOWITHINSTANCERESULT_H_

+ 54 - 0
cs/include/alibabacloud/cs/model/DescribeClusterNodesRequest.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_CS_MODEL_DESCRIBECLUSTERNODESREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERNODESREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeClusterNodesRequest : public RoaServiceRequest
+			{
+
+			public:
+				DescribeClusterNodesRequest();
+				~DescribeClusterNodesRequest();
+
+				std::string getPageSize()const;
+				void setPageSize(const std::string& pageSize);
+				std::string getClusterId()const;
+				void setClusterId(const std::string& clusterId);
+				std::string getPageNumber()const;
+				void setPageNumber(const std::string& pageNumber);
+
+            private:
+				std::string pageSize_;
+				std::string clusterId_;
+				std::string pageNumber_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERNODESREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/DescribeClusterNodesResult.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_CS_MODEL_DESCRIBECLUSTERNODESRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERNODESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeClusterNodesResult : public ServiceResult
+			{
+			public:
+
+
+				DescribeClusterNodesResult();
+				explicit DescribeClusterNodesResult(const std::string &payload);
+				~DescribeClusterNodesResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERNODESRESULT_H_

+ 48 - 0
cs/include/alibabacloud/cs/model/DescribeClusterScaledNodeRequest.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_CS_MODEL_DESCRIBECLUSTERSCALEDNODEREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERSCALEDNODEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeClusterScaledNodeRequest : public RoaServiceRequest
+			{
+
+			public:
+				DescribeClusterScaledNodeRequest();
+				~DescribeClusterScaledNodeRequest();
+
+				std::string getClusterId()const;
+				void setClusterId(const std::string& clusterId);
+
+            private:
+				std::string clusterId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERSCALEDNODEREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/DescribeClusterScaledNodeResult.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_CS_MODEL_DESCRIBECLUSTERSCALEDNODERESULT_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERSCALEDNODERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeClusterScaledNodeResult : public ServiceResult
+			{
+			public:
+
+
+				DescribeClusterScaledNodeResult();
+				explicit DescribeClusterScaledNodeResult(const std::string &payload);
+				~DescribeClusterScaledNodeResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERSCALEDNODERESULT_H_

+ 48 - 0
cs/include/alibabacloud/cs/model/DescribeClusterServicesRequest.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_CS_MODEL_DESCRIBECLUSTERSERVICESREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERSERVICESREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeClusterServicesRequest : public RoaServiceRequest
+			{
+
+			public:
+				DescribeClusterServicesRequest();
+				~DescribeClusterServicesRequest();
+
+				std::string getClusterId()const;
+				void setClusterId(const std::string& clusterId);
+
+            private:
+				std::string clusterId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERSERVICESREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/DescribeClusterServicesResult.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_CS_MODEL_DESCRIBECLUSTERSERVICESRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERSERVICESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeClusterServicesResult : public ServiceResult
+			{
+			public:
+
+
+				DescribeClusterServicesResult();
+				explicit DescribeClusterServicesResult(const std::string &payload);
+				~DescribeClusterServicesResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERSERVICESRESULT_H_

+ 48 - 0
cs/include/alibabacloud/cs/model/DescribeClusterTokensRequest.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_CS_MODEL_DESCRIBECLUSTERTOKENSREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERTOKENSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeClusterTokensRequest : public RoaServiceRequest
+			{
+
+			public:
+				DescribeClusterTokensRequest();
+				~DescribeClusterTokensRequest();
+
+				std::string getClusterId()const;
+				void setClusterId(const std::string& clusterId);
+
+            private:
+				std::string clusterId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERTOKENSREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/DescribeClusterTokensResult.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_CS_MODEL_DESCRIBECLUSTERTOKENSRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERTOKENSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeClusterTokensResult : public ServiceResult
+			{
+			public:
+
+
+				DescribeClusterTokensResult();
+				explicit DescribeClusterTokensResult(const std::string &payload);
+				~DescribeClusterTokensResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERTOKENSRESULT_H_

+ 51 - 0
cs/include/alibabacloud/cs/model/DescribeClustersRequest.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_CS_MODEL_DESCRIBECLUSTERSREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeClustersRequest : public RoaServiceRequest
+			{
+
+			public:
+				DescribeClustersRequest();
+				~DescribeClustersRequest();
+
+				std::string getClusterType()const;
+				void setClusterType(const std::string& clusterType);
+				std::string getName()const;
+				void setName(const std::string& name);
+
+            private:
+				std::string clusterType_;
+				std::string name_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERSREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/DescribeClustersResult.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_CS_MODEL_DESCRIBECLUSTERSRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeClustersResult : public ServiceResult
+			{
+			public:
+
+
+				DescribeClustersResult();
+				explicit DescribeClustersResult(const std::string &payload);
+				~DescribeClustersResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBECLUSTERSRESULT_H_

+ 54 - 0
cs/include/alibabacloud/cs/model/DescribeImagesRequest.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_CS_MODEL_DESCRIBEIMAGESREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBEIMAGESREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeImagesRequest : public RoaServiceRequest
+			{
+
+			public:
+				DescribeImagesRequest();
+				~DescribeImagesRequest();
+
+				std::string getRegionID()const;
+				void setRegionID(const std::string& regionID);
+				std::string getImageName()const;
+				void setImageName(const std::string& imageName);
+				std::string getDockerVersion()const;
+				void setDockerVersion(const std::string& dockerVersion);
+
+            private:
+				std::string regionID_;
+				std::string imageName_;
+				std::string dockerVersion_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBEIMAGESREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/DescribeImagesResult.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_CS_MODEL_DESCRIBEIMAGESRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBEIMAGESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeImagesResult : public ServiceResult
+			{
+			public:
+
+
+				DescribeImagesResult();
+				explicit DescribeImagesResult(const std::string &payload);
+				~DescribeImagesResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBEIMAGESRESULT_H_

+ 51 - 0
cs/include/alibabacloud/cs/model/DescribeServiceContainersRequest.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_CS_MODEL_DESCRIBESERVICECONTAINERSREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBESERVICECONTAINERSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeServiceContainersRequest : public RoaServiceRequest
+			{
+
+			public:
+				DescribeServiceContainersRequest();
+				~DescribeServiceContainersRequest();
+
+				std::string getClusterId()const;
+				void setClusterId(const std::string& clusterId);
+				std::string getServiceId()const;
+				void setServiceId(const std::string& serviceId);
+
+            private:
+				std::string clusterId_;
+				std::string serviceId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBESERVICECONTAINERSREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/DescribeServiceContainersResult.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_CS_MODEL_DESCRIBESERVICECONTAINERSRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBESERVICECONTAINERSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeServiceContainersResult : public ServiceResult
+			{
+			public:
+
+
+				DescribeServiceContainersResult();
+				explicit DescribeServiceContainersResult(const std::string &payload);
+				~DescribeServiceContainersResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBESERVICECONTAINERSRESULT_H_

+ 48 - 0
cs/include/alibabacloud/cs/model/DescribeTaskInfoRequest.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_CS_MODEL_DESCRIBETASKINFOREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBETASKINFOREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeTaskInfoRequest : public RoaServiceRequest
+			{
+
+			public:
+				DescribeTaskInfoRequest();
+				~DescribeTaskInfoRequest();
+
+				std::string getTaskId()const;
+				void setTaskId(const std::string& taskId);
+
+            private:
+				std::string taskId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBETASKINFOREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/DescribeTaskInfoResult.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_CS_MODEL_DESCRIBETASKINFORESULT_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBETASKINFORESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeTaskInfoResult : public ServiceResult
+			{
+			public:
+
+
+				DescribeTaskInfoResult();
+				explicit DescribeTaskInfoResult(const std::string &payload);
+				~DescribeTaskInfoResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBETASKINFORESULT_H_

+ 48 - 0
cs/include/alibabacloud/cs/model/DescribeTemplateAttributeRequest.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_CS_MODEL_DESCRIBETEMPLATEATTRIBUTEREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBETEMPLATEATTRIBUTEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeTemplateAttributeRequest : public RoaServiceRequest
+			{
+
+			public:
+				DescribeTemplateAttributeRequest();
+				~DescribeTemplateAttributeRequest();
+
+				std::string getTemplateId()const;
+				void setTemplateId(const std::string& templateId);
+
+            private:
+				std::string templateId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBETEMPLATEATTRIBUTEREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/DescribeTemplateAttributeResult.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_CS_MODEL_DESCRIBETEMPLATEATTRIBUTERESULT_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBETEMPLATEATTRIBUTERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeTemplateAttributeResult : public ServiceResult
+			{
+			public:
+
+
+				DescribeTemplateAttributeResult();
+				explicit DescribeTemplateAttributeResult(const std::string &payload);
+				~DescribeTemplateAttributeResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBETEMPLATEATTRIBUTERESULT_H_

+ 45 - 0
cs/include/alibabacloud/cs/model/DescribeTemplatesRequest.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_CS_MODEL_DESCRIBETEMPLATESREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBETEMPLATESREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeTemplatesRequest : public RoaServiceRequest
+			{
+
+			public:
+				DescribeTemplatesRequest();
+				~DescribeTemplatesRequest();
+
+
+            private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBETEMPLATESREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/DescribeTemplatesResult.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_CS_MODEL_DESCRIBETEMPLATESRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBETEMPLATESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeTemplatesResult : public ServiceResult
+			{
+			public:
+
+
+				DescribeTemplatesResult();
+				explicit DescribeTemplatesResult(const std::string &payload);
+				~DescribeTemplatesResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBETEMPLATESRESULT_H_

+ 51 - 0
cs/include/alibabacloud/cs/model/DescribeUserContainersRequest.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_CS_MODEL_DESCRIBEUSERCONTAINERSREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBEUSERCONTAINERSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeUserContainersRequest : public RoaServiceRequest
+			{
+
+			public:
+				DescribeUserContainersRequest();
+				~DescribeUserContainersRequest();
+
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getServiceId()const;
+				void setServiceId(const std::string& serviceId);
+
+            private:
+				std::string regionId_;
+				std::string serviceId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBEUSERCONTAINERSREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/DescribeUserContainersResult.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_CS_MODEL_DESCRIBEUSERCONTAINERSRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_DESCRIBEUSERCONTAINERSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DescribeUserContainersResult : public ServiceResult
+			{
+			public:
+
+
+				DescribeUserContainersResult();
+				explicit DescribeUserContainersResult(const std::string &payload);
+				~DescribeUserContainersResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DESCRIBEUSERCONTAINERSRESULT_H_

+ 51 - 0
cs/include/alibabacloud/cs/model/DownloadClusterNodeCertsRequest.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_CS_MODEL_DOWNLOADCLUSTERNODECERTSREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_DOWNLOADCLUSTERNODECERTSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DownloadClusterNodeCertsRequest : public RoaServiceRequest
+			{
+
+			public:
+				DownloadClusterNodeCertsRequest();
+				~DownloadClusterNodeCertsRequest();
+
+				std::string getNodeId()const;
+				void setNodeId(const std::string& nodeId);
+				std::string getToken()const;
+				void setToken(const std::string& token);
+
+            private:
+				std::string nodeId_;
+				std::string token_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DOWNLOADCLUSTERNODECERTSREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/DownloadClusterNodeCertsResult.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_CS_MODEL_DOWNLOADCLUSTERNODECERTSRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_DOWNLOADCLUSTERNODECERTSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT DownloadClusterNodeCertsResult : public ServiceResult
+			{
+			public:
+
+
+				DownloadClusterNodeCertsResult();
+				explicit DownloadClusterNodeCertsResult(const std::string &payload);
+				~DownloadClusterNodeCertsResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_DOWNLOADCLUSTERNODECERTSRESULT_H_

+ 48 - 0
cs/include/alibabacloud/cs/model/GatherLogsTokenRequest.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_CS_MODEL_GATHERLOGSTOKENREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_GATHERLOGSTOKENREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT GatherLogsTokenRequest : public RoaServiceRequest
+			{
+
+			public:
+				GatherLogsTokenRequest();
+				~GatherLogsTokenRequest();
+
+				std::string getToken()const;
+				void setToken(const std::string& token);
+
+            private:
+				std::string token_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_GATHERLOGSTOKENREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/GatherLogsTokenResult.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_CS_MODEL_GATHERLOGSTOKENRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_GATHERLOGSTOKENRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT GatherLogsTokenResult : public ServiceResult
+			{
+			public:
+
+
+				GatherLogsTokenResult();
+				explicit GatherLogsTokenResult(const std::string &payload);
+				~GatherLogsTokenResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_GATHERLOGSTOKENRESULT_H_

+ 48 - 0
cs/include/alibabacloud/cs/model/GetClusterProjectsRequest.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_CS_MODEL_GETCLUSTERPROJECTSREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_GETCLUSTERPROJECTSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT GetClusterProjectsRequest : public RoaServiceRequest
+			{
+
+			public:
+				GetClusterProjectsRequest();
+				~GetClusterProjectsRequest();
+
+				std::string getClusterId()const;
+				void setClusterId(const std::string& clusterId);
+
+            private:
+				std::string clusterId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_GETCLUSTERPROJECTSREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/GetClusterProjectsResult.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_CS_MODEL_GETCLUSTERPROJECTSRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_GETCLUSTERPROJECTSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT GetClusterProjectsResult : public ServiceResult
+			{
+			public:
+
+
+				GetClusterProjectsResult();
+				explicit GetClusterProjectsResult(const std::string &payload);
+				~GetClusterProjectsResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_GETCLUSTERPROJECTSRESULT_H_

+ 51 - 0
cs/include/alibabacloud/cs/model/GetProjectEventsRequest.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_CS_MODEL_GETPROJECTEVENTSREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_GETPROJECTEVENTSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT GetProjectEventsRequest : public RoaServiceRequest
+			{
+
+			public:
+				GetProjectEventsRequest();
+				~GetProjectEventsRequest();
+
+				std::string getClusterId()const;
+				void setClusterId(const std::string& clusterId);
+				std::string getProjectId()const;
+				void setProjectId(const std::string& projectId);
+
+            private:
+				std::string clusterId_;
+				std::string projectId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_GETPROJECTEVENTSREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/GetProjectEventsResult.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_CS_MODEL_GETPROJECTEVENTSRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_GETPROJECTEVENTSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT GetProjectEventsResult : public ServiceResult
+			{
+			public:
+
+
+				GetProjectEventsResult();
+				explicit GetProjectEventsResult(const std::string &payload);
+				~GetProjectEventsResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_GETPROJECTEVENTSRESULT_H_

+ 51 - 0
cs/include/alibabacloud/cs/model/GetTriggerHookRequest.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_CS_MODEL_GETTRIGGERHOOKREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_GETTRIGGERHOOKREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT GetTriggerHookRequest : public RoaServiceRequest
+			{
+
+			public:
+				GetTriggerHookRequest();
+				~GetTriggerHookRequest();
+
+				std::string getClusterId()const;
+				void setClusterId(const std::string& clusterId);
+				std::string getProjectId()const;
+				void setProjectId(const std::string& projectId);
+
+            private:
+				std::string clusterId_;
+				std::string projectId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_GETTRIGGERHOOKREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/GetTriggerHookResult.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_CS_MODEL_GETTRIGGERHOOKRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_GETTRIGGERHOOKRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT GetTriggerHookResult : public ServiceResult
+			{
+			public:
+
+
+				GetTriggerHookResult();
+				explicit GetTriggerHookResult(const std::string &payload);
+				~GetTriggerHookResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_GETTRIGGERHOOKRESULT_H_

+ 45 - 0
cs/include/alibabacloud/cs/model/ModifyClusterNameRequest.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_CS_MODEL_MODIFYCLUSTERNAMEREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_MODIFYCLUSTERNAMEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT ModifyClusterNameRequest : public RoaServiceRequest
+			{
+
+			public:
+				ModifyClusterNameRequest();
+				~ModifyClusterNameRequest();
+
+
+            private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_MODIFYCLUSTERNAMEREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/ModifyClusterNameResult.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_CS_MODEL_MODIFYCLUSTERNAMERESULT_H_
+#define ALIBABACLOUD_CS_MODEL_MODIFYCLUSTERNAMERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT ModifyClusterNameResult : public ServiceResult
+			{
+			public:
+
+
+				ModifyClusterNameResult();
+				explicit ModifyClusterNameResult(const std::string &payload);
+				~ModifyClusterNameResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_MODIFYCLUSTERNAMERESULT_H_

+ 51 - 0
cs/include/alibabacloud/cs/model/ResetClusterNodeRequest.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_CS_MODEL_RESETCLUSTERNODEREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_RESETCLUSTERNODEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT ResetClusterNodeRequest : public RoaServiceRequest
+			{
+
+			public:
+				ResetClusterNodeRequest();
+				~ResetClusterNodeRequest();
+
+				std::string getInstanceId()const;
+				void setInstanceId(const std::string& instanceId);
+				std::string getClusterId()const;
+				void setClusterId(const std::string& clusterId);
+
+            private:
+				std::string instanceId_;
+				std::string clusterId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_RESETCLUSTERNODEREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/ResetClusterNodeResult.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_CS_MODEL_RESETCLUSTERNODERESULT_H_
+#define ALIBABACLOUD_CS_MODEL_RESETCLUSTERNODERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT ResetClusterNodeResult : public ServiceResult
+			{
+			public:
+
+
+				ResetClusterNodeResult();
+				explicit ResetClusterNodeResult(const std::string &payload);
+				~ResetClusterNodeResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_RESETCLUSTERNODERESULT_H_

+ 48 - 0
cs/include/alibabacloud/cs/model/RevokeClusterTokenRequest.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_CS_MODEL_REVOKECLUSTERTOKENREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_REVOKECLUSTERTOKENREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT RevokeClusterTokenRequest : public RoaServiceRequest
+			{
+
+			public:
+				RevokeClusterTokenRequest();
+				~RevokeClusterTokenRequest();
+
+				std::string getToken()const;
+				void setToken(const std::string& token);
+
+            private:
+				std::string token_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_REVOKECLUSTERTOKENREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/RevokeClusterTokenResult.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_CS_MODEL_REVOKECLUSTERTOKENRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_REVOKECLUSTERTOKENRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT RevokeClusterTokenResult : public ServiceResult
+			{
+			public:
+
+
+				RevokeClusterTokenResult();
+				explicit RevokeClusterTokenResult(const std::string &payload);
+				~RevokeClusterTokenResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_REVOKECLUSTERTOKENRESULT_H_

+ 48 - 0
cs/include/alibabacloud/cs/model/ScaleClusterRequest.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_CS_MODEL_SCALECLUSTERREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_SCALECLUSTERREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT ScaleClusterRequest : public RoaServiceRequest
+			{
+
+			public:
+				ScaleClusterRequest();
+				~ScaleClusterRequest();
+
+				std::string getClusterId()const;
+				void setClusterId(const std::string& clusterId);
+
+            private:
+				std::string clusterId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_SCALECLUSTERREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/ScaleClusterResult.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_CS_MODEL_SCALECLUSTERRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_SCALECLUSTERRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT ScaleClusterResult : public ServiceResult
+			{
+			public:
+
+
+				ScaleClusterResult();
+				explicit ScaleClusterResult(const std::string &payload);
+				~ScaleClusterResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_SCALECLUSTERRESULT_H_

+ 48 - 0
cs/include/alibabacloud/cs/model/ScaleInClusterRequest.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_CS_MODEL_SCALEINCLUSTERREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_SCALEINCLUSTERREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT ScaleInClusterRequest : public RoaServiceRequest
+			{
+
+			public:
+				ScaleInClusterRequest();
+				~ScaleInClusterRequest();
+
+				std::string getClusterId()const;
+				void setClusterId(const std::string& clusterId);
+
+            private:
+				std::string clusterId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_SCALEINCLUSTERREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/ScaleInClusterResult.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_CS_MODEL_SCALEINCLUSTERRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_SCALEINCLUSTERRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT ScaleInClusterResult : public ServiceResult
+			{
+			public:
+
+
+				ScaleInClusterResult();
+				explicit ScaleInClusterResult(const std::string &payload);
+				~ScaleInClusterResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_SCALEINCLUSTERRESULT_H_

+ 45 - 0
cs/include/alibabacloud/cs/model/UpdateSubUserResoucesRequest.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_CS_MODEL_UPDATESUBUSERRESOUCESREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_UPDATESUBUSERRESOUCESREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT UpdateSubUserResoucesRequest : public RoaServiceRequest
+			{
+
+			public:
+				UpdateSubUserResoucesRequest();
+				~UpdateSubUserResoucesRequest();
+
+
+            private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_UPDATESUBUSERRESOUCESREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/UpdateSubUserResoucesResult.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_CS_MODEL_UPDATESUBUSERRESOUCESRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_UPDATESUBUSERRESOUCESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT UpdateSubUserResoucesResult : public ServiceResult
+			{
+			public:
+
+
+				UpdateSubUserResoucesResult();
+				explicit UpdateSubUserResoucesResult(const std::string &payload);
+				~UpdateSubUserResoucesResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_UPDATESUBUSERRESOUCESRESULT_H_

+ 51 - 0
cs/include/alibabacloud/cs/model/UpgradeClusterComponentsRequest.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_CS_MODEL_UPGRADECLUSTERCOMPONENTSREQUEST_H_
+#define ALIBABACLOUD_CS_MODEL_UPGRADECLUSTERCOMPONENTSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT UpgradeClusterComponentsRequest : public RoaServiceRequest
+			{
+
+			public:
+				UpgradeClusterComponentsRequest();
+				~UpgradeClusterComponentsRequest();
+
+				std::string getComponentId()const;
+				void setComponentId(const std::string& componentId);
+				std::string getClusterId()const;
+				void setClusterId(const std::string& clusterId);
+
+            private:
+				std::string componentId_;
+				std::string clusterId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_UPGRADECLUSTERCOMPONENTSREQUEST_H_

+ 49 - 0
cs/include/alibabacloud/cs/model/UpgradeClusterComponentsResult.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_CS_MODEL_UPGRADECLUSTERCOMPONENTSRESULT_H_
+#define ALIBABACLOUD_CS_MODEL_UPGRADECLUSTERCOMPONENTSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/cs/CSExport.h>
+
+namespace AlibabaCloud
+{
+	namespace CS
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_CS_EXPORT UpgradeClusterComponentsResult : public ServiceResult
+			{
+			public:
+
+
+				UpgradeClusterComponentsResult();
+				explicit UpgradeClusterComponentsResult(const std::string &payload);
+				~UpgradeClusterComponentsResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_CS_MODEL_UPGRADECLUSTERCOMPONENTSRESULT_H_

+ 1573 - 0
cs/src/CSClient.cc

@@ -0,0 +1,1573 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/cs/CSClient.h>
+#include <alibabacloud/core/SimpleCredentialsProvider.h>
+
+using namespace AlibabaCloud;
+using namespace AlibabaCloud::Location;
+using namespace AlibabaCloud::CS;
+using namespace AlibabaCloud::CS::Model;
+
+CSClient::CSClient(const Credentials &credentials, const ClientConfiguration &configuration) :
+	RoaServiceClient(std::make_shared<SimpleCredentialsProvider>(credentials), configuration)
+{
+	auto locationClient = std::make_shared<LocationClient>(credentials, configuration);
+	endpointProvider_ = std::make_shared<EndpointProvider>(locationClient, configuration.regionId(), "");
+}
+
+CSClient::CSClient(const std::shared_ptr<CredentialsProvider>& credentialsProvider, const ClientConfiguration & configuration) :
+	RoaServiceClient(credentialsProvider, configuration)
+{
+	auto locationClient = std::make_shared<LocationClient>(credentialsProvider, configuration);
+	endpointProvider_ = std::make_shared<EndpointProvider>(locationClient, configuration.regionId(), "");
+}
+
+CSClient::CSClient(const std::string & accessKeyId, const std::string & accessKeySecret, const ClientConfiguration & configuration) :
+	RoaServiceClient(std::make_shared<SimpleCredentialsProvider>(accessKeyId, accessKeySecret), configuration)
+{
+	auto locationClient = std::make_shared<LocationClient>(accessKeyId, accessKeySecret, configuration);
+	endpointProvider_ = std::make_shared<EndpointProvider>(locationClient, configuration.regionId(), "");
+}
+
+CSClient::~CSClient()
+{}
+
+CoreClient::EndpointOutcome CSClient::endpoint()const
+{
+	if(!configuration().endpoint().empty())
+		return CoreClient::EndpointOutcome(configuration().endpoint());
+
+	auto endpoint = endpointProvider_->getEndpoint();
+	
+	if (endpoint.empty())
+		return CoreClient::EndpointOutcome(Error("InvalidEndpoint",""));
+	else
+		return CoreClient::EndpointOutcome(endpoint);
+}
+
+CSClient::AttachInstancesOutcome CSClient::attachInstances(const AttachInstancesRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return AttachInstancesOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return AttachInstancesOutcome(AttachInstancesResult(outcome.result()));
+	else
+		return AttachInstancesOutcome(outcome.error());
+}
+
+void CSClient::attachInstancesAsync(const AttachInstancesRequest& request, const AttachInstancesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, attachInstances(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::AttachInstancesOutcomeCallable CSClient::attachInstancesCallable(const AttachInstancesRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<AttachInstancesOutcome()>>(
+			[this, request]()
+			{
+			return this->attachInstances(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::CallbackClusterTokenOutcome CSClient::callbackClusterToken(const CallbackClusterTokenRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return CallbackClusterTokenOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return CallbackClusterTokenOutcome(CallbackClusterTokenResult(outcome.result()));
+	else
+		return CallbackClusterTokenOutcome(outcome.error());
+}
+
+void CSClient::callbackClusterTokenAsync(const CallbackClusterTokenRequest& request, const CallbackClusterTokenAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, callbackClusterToken(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::CallbackClusterTokenOutcomeCallable CSClient::callbackClusterTokenCallable(const CallbackClusterTokenRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<CallbackClusterTokenOutcome()>>(
+			[this, request]()
+			{
+			return this->callbackClusterToken(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::DescribeTemplatesOutcome CSClient::describeTemplates(const DescribeTemplatesRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeTemplatesOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeTemplatesOutcome(DescribeTemplatesResult(outcome.result()));
+	else
+		return DescribeTemplatesOutcome(outcome.error());
+}
+
+void CSClient::describeTemplatesAsync(const DescribeTemplatesRequest& request, const DescribeTemplatesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeTemplates(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::DescribeTemplatesOutcomeCallable CSClient::describeTemplatesCallable(const DescribeTemplatesRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeTemplatesOutcome()>>(
+			[this, request]()
+			{
+			return this->describeTemplates(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::GetProjectEventsOutcome CSClient::getProjectEvents(const GetProjectEventsRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return GetProjectEventsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return GetProjectEventsOutcome(GetProjectEventsResult(outcome.result()));
+	else
+		return GetProjectEventsOutcome(outcome.error());
+}
+
+void CSClient::getProjectEventsAsync(const GetProjectEventsRequest& request, const GetProjectEventsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, getProjectEvents(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::GetProjectEventsOutcomeCallable CSClient::getProjectEventsCallable(const GetProjectEventsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<GetProjectEventsOutcome()>>(
+			[this, request]()
+			{
+			return this->getProjectEvents(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::CheckAliyunCSServiceRoleOutcome CSClient::checkAliyunCSServiceRole(const CheckAliyunCSServiceRoleRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return CheckAliyunCSServiceRoleOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return CheckAliyunCSServiceRoleOutcome(CheckAliyunCSServiceRoleResult(outcome.result()));
+	else
+		return CheckAliyunCSServiceRoleOutcome(outcome.error());
+}
+
+void CSClient::checkAliyunCSServiceRoleAsync(const CheckAliyunCSServiceRoleRequest& request, const CheckAliyunCSServiceRoleAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, checkAliyunCSServiceRole(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::CheckAliyunCSServiceRoleOutcomeCallable CSClient::checkAliyunCSServiceRoleCallable(const CheckAliyunCSServiceRoleRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<CheckAliyunCSServiceRoleOutcome()>>(
+			[this, request]()
+			{
+			return this->checkAliyunCSServiceRole(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::DescribeTemplateAttributeOutcome CSClient::describeTemplateAttribute(const DescribeTemplateAttributeRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeTemplateAttributeOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeTemplateAttributeOutcome(DescribeTemplateAttributeResult(outcome.result()));
+	else
+		return DescribeTemplateAttributeOutcome(outcome.error());
+}
+
+void CSClient::describeTemplateAttributeAsync(const DescribeTemplateAttributeRequest& request, const DescribeTemplateAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeTemplateAttribute(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::DescribeTemplateAttributeOutcomeCallable CSClient::describeTemplateAttributeCallable(const DescribeTemplateAttributeRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeTemplateAttributeOutcome()>>(
+			[this, request]()
+			{
+			return this->describeTemplateAttribute(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::CreateTemplateOutcome CSClient::createTemplate(const CreateTemplateRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return CreateTemplateOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return CreateTemplateOutcome(CreateTemplateResult(outcome.result()));
+	else
+		return CreateTemplateOutcome(outcome.error());
+}
+
+void CSClient::createTemplateAsync(const CreateTemplateRequest& request, const CreateTemplateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, createTemplate(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::CreateTemplateOutcomeCallable CSClient::createTemplateCallable(const CreateTemplateRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<CreateTemplateOutcome()>>(
+			[this, request]()
+			{
+			return this->createTemplate(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::DescribeClusterCertsOutcome CSClient::describeClusterCerts(const DescribeClusterCertsRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeClusterCertsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeClusterCertsOutcome(DescribeClusterCertsResult(outcome.result()));
+	else
+		return DescribeClusterCertsOutcome(outcome.error());
+}
+
+void CSClient::describeClusterCertsAsync(const DescribeClusterCertsRequest& request, const DescribeClusterCertsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeClusterCerts(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::DescribeClusterCertsOutcomeCallable CSClient::describeClusterCertsCallable(const DescribeClusterCertsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeClusterCertsOutcome()>>(
+			[this, request]()
+			{
+			return this->describeClusterCerts(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::DeleteClusterOutcome CSClient::deleteCluster(const DeleteClusterRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return DeleteClusterOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DeleteClusterOutcome(DeleteClusterResult(outcome.result()));
+	else
+		return DeleteClusterOutcome(outcome.error());
+}
+
+void CSClient::deleteClusterAsync(const DeleteClusterRequest& request, const DeleteClusterAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, deleteCluster(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::DeleteClusterOutcomeCallable CSClient::deleteClusterCallable(const DeleteClusterRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DeleteClusterOutcome()>>(
+			[this, request]()
+			{
+			return this->deleteCluster(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::DescribeClusterNodesOutcome CSClient::describeClusterNodes(const DescribeClusterNodesRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeClusterNodesOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeClusterNodesOutcome(DescribeClusterNodesResult(outcome.result()));
+	else
+		return DescribeClusterNodesOutcome(outcome.error());
+}
+
+void CSClient::describeClusterNodesAsync(const DescribeClusterNodesRequest& request, const DescribeClusterNodesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeClusterNodes(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::DescribeClusterNodesOutcomeCallable CSClient::describeClusterNodesCallable(const DescribeClusterNodesRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeClusterNodesOutcome()>>(
+			[this, request]()
+			{
+			return this->describeClusterNodes(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::CallBackAgilityClusterOutcome CSClient::callBackAgilityCluster(const CallBackAgilityClusterRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return CallBackAgilityClusterOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return CallBackAgilityClusterOutcome(CallBackAgilityClusterResult(outcome.result()));
+	else
+		return CallBackAgilityClusterOutcome(outcome.error());
+}
+
+void CSClient::callBackAgilityClusterAsync(const CallBackAgilityClusterRequest& request, const CallBackAgilityClusterAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, callBackAgilityCluster(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::CallBackAgilityClusterOutcomeCallable CSClient::callBackAgilityClusterCallable(const CallBackAgilityClusterRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<CallBackAgilityClusterOutcome()>>(
+			[this, request]()
+			{
+			return this->callBackAgilityCluster(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::DescribeClusterScaledNodeOutcome CSClient::describeClusterScaledNode(const DescribeClusterScaledNodeRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeClusterScaledNodeOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeClusterScaledNodeOutcome(DescribeClusterScaledNodeResult(outcome.result()));
+	else
+		return DescribeClusterScaledNodeOutcome(outcome.error());
+}
+
+void CSClient::describeClusterScaledNodeAsync(const DescribeClusterScaledNodeRequest& request, const DescribeClusterScaledNodeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeClusterScaledNode(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::DescribeClusterScaledNodeOutcomeCallable CSClient::describeClusterScaledNodeCallable(const DescribeClusterScaledNodeRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeClusterScaledNodeOutcome()>>(
+			[this, request]()
+			{
+			return this->describeClusterScaledNode(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::DescribeClusterLogsOutcome CSClient::describeClusterLogs(const DescribeClusterLogsRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeClusterLogsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeClusterLogsOutcome(DescribeClusterLogsResult(outcome.result()));
+	else
+		return DescribeClusterLogsOutcome(outcome.error());
+}
+
+void CSClient::describeClusterLogsAsync(const DescribeClusterLogsRequest& request, const DescribeClusterLogsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeClusterLogs(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::DescribeClusterLogsOutcomeCallable CSClient::describeClusterLogsCallable(const DescribeClusterLogsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeClusterLogsOutcome()>>(
+			[this, request]()
+			{
+			return this->describeClusterLogs(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::DescribeClusterDetailOutcome CSClient::describeClusterDetail(const DescribeClusterDetailRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeClusterDetailOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeClusterDetailOutcome(DescribeClusterDetailResult(outcome.result()));
+	else
+		return DescribeClusterDetailOutcome(outcome.error());
+}
+
+void CSClient::describeClusterDetailAsync(const DescribeClusterDetailRequest& request, const DescribeClusterDetailAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeClusterDetail(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::DescribeClusterDetailOutcomeCallable CSClient::describeClusterDetailCallable(const DescribeClusterDetailRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeClusterDetailOutcome()>>(
+			[this, request]()
+			{
+			return this->describeClusterDetail(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::ResetClusterNodeOutcome CSClient::resetClusterNode(const ResetClusterNodeRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return ResetClusterNodeOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ResetClusterNodeOutcome(ResetClusterNodeResult(outcome.result()));
+	else
+		return ResetClusterNodeOutcome(outcome.error());
+}
+
+void CSClient::resetClusterNodeAsync(const ResetClusterNodeRequest& request, const ResetClusterNodeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, resetClusterNode(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::ResetClusterNodeOutcomeCallable CSClient::resetClusterNodeCallable(const ResetClusterNodeRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ResetClusterNodeOutcome()>>(
+			[this, request]()
+			{
+			return this->resetClusterNode(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::DescribeServiceContainersOutcome CSClient::describeServiceContainers(const DescribeServiceContainersRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeServiceContainersOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeServiceContainersOutcome(DescribeServiceContainersResult(outcome.result()));
+	else
+		return DescribeServiceContainersOutcome(outcome.error());
+}
+
+void CSClient::describeServiceContainersAsync(const DescribeServiceContainersRequest& request, const DescribeServiceContainersAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeServiceContainers(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::DescribeServiceContainersOutcomeCallable CSClient::describeServiceContainersCallable(const DescribeServiceContainersRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeServiceContainersOutcome()>>(
+			[this, request]()
+			{
+			return this->describeServiceContainers(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::DescribeTaskInfoOutcome CSClient::describeTaskInfo(const DescribeTaskInfoRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeTaskInfoOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeTaskInfoOutcome(DescribeTaskInfoResult(outcome.result()));
+	else
+		return DescribeTaskInfoOutcome(outcome.error());
+}
+
+void CSClient::describeTaskInfoAsync(const DescribeTaskInfoRequest& request, const DescribeTaskInfoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeTaskInfo(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::DescribeTaskInfoOutcomeCallable CSClient::describeTaskInfoCallable(const DescribeTaskInfoRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeTaskInfoOutcome()>>(
+			[this, request]()
+			{
+			return this->describeTaskInfo(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::GetClusterProjectsOutcome CSClient::getClusterProjects(const GetClusterProjectsRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return GetClusterProjectsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return GetClusterProjectsOutcome(GetClusterProjectsResult(outcome.result()));
+	else
+		return GetClusterProjectsOutcome(outcome.error());
+}
+
+void CSClient::getClusterProjectsAsync(const GetClusterProjectsRequest& request, const GetClusterProjectsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, getClusterProjects(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::GetClusterProjectsOutcomeCallable CSClient::getClusterProjectsCallable(const GetClusterProjectsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<GetClusterProjectsOutcome()>>(
+			[this, request]()
+			{
+			return this->getClusterProjects(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::DescribeClusterServicesOutcome CSClient::describeClusterServices(const DescribeClusterServicesRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeClusterServicesOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeClusterServicesOutcome(DescribeClusterServicesResult(outcome.result()));
+	else
+		return DescribeClusterServicesOutcome(outcome.error());
+}
+
+void CSClient::describeClusterServicesAsync(const DescribeClusterServicesRequest& request, const DescribeClusterServicesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeClusterServices(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::DescribeClusterServicesOutcomeCallable CSClient::describeClusterServicesCallable(const DescribeClusterServicesRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeClusterServicesOutcome()>>(
+			[this, request]()
+			{
+			return this->describeClusterServices(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::ScaleInClusterOutcome CSClient::scaleInCluster(const ScaleInClusterRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return ScaleInClusterOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ScaleInClusterOutcome(ScaleInClusterResult(outcome.result()));
+	else
+		return ScaleInClusterOutcome(outcome.error());
+}
+
+void CSClient::scaleInClusterAsync(const ScaleInClusterRequest& request, const ScaleInClusterAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, scaleInCluster(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::ScaleInClusterOutcomeCallable CSClient::scaleInClusterCallable(const ScaleInClusterRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ScaleInClusterOutcome()>>(
+			[this, request]()
+			{
+			return this->scaleInCluster(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::DeleteClusterNodeOutcome CSClient::deleteClusterNode(const DeleteClusterNodeRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return DeleteClusterNodeOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DeleteClusterNodeOutcome(DeleteClusterNodeResult(outcome.result()));
+	else
+		return DeleteClusterNodeOutcome(outcome.error());
+}
+
+void CSClient::deleteClusterNodeAsync(const DeleteClusterNodeRequest& request, const DeleteClusterNodeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, deleteClusterNode(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::DeleteClusterNodeOutcomeCallable CSClient::deleteClusterNodeCallable(const DeleteClusterNodeRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DeleteClusterNodeOutcome()>>(
+			[this, request]()
+			{
+			return this->deleteClusterNode(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::RevokeClusterTokenOutcome CSClient::revokeClusterToken(const RevokeClusterTokenRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return RevokeClusterTokenOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return RevokeClusterTokenOutcome(RevokeClusterTokenResult(outcome.result()));
+	else
+		return RevokeClusterTokenOutcome(outcome.error());
+}
+
+void CSClient::revokeClusterTokenAsync(const RevokeClusterTokenRequest& request, const RevokeClusterTokenAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, revokeClusterToken(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::RevokeClusterTokenOutcomeCallable CSClient::revokeClusterTokenCallable(const RevokeClusterTokenRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<RevokeClusterTokenOutcome()>>(
+			[this, request]()
+			{
+			return this->revokeClusterToken(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::DescribeClustersOutcome CSClient::describeClusters(const DescribeClustersRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeClustersOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeClustersOutcome(DescribeClustersResult(outcome.result()));
+	else
+		return DescribeClustersOutcome(outcome.error());
+}
+
+void CSClient::describeClustersAsync(const DescribeClustersRequest& request, const DescribeClustersAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeClusters(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::DescribeClustersOutcomeCallable CSClient::describeClustersCallable(const DescribeClustersRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeClustersOutcome()>>(
+			[this, request]()
+			{
+			return this->describeClusters(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::AddAgilityClusterOutcome CSClient::addAgilityCluster(const AddAgilityClusterRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return AddAgilityClusterOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return AddAgilityClusterOutcome(AddAgilityClusterResult(outcome.result()));
+	else
+		return AddAgilityClusterOutcome(outcome.error());
+}
+
+void CSClient::addAgilityClusterAsync(const AddAgilityClusterRequest& request, const AddAgilityClusterAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, addAgilityCluster(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::AddAgilityClusterOutcomeCallable CSClient::addAgilityClusterCallable(const AddAgilityClusterRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<AddAgilityClusterOutcome()>>(
+			[this, request]()
+			{
+			return this->addAgilityCluster(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::DescribeImagesOutcome CSClient::describeImages(const DescribeImagesRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeImagesOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeImagesOutcome(DescribeImagesResult(outcome.result()));
+	else
+		return DescribeImagesOutcome(outcome.error());
+}
+
+void CSClient::describeImagesAsync(const DescribeImagesRequest& request, const DescribeImagesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeImages(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::DescribeImagesOutcomeCallable CSClient::describeImagesCallable(const DescribeImagesRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeImagesOutcome()>>(
+			[this, request]()
+			{
+			return this->describeImages(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::GetTriggerHookOutcome CSClient::getTriggerHook(const GetTriggerHookRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return GetTriggerHookOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return GetTriggerHookOutcome(GetTriggerHookResult(outcome.result()));
+	else
+		return GetTriggerHookOutcome(outcome.error());
+}
+
+void CSClient::getTriggerHookAsync(const GetTriggerHookRequest& request, const GetTriggerHookAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, getTriggerHook(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::GetTriggerHookOutcomeCallable CSClient::getTriggerHookCallable(const GetTriggerHookRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<GetTriggerHookOutcome()>>(
+			[this, request]()
+			{
+			return this->getTriggerHook(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::DescribeClusterTokensOutcome CSClient::describeClusterTokens(const DescribeClusterTokensRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeClusterTokensOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeClusterTokensOutcome(DescribeClusterTokensResult(outcome.result()));
+	else
+		return DescribeClusterTokensOutcome(outcome.error());
+}
+
+void CSClient::describeClusterTokensAsync(const DescribeClusterTokensRequest& request, const DescribeClusterTokensAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeClusterTokens(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::DescribeClusterTokensOutcomeCallable CSClient::describeClusterTokensCallable(const DescribeClusterTokensRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeClusterTokensOutcome()>>(
+			[this, request]()
+			{
+			return this->describeClusterTokens(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::UpdateSubUserResoucesOutcome CSClient::updateSubUserResouces(const UpdateSubUserResoucesRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return UpdateSubUserResoucesOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return UpdateSubUserResoucesOutcome(UpdateSubUserResoucesResult(outcome.result()));
+	else
+		return UpdateSubUserResoucesOutcome(outcome.error());
+}
+
+void CSClient::updateSubUserResoucesAsync(const UpdateSubUserResoucesRequest& request, const UpdateSubUserResoucesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, updateSubUserResouces(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::UpdateSubUserResoucesOutcomeCallable CSClient::updateSubUserResoucesCallable(const UpdateSubUserResoucesRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<UpdateSubUserResoucesOutcome()>>(
+			[this, request]()
+			{
+			return this->updateSubUserResouces(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::ModifyClusterNameOutcome CSClient::modifyClusterName(const ModifyClusterNameRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return ModifyClusterNameOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ModifyClusterNameOutcome(ModifyClusterNameResult(outcome.result()));
+	else
+		return ModifyClusterNameOutcome(outcome.error());
+}
+
+void CSClient::modifyClusterNameAsync(const ModifyClusterNameRequest& request, const ModifyClusterNameAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, modifyClusterName(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::ModifyClusterNameOutcomeCallable CSClient::modifyClusterNameCallable(const ModifyClusterNameRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ModifyClusterNameOutcome()>>(
+			[this, request]()
+			{
+			return this->modifyClusterName(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::DescribeClusterHostsOutcome CSClient::describeClusterHosts(const DescribeClusterHostsRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeClusterHostsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeClusterHostsOutcome(DescribeClusterHostsResult(outcome.result()));
+	else
+		return DescribeClusterHostsOutcome(outcome.error());
+}
+
+void CSClient::describeClusterHostsAsync(const DescribeClusterHostsRequest& request, const DescribeClusterHostsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeClusterHosts(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::DescribeClusterHostsOutcomeCallable CSClient::describeClusterHostsCallable(const DescribeClusterHostsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeClusterHostsOutcome()>>(
+			[this, request]()
+			{
+			return this->describeClusterHosts(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::DescribeApiVersionOutcome CSClient::describeApiVersion(const DescribeApiVersionRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeApiVersionOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeApiVersionOutcome(DescribeApiVersionResult(outcome.result()));
+	else
+		return DescribeApiVersionOutcome(outcome.error());
+}
+
+void CSClient::describeApiVersionAsync(const DescribeApiVersionRequest& request, const DescribeApiVersionAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeApiVersion(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::DescribeApiVersionOutcomeCallable CSClient::describeApiVersionCallable(const DescribeApiVersionRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeApiVersionOutcome()>>(
+			[this, request]()
+			{
+			return this->describeApiVersion(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::GatherLogsTokenOutcome CSClient::gatherLogsToken(const GatherLogsTokenRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return GatherLogsTokenOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return GatherLogsTokenOutcome(GatherLogsTokenResult(outcome.result()));
+	else
+		return GatherLogsTokenOutcome(outcome.error());
+}
+
+void CSClient::gatherLogsTokenAsync(const GatherLogsTokenRequest& request, const GatherLogsTokenAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, gatherLogsToken(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::GatherLogsTokenOutcomeCallable CSClient::gatherLogsTokenCallable(const GatherLogsTokenRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<GatherLogsTokenOutcome()>>(
+			[this, request]()
+			{
+			return this->gatherLogsToken(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::CreateClusterTokenOutcome CSClient::createClusterToken(const CreateClusterTokenRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return CreateClusterTokenOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return CreateClusterTokenOutcome(CreateClusterTokenResult(outcome.result()));
+	else
+		return CreateClusterTokenOutcome(outcome.error());
+}
+
+void CSClient::createClusterTokenAsync(const CreateClusterTokenRequest& request, const CreateClusterTokenAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, createClusterToken(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::CreateClusterTokenOutcomeCallable CSClient::createClusterTokenCallable(const CreateClusterTokenRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<CreateClusterTokenOutcome()>>(
+			[this, request]()
+			{
+			return this->createClusterToken(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::DescribeUserContainersOutcome CSClient::describeUserContainers(const DescribeUserContainersRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeUserContainersOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeUserContainersOutcome(DescribeUserContainersResult(outcome.result()));
+	else
+		return DescribeUserContainersOutcome(outcome.error());
+}
+
+void CSClient::describeUserContainersAsync(const DescribeUserContainersRequest& request, const DescribeUserContainersAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeUserContainers(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::DescribeUserContainersOutcomeCallable CSClient::describeUserContainersCallable(const DescribeUserContainersRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeUserContainersOutcome()>>(
+			[this, request]()
+			{
+			return this->describeUserContainers(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::DescribeAgilityTunnelAgentInfoOutcome CSClient::describeAgilityTunnelAgentInfo(const DescribeAgilityTunnelAgentInfoRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeAgilityTunnelAgentInfoOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeAgilityTunnelAgentInfoOutcome(DescribeAgilityTunnelAgentInfoResult(outcome.result()));
+	else
+		return DescribeAgilityTunnelAgentInfoOutcome(outcome.error());
+}
+
+void CSClient::describeAgilityTunnelAgentInfoAsync(const DescribeAgilityTunnelAgentInfoRequest& request, const DescribeAgilityTunnelAgentInfoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeAgilityTunnelAgentInfo(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::DescribeAgilityTunnelAgentInfoOutcomeCallable CSClient::describeAgilityTunnelAgentInfoCallable(const DescribeAgilityTunnelAgentInfoRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeAgilityTunnelAgentInfoOutcome()>>(
+			[this, request]()
+			{
+			return this->describeAgilityTunnelAgentInfo(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::DescribeClusterNodeInfoOutcome CSClient::describeClusterNodeInfo(const DescribeClusterNodeInfoRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeClusterNodeInfoOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeClusterNodeInfoOutcome(DescribeClusterNodeInfoResult(outcome.result()));
+	else
+		return DescribeClusterNodeInfoOutcome(outcome.error());
+}
+
+void CSClient::describeClusterNodeInfoAsync(const DescribeClusterNodeInfoRequest& request, const DescribeClusterNodeInfoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeClusterNodeInfo(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::DescribeClusterNodeInfoOutcomeCallable CSClient::describeClusterNodeInfoCallable(const DescribeClusterNodeInfoRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeClusterNodeInfoOutcome()>>(
+			[this, request]()
+			{
+			return this->describeClusterNodeInfo(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::ScaleClusterOutcome CSClient::scaleCluster(const ScaleClusterRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return ScaleClusterOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ScaleClusterOutcome(ScaleClusterResult(outcome.result()));
+	else
+		return ScaleClusterOutcome(outcome.error());
+}
+
+void CSClient::scaleClusterAsync(const ScaleClusterRequest& request, const ScaleClusterAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, scaleCluster(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::ScaleClusterOutcomeCallable CSClient::scaleClusterCallable(const ScaleClusterRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ScaleClusterOutcome()>>(
+			[this, request]()
+			{
+			return this->scaleCluster(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::DescribeAgilityTunnelCertsOutcome CSClient::describeAgilityTunnelCerts(const DescribeAgilityTunnelCertsRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeAgilityTunnelCertsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeAgilityTunnelCertsOutcome(DescribeAgilityTunnelCertsResult(outcome.result()));
+	else
+		return DescribeAgilityTunnelCertsOutcome(outcome.error());
+}
+
+void CSClient::describeAgilityTunnelCertsAsync(const DescribeAgilityTunnelCertsRequest& request, const DescribeAgilityTunnelCertsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeAgilityTunnelCerts(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::DescribeAgilityTunnelCertsOutcomeCallable CSClient::describeAgilityTunnelCertsCallable(const DescribeAgilityTunnelCertsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeAgilityTunnelCertsOutcome()>>(
+			[this, request]()
+			{
+			return this->describeAgilityTunnelCerts(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::DescribeClusterNodeInfoWithInstanceOutcome CSClient::describeClusterNodeInfoWithInstance(const DescribeClusterNodeInfoWithInstanceRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeClusterNodeInfoWithInstanceOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeClusterNodeInfoWithInstanceOutcome(DescribeClusterNodeInfoWithInstanceResult(outcome.result()));
+	else
+		return DescribeClusterNodeInfoWithInstanceOutcome(outcome.error());
+}
+
+void CSClient::describeClusterNodeInfoWithInstanceAsync(const DescribeClusterNodeInfoWithInstanceRequest& request, const DescribeClusterNodeInfoWithInstanceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeClusterNodeInfoWithInstance(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::DescribeClusterNodeInfoWithInstanceOutcomeCallable CSClient::describeClusterNodeInfoWithInstanceCallable(const DescribeClusterNodeInfoWithInstanceRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeClusterNodeInfoWithInstanceOutcome()>>(
+			[this, request]()
+			{
+			return this->describeClusterNodeInfoWithInstance(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::UpgradeClusterComponentsOutcome CSClient::upgradeClusterComponents(const UpgradeClusterComponentsRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return UpgradeClusterComponentsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return UpgradeClusterComponentsOutcome(UpgradeClusterComponentsResult(outcome.result()));
+	else
+		return UpgradeClusterComponentsOutcome(outcome.error());
+}
+
+void CSClient::upgradeClusterComponentsAsync(const UpgradeClusterComponentsRequest& request, const UpgradeClusterComponentsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, upgradeClusterComponents(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::UpgradeClusterComponentsOutcomeCallable CSClient::upgradeClusterComponentsCallable(const UpgradeClusterComponentsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<UpgradeClusterComponentsOutcome()>>(
+			[this, request]()
+			{
+			return this->upgradeClusterComponents(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::DownloadClusterNodeCertsOutcome CSClient::downloadClusterNodeCerts(const DownloadClusterNodeCertsRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return DownloadClusterNodeCertsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DownloadClusterNodeCertsOutcome(DownloadClusterNodeCertsResult(outcome.result()));
+	else
+		return DownloadClusterNodeCertsOutcome(outcome.error());
+}
+
+void CSClient::downloadClusterNodeCertsAsync(const DownloadClusterNodeCertsRequest& request, const DownloadClusterNodeCertsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, downloadClusterNodeCerts(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::DownloadClusterNodeCertsOutcomeCallable CSClient::downloadClusterNodeCertsCallable(const DownloadClusterNodeCertsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DownloadClusterNodeCertsOutcome()>>(
+			[this, request]()
+			{
+			return this->downloadClusterNodeCerts(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+CSClient::CreateClusterOutcome CSClient::createCluster(const CreateClusterRequest &request) const
+{
+	auto endpointOutcome = endpoint();
+	if (!endpointOutcome.isSuccess())
+		return CreateClusterOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return CreateClusterOutcome(CreateClusterResult(outcome.result()));
+	else
+		return CreateClusterOutcome(outcome.error());
+}
+
+void CSClient::createClusterAsync(const CreateClusterRequest& request, const CreateClusterAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, createCluster(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+CSClient::CreateClusterOutcomeCallable CSClient::createClusterCallable(const CreateClusterRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<CreateClusterOutcome()>>(
+			[this, request]()
+			{
+			return this->createCluster(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+

+ 27 - 0
cs/src/model/AddAgilityClusterRequest.cc

@@ -0,0 +1,27 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/cs/model/AddAgilityClusterRequest.h>
+
+using AlibabaCloud::CS::Model::AddAgilityClusterRequest;
+
+AddAgilityClusterRequest::AddAgilityClusterRequest() :
+	RoaServiceRequest("cs", "2015-12-15")
+{}
+
+AddAgilityClusterRequest::~AddAgilityClusterRequest()
+{}
+

+ 45 - 0
cs/src/model/AddAgilityClusterResult.cc

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

+ 38 - 0
cs/src/model/AttachInstancesRequest.cc

@@ -0,0 +1,38 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/cs/model/AttachInstancesRequest.h>
+
+using AlibabaCloud::CS::Model::AttachInstancesRequest;
+
+AttachInstancesRequest::AttachInstancesRequest() :
+	RoaServiceRequest("cs", "2015-12-15")
+{}
+
+AttachInstancesRequest::~AttachInstancesRequest()
+{}
+
+std::string AttachInstancesRequest::getClusterId()const
+{
+	return clusterId_;
+}
+
+void AttachInstancesRequest::setClusterId(const std::string& clusterId)
+{
+	clusterId_ = clusterId;
+	setParameter("ClusterId", clusterId);
+}
+

+ 45 - 0
cs/src/model/AttachInstancesResult.cc

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

+ 49 - 0
cs/src/model/CallBackAgilityClusterRequest.cc

@@ -0,0 +1,49 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/cs/model/CallBackAgilityClusterRequest.h>
+
+using AlibabaCloud::CS::Model::CallBackAgilityClusterRequest;
+
+CallBackAgilityClusterRequest::CallBackAgilityClusterRequest() :
+	RoaServiceRequest("cs", "2015-12-15")
+{}
+
+CallBackAgilityClusterRequest::~CallBackAgilityClusterRequest()
+{}
+
+std::string CallBackAgilityClusterRequest::getReqOnce()const
+{
+	return reqOnce_;
+}
+
+void CallBackAgilityClusterRequest::setReqOnce(const std::string& reqOnce)
+{
+	reqOnce_ = reqOnce;
+	setParameter("ReqOnce", reqOnce);
+}
+
+std::string CallBackAgilityClusterRequest::getToken()const
+{
+	return token_;
+}
+
+void CallBackAgilityClusterRequest::setToken(const std::string& token)
+{
+	token_ = token;
+	setParameter("Token", token);
+}
+

+ 45 - 0
cs/src/model/CallBackAgilityClusterResult.cc

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

+ 49 - 0
cs/src/model/CallbackClusterTokenRequest.cc

@@ -0,0 +1,49 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/cs/model/CallbackClusterTokenRequest.h>
+
+using AlibabaCloud::CS::Model::CallbackClusterTokenRequest;
+
+CallbackClusterTokenRequest::CallbackClusterTokenRequest() :
+	RoaServiceRequest("cs", "2015-12-15")
+{}
+
+CallbackClusterTokenRequest::~CallbackClusterTokenRequest()
+{}
+
+std::string CallbackClusterTokenRequest::getReqOnce()const
+{
+	return reqOnce_;
+}
+
+void CallbackClusterTokenRequest::setReqOnce(const std::string& reqOnce)
+{
+	reqOnce_ = reqOnce;
+	setParameter("ReqOnce", reqOnce);
+}
+
+std::string CallbackClusterTokenRequest::getToken()const
+{
+	return token_;
+}
+
+void CallbackClusterTokenRequest::setToken(const std::string& token)
+{
+	token_ = token;
+	setParameter("Token", token);
+}
+

+ 45 - 0
cs/src/model/CallbackClusterTokenResult.cc

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

+ 27 - 0
cs/src/model/CheckAliyunCSServiceRoleRequest.cc

@@ -0,0 +1,27 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/cs/model/CheckAliyunCSServiceRoleRequest.h>
+
+using AlibabaCloud::CS::Model::CheckAliyunCSServiceRoleRequest;
+
+CheckAliyunCSServiceRoleRequest::CheckAliyunCSServiceRoleRequest() :
+	RoaServiceRequest("cs", "2015-12-15")
+{}
+
+CheckAliyunCSServiceRoleRequest::~CheckAliyunCSServiceRoleRequest()
+{}
+

برخی فایل ها در این مقایسه diff نمایش داده نمی شوند زیرا تعداد فایل ها بسیار زیاد است