Procházet zdrojové kódy

Add ListAppInstances Open API.

sdk-team před 3 roky
rodič
revize
dbaa86de9e
100 změnil soubory, kde provedl 7953 přidání a 1 odebrání
  1. 1 1
      VERSION
  2. 182 0
      appstream-center/CMakeLists.txt
  3. 246 0
      appstream-center/include/alibabacloud/appstream-center/Appstream_centerClient.h
  4. 32 0
      appstream-center/include/alibabacloud/appstream-center/Appstream_centerExport.h
  5. 57 0
      appstream-center/include/alibabacloud/appstream-center/model/ApproveOtaTaskRequest.h
  6. 53 0
      appstream-center/include/alibabacloud/appstream-center/model/ApproveOtaTaskResult.h
  7. 54 0
      appstream-center/include/alibabacloud/appstream-center/model/AuthorizeInstanceGroupRequest.h
  8. 49 0
      appstream-center/include/alibabacloud/appstream-center/model/AuthorizeInstanceGroupResult.h
  9. 45 0
      appstream-center/include/alibabacloud/appstream-center/model/CancelOtaTaskRequest.h
  10. 53 0
      appstream-center/include/alibabacloud/appstream-center/model/CancelOtaTaskResult.h
  11. 186 0
      appstream-center/include/alibabacloud/appstream-center/model/CreateAppInstanceGroupRequest.h
  12. 58 0
      appstream-center/include/alibabacloud/appstream-center/model/CreateAppInstanceGroupResult.h
  13. 45 0
      appstream-center/include/alibabacloud/appstream-center/model/DeleteAppInstanceGroupRequest.h
  14. 49 0
      appstream-center/include/alibabacloud/appstream-center/model/DeleteAppInstanceGroupResult.h
  15. 48 0
      appstream-center/include/alibabacloud/appstream-center/model/DeleteAppInstancesRequest.h
  16. 58 0
      appstream-center/include/alibabacloud/appstream-center/model/DeleteAppInstancesResult.h
  17. 45 0
      appstream-center/include/alibabacloud/appstream-center/model/GetAppInstanceGroupRequest.h
  18. 129 0
      appstream-center/include/alibabacloud/appstream-center/model/GetAppInstanceGroupResult.h
  19. 77 0
      appstream-center/include/alibabacloud/appstream-center/model/GetConnectionTicketRequest.h
  20. 63 0
      appstream-center/include/alibabacloud/appstream-center/model/GetConnectionTicketResult.h
  21. 42 0
      appstream-center/include/alibabacloud/appstream-center/model/GetOtaTaskByTaskIdRequest.h
  22. 59 0
      appstream-center/include/alibabacloud/appstream-center/model/GetOtaTaskByTaskIdResult.h
  23. 60 0
      appstream-center/include/alibabacloud/appstream-center/model/GetResourcePriceRequest.h
  24. 81 0
      appstream-center/include/alibabacloud/appstream-center/model/GetResourcePriceResult.h
  25. 51 0
      appstream-center/include/alibabacloud/appstream-center/model/GetResourceRenewPriceRequest.h
  26. 77 0
      appstream-center/include/alibabacloud/appstream-center/model/GetResourceRenewPriceResult.h
  27. 69 0
      appstream-center/include/alibabacloud/appstream-center/model/ListAppInstanceGroupRequest.h
  28. 133 0
      appstream-center/include/alibabacloud/appstream-center/model/ListAppInstanceGroupResult.h
  29. 54 0
      appstream-center/include/alibabacloud/appstream-center/model/ListAppInstancesRequest.h
  30. 67 0
      appstream-center/include/alibabacloud/appstream-center/model/ListAppInstancesResult.h
  31. 57 0
      appstream-center/include/alibabacloud/appstream-center/model/ListNodeInstanceTypeRequest.h
  32. 70 0
      appstream-center/include/alibabacloud/appstream-center/model/ListNodeInstanceTypeResult.h
  33. 51 0
      appstream-center/include/alibabacloud/appstream-center/model/ListOtaTaskRequest.h
  34. 64 0
      appstream-center/include/alibabacloud/appstream-center/model/ListOtaTaskResult.h
  35. 39 0
      appstream-center/include/alibabacloud/appstream-center/model/ListRegionsRequest.h
  36. 55 0
      appstream-center/include/alibabacloud/appstream-center/model/ListRegionsResult.h
  37. 39 0
      appstream-center/include/alibabacloud/appstream-center/model/ListTenantConfigRequest.h
  38. 55 0
      appstream-center/include/alibabacloud/appstream-center/model/ListTenantConfigResult.h
  39. 45 0
      appstream-center/include/alibabacloud/appstream-center/model/LogOffAllSessionsInAppInstanceGroupRequest.h
  40. 53 0
      appstream-center/include/alibabacloud/appstream-center/model/LogOffAllSessionsInAppInstanceGroupResult.h
  41. 58 0
      appstream-center/include/alibabacloud/appstream-center/model/ModifyAppInstanceGroupAttributeRequest.h
  42. 53 0
      appstream-center/include/alibabacloud/appstream-center/model/ModifyAppInstanceGroupAttributeResult.h
  43. 78 0
      appstream-center/include/alibabacloud/appstream-center/model/ModifyNodePoolAttributeRequest.h
  44. 53 0
      appstream-center/include/alibabacloud/appstream-center/model/ModifyNodePoolAttributeResult.h
  45. 42 0
      appstream-center/include/alibabacloud/appstream-center/model/ModifyTenantConfigRequest.h
  46. 49 0
      appstream-center/include/alibabacloud/appstream-center/model/ModifyTenantConfigResult.h
  47. 51 0
      appstream-center/include/alibabacloud/appstream-center/model/PageListAppInstanceGroupUserRequest.h
  48. 51 0
      appstream-center/include/alibabacloud/appstream-center/model/PageListAppInstanceGroupUserResult.h
  49. 57 0
      appstream-center/include/alibabacloud/appstream-center/model/RenewAppInstanceGroupRequest.h
  50. 55 0
      appstream-center/include/alibabacloud/appstream-center/model/RenewAppInstanceGroupResult.h
  51. 51 0
      appstream-center/include/alibabacloud/appstream-center/model/UnbindRequest.h
  52. 49 0
      appstream-center/include/alibabacloud/appstream-center/model/UnbindResult.h
  53. 54 0
      appstream-center/include/alibabacloud/appstream-center/model/UpdateAppInstanceGroupImageRequest.h
  54. 53 0
      appstream-center/include/alibabacloud/appstream-center/model/UpdateAppInstanceGroupImageResult.h
  55. 953 0
      appstream-center/src/Appstream-centerClient.cc
  56. 81 0
      appstream-center/src/model/ApproveOtaTaskRequest.cc
  57. 58 0
      appstream-center/src/model/ApproveOtaTaskResult.cc
  58. 70 0
      appstream-center/src/model/AuthorizeInstanceGroupRequest.cc
  59. 44 0
      appstream-center/src/model/AuthorizeInstanceGroupResult.cc
  60. 45 0
      appstream-center/src/model/CancelOtaTaskRequest.cc
  61. 58 0
      appstream-center/src/model/CancelOtaTaskResult.cc
  62. 336 0
      appstream-center/src/model/CreateAppInstanceGroupRequest.cc
  63. 58 0
      appstream-center/src/model/CreateAppInstanceGroupResult.cc
  64. 45 0
      appstream-center/src/model/DeleteAppInstanceGroupRequest.cc
  65. 44 0
      appstream-center/src/model/DeleteAppInstanceGroupResult.cc
  66. 53 0
      appstream-center/src/model/DeleteAppInstancesRequest.cc
  67. 63 0
      appstream-center/src/model/DeleteAppInstancesResult.cc
  68. 45 0
      appstream-center/src/model/GetAppInstanceGroupRequest.cc
  69. 195 0
      appstream-center/src/model/GetAppInstanceGroupResult.cc
  70. 125 0
      appstream-center/src/model/GetConnectionTicketRequest.cc
  71. 93 0
      appstream-center/src/model/GetConnectionTicketResult.cc
  72. 36 0
      appstream-center/src/model/GetOtaTaskByTaskIdRequest.cc
  73. 79 0
      appstream-center/src/model/GetOtaTaskByTaskIdResult.cc
  74. 90 0
      appstream-center/src/model/GetResourcePriceRequest.cc
  75. 99 0
      appstream-center/src/model/GetResourcePriceResult.cc
  76. 63 0
      appstream-center/src/model/GetResourceRenewPriceRequest.cc
  77. 85 0
      appstream-center/src/model/GetResourceRenewPriceResult.cc
  78. 116 0
      appstream-center/src/model/ListAppInstanceGroupRequest.cc
  79. 208 0
      appstream-center/src/model/ListAppInstanceGroupResult.cc
  80. 71 0
      appstream-center/src/model/ListAppInstancesRequest.cc
  81. 90 0
      appstream-center/src/model/ListAppInstancesResult.cc
  82. 81 0
      appstream-center/src/model/ListNodeInstanceTypeRequest.cc
  83. 96 0
      appstream-center/src/model/ListNodeInstanceTypeResult.cc
  84. 63 0
      appstream-center/src/model/ListOtaTaskRequest.cc
  85. 84 0
      appstream-center/src/model/ListOtaTaskResult.cc
  86. 27 0
      appstream-center/src/model/ListRegionsRequest.cc
  87. 57 0
      appstream-center/src/model/ListRegionsResult.cc
  88. 27 0
      appstream-center/src/model/ListTenantConfigRequest.cc
  89. 52 0
      appstream-center/src/model/ListTenantConfigResult.cc
  90. 45 0
      appstream-center/src/model/LogOffAllSessionsInAppInstanceGroupRequest.cc
  91. 58 0
      appstream-center/src/model/LogOffAllSessionsInAppInstanceGroupResult.cc
  92. 73 0
      appstream-center/src/model/ModifyAppInstanceGroupAttributeRequest.cc
  93. 58 0
      appstream-center/src/model/ModifyAppInstanceGroupAttributeResult.cc
  94. 90 0
      appstream-center/src/model/ModifyNodePoolAttributeRequest.cc
  95. 58 0
      appstream-center/src/model/ModifyNodePoolAttributeResult.cc
  96. 36 0
      appstream-center/src/model/ModifyTenantConfigRequest.cc
  97. 44 0
      appstream-center/src/model/ModifyTenantConfigResult.cc
  98. 63 0
      appstream-center/src/model/PageListAppInstanceGroupUserRequest.cc
  99. 52 0
      appstream-center/src/model/PageListAppInstanceGroupUserResult.cc
  100. 81 0
      appstream-center/src/model/RenewAppInstanceGroupRequest.cc

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.36.1510
+1.36.1511

+ 182 - 0
appstream-center/CMakeLists.txt

@@ -0,0 +1,182 @@
+#
+# Copyright 2009-2017 Alibaba Cloud All rights reserved.
+# 
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# 
+#      http://www.apache.org/licenses/LICENSE-2.0
+# 
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT 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(appstream-center_public_header 
+	include/alibabacloud/appstream-center/Appstream_centerClient.h
+	include/alibabacloud/appstream-center/Appstream_centerExport.h )
+
+set(appstream-center_public_header_model 
+	include/alibabacloud/appstream-center/model/ApproveOtaTaskRequest.h
+	include/alibabacloud/appstream-center/model/ApproveOtaTaskResult.h
+	include/alibabacloud/appstream-center/model/AuthorizeInstanceGroupRequest.h
+	include/alibabacloud/appstream-center/model/AuthorizeInstanceGroupResult.h
+	include/alibabacloud/appstream-center/model/CancelOtaTaskRequest.h
+	include/alibabacloud/appstream-center/model/CancelOtaTaskResult.h
+	include/alibabacloud/appstream-center/model/CreateAppInstanceGroupRequest.h
+	include/alibabacloud/appstream-center/model/CreateAppInstanceGroupResult.h
+	include/alibabacloud/appstream-center/model/DeleteAppInstanceGroupRequest.h
+	include/alibabacloud/appstream-center/model/DeleteAppInstanceGroupResult.h
+	include/alibabacloud/appstream-center/model/DeleteAppInstancesRequest.h
+	include/alibabacloud/appstream-center/model/DeleteAppInstancesResult.h
+	include/alibabacloud/appstream-center/model/GetAppInstanceGroupRequest.h
+	include/alibabacloud/appstream-center/model/GetAppInstanceGroupResult.h
+	include/alibabacloud/appstream-center/model/GetConnectionTicketRequest.h
+	include/alibabacloud/appstream-center/model/GetConnectionTicketResult.h
+	include/alibabacloud/appstream-center/model/GetOtaTaskByTaskIdRequest.h
+	include/alibabacloud/appstream-center/model/GetOtaTaskByTaskIdResult.h
+	include/alibabacloud/appstream-center/model/GetResourcePriceRequest.h
+	include/alibabacloud/appstream-center/model/GetResourcePriceResult.h
+	include/alibabacloud/appstream-center/model/GetResourceRenewPriceRequest.h
+	include/alibabacloud/appstream-center/model/GetResourceRenewPriceResult.h
+	include/alibabacloud/appstream-center/model/ListAppInstanceGroupRequest.h
+	include/alibabacloud/appstream-center/model/ListAppInstanceGroupResult.h
+	include/alibabacloud/appstream-center/model/ListAppInstancesRequest.h
+	include/alibabacloud/appstream-center/model/ListAppInstancesResult.h
+	include/alibabacloud/appstream-center/model/ListNodeInstanceTypeRequest.h
+	include/alibabacloud/appstream-center/model/ListNodeInstanceTypeResult.h
+	include/alibabacloud/appstream-center/model/ListOtaTaskRequest.h
+	include/alibabacloud/appstream-center/model/ListOtaTaskResult.h
+	include/alibabacloud/appstream-center/model/ListRegionsRequest.h
+	include/alibabacloud/appstream-center/model/ListRegionsResult.h
+	include/alibabacloud/appstream-center/model/ListTenantConfigRequest.h
+	include/alibabacloud/appstream-center/model/ListTenantConfigResult.h
+	include/alibabacloud/appstream-center/model/LogOffAllSessionsInAppInstanceGroupRequest.h
+	include/alibabacloud/appstream-center/model/LogOffAllSessionsInAppInstanceGroupResult.h
+	include/alibabacloud/appstream-center/model/ModifyAppInstanceGroupAttributeRequest.h
+	include/alibabacloud/appstream-center/model/ModifyAppInstanceGroupAttributeResult.h
+	include/alibabacloud/appstream-center/model/ModifyNodePoolAttributeRequest.h
+	include/alibabacloud/appstream-center/model/ModifyNodePoolAttributeResult.h
+	include/alibabacloud/appstream-center/model/ModifyTenantConfigRequest.h
+	include/alibabacloud/appstream-center/model/ModifyTenantConfigResult.h
+	include/alibabacloud/appstream-center/model/PageListAppInstanceGroupUserRequest.h
+	include/alibabacloud/appstream-center/model/PageListAppInstanceGroupUserResult.h
+	include/alibabacloud/appstream-center/model/RenewAppInstanceGroupRequest.h
+	include/alibabacloud/appstream-center/model/RenewAppInstanceGroupResult.h
+	include/alibabacloud/appstream-center/model/UnbindRequest.h
+	include/alibabacloud/appstream-center/model/UnbindResult.h
+	include/alibabacloud/appstream-center/model/UpdateAppInstanceGroupImageRequest.h
+	include/alibabacloud/appstream-center/model/UpdateAppInstanceGroupImageResult.h )
+
+set(appstream-center_src 
+	src/Appstream-centerClient.cc
+	src/model/ApproveOtaTaskRequest.cc
+	src/model/ApproveOtaTaskResult.cc
+	src/model/AuthorizeInstanceGroupRequest.cc
+	src/model/AuthorizeInstanceGroupResult.cc
+	src/model/CancelOtaTaskRequest.cc
+	src/model/CancelOtaTaskResult.cc
+	src/model/CreateAppInstanceGroupRequest.cc
+	src/model/CreateAppInstanceGroupResult.cc
+	src/model/DeleteAppInstanceGroupRequest.cc
+	src/model/DeleteAppInstanceGroupResult.cc
+	src/model/DeleteAppInstancesRequest.cc
+	src/model/DeleteAppInstancesResult.cc
+	src/model/GetAppInstanceGroupRequest.cc
+	src/model/GetAppInstanceGroupResult.cc
+	src/model/GetConnectionTicketRequest.cc
+	src/model/GetConnectionTicketResult.cc
+	src/model/GetOtaTaskByTaskIdRequest.cc
+	src/model/GetOtaTaskByTaskIdResult.cc
+	src/model/GetResourcePriceRequest.cc
+	src/model/GetResourcePriceResult.cc
+	src/model/GetResourceRenewPriceRequest.cc
+	src/model/GetResourceRenewPriceResult.cc
+	src/model/ListAppInstanceGroupRequest.cc
+	src/model/ListAppInstanceGroupResult.cc
+	src/model/ListAppInstancesRequest.cc
+	src/model/ListAppInstancesResult.cc
+	src/model/ListNodeInstanceTypeRequest.cc
+	src/model/ListNodeInstanceTypeResult.cc
+	src/model/ListOtaTaskRequest.cc
+	src/model/ListOtaTaskResult.cc
+	src/model/ListRegionsRequest.cc
+	src/model/ListRegionsResult.cc
+	src/model/ListTenantConfigRequest.cc
+	src/model/ListTenantConfigResult.cc
+	src/model/LogOffAllSessionsInAppInstanceGroupRequest.cc
+	src/model/LogOffAllSessionsInAppInstanceGroupResult.cc
+	src/model/ModifyAppInstanceGroupAttributeRequest.cc
+	src/model/ModifyAppInstanceGroupAttributeResult.cc
+	src/model/ModifyNodePoolAttributeRequest.cc
+	src/model/ModifyNodePoolAttributeResult.cc
+	src/model/ModifyTenantConfigRequest.cc
+	src/model/ModifyTenantConfigResult.cc
+	src/model/PageListAppInstanceGroupUserRequest.cc
+	src/model/PageListAppInstanceGroupUserResult.cc
+	src/model/RenewAppInstanceGroupRequest.cc
+	src/model/RenewAppInstanceGroupResult.cc
+	src/model/UnbindRequest.cc
+	src/model/UnbindResult.cc
+	src/model/UpdateAppInstanceGroupImageRequest.cc
+	src/model/UpdateAppInstanceGroupImageResult.cc )
+
+add_library(appstream-center ${LIB_TYPE}
+	${appstream-center_public_header}
+	${appstream-center_public_header_model}
+	${appstream-center_src})
+
+set_target_properties(appstream-center
+	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}appstream-center
+	)
+
+if(${LIB_TYPE} STREQUAL "SHARED")
+	set_target_properties(appstream-center
+		PROPERTIES
+		DEFINE_SYMBOL ALIBABACLOUD_APPSTREAM_CENTER_LIBRARY)
+endif()
+
+target_include_directories(appstream-center
+	PRIVATE include
+		${CMAKE_SOURCE_DIR}/core/include
+	)
+target_link_libraries(appstream-center
+	core)
+
+if(CMAKE_HOST_WIN32)
+	ExternalProject_Get_Property(jsoncpp INSTALL_DIR)
+	set(jsoncpp_install_dir ${INSTALL_DIR})
+	add_dependencies(appstream-center
+		jsoncpp)
+	target_include_directories(appstream-center
+		PRIVATE	${jsoncpp_install_dir}/include)
+	target_link_libraries(appstream-center
+		${jsoncpp_install_dir}/lib/jsoncpp.lib)
+	set_target_properties(appstream-center
+    	PROPERTIES
+    		COMPILE_OPTIONS "/bigobj")
+else()
+	target_include_directories(appstream-center
+		PRIVATE /usr/include/jsoncpp)
+	target_link_libraries(appstream-center
+		jsoncpp)
+endif()
+
+install(FILES ${appstream-center_public_header}
+	DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/alibabacloud/appstream-center)
+install(FILES ${appstream-center_public_header_model}
+	DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/alibabacloud/appstream-center/model)
+install(TARGETS appstream-center
+	ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+	LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+	RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+	)

+ 246 - 0
appstream-center/include/alibabacloud/appstream-center/Appstream_centerClient.h

@@ -0,0 +1,246 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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_APPSTREAM_CENTER_APPSTREAM_CENTERCLIENT_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_APPSTREAM_CENTERCLIENT_H_
+
+#include <future>
+#include <alibabacloud/core/AsyncCallerContext.h>
+#include <alibabacloud/core/EndpointProvider.h>
+#include <alibabacloud/core/RpcServiceClient.h>
+#include "Appstream_centerExport.h"
+#include "model/ApproveOtaTaskRequest.h"
+#include "model/ApproveOtaTaskResult.h"
+#include "model/AuthorizeInstanceGroupRequest.h"
+#include "model/AuthorizeInstanceGroupResult.h"
+#include "model/CancelOtaTaskRequest.h"
+#include "model/CancelOtaTaskResult.h"
+#include "model/CreateAppInstanceGroupRequest.h"
+#include "model/CreateAppInstanceGroupResult.h"
+#include "model/DeleteAppInstanceGroupRequest.h"
+#include "model/DeleteAppInstanceGroupResult.h"
+#include "model/DeleteAppInstancesRequest.h"
+#include "model/DeleteAppInstancesResult.h"
+#include "model/GetAppInstanceGroupRequest.h"
+#include "model/GetAppInstanceGroupResult.h"
+#include "model/GetConnectionTicketRequest.h"
+#include "model/GetConnectionTicketResult.h"
+#include "model/GetOtaTaskByTaskIdRequest.h"
+#include "model/GetOtaTaskByTaskIdResult.h"
+#include "model/GetResourcePriceRequest.h"
+#include "model/GetResourcePriceResult.h"
+#include "model/GetResourceRenewPriceRequest.h"
+#include "model/GetResourceRenewPriceResult.h"
+#include "model/ListAppInstanceGroupRequest.h"
+#include "model/ListAppInstanceGroupResult.h"
+#include "model/ListAppInstancesRequest.h"
+#include "model/ListAppInstancesResult.h"
+#include "model/ListNodeInstanceTypeRequest.h"
+#include "model/ListNodeInstanceTypeResult.h"
+#include "model/ListOtaTaskRequest.h"
+#include "model/ListOtaTaskResult.h"
+#include "model/ListRegionsRequest.h"
+#include "model/ListRegionsResult.h"
+#include "model/ListTenantConfigRequest.h"
+#include "model/ListTenantConfigResult.h"
+#include "model/LogOffAllSessionsInAppInstanceGroupRequest.h"
+#include "model/LogOffAllSessionsInAppInstanceGroupResult.h"
+#include "model/ModifyAppInstanceGroupAttributeRequest.h"
+#include "model/ModifyAppInstanceGroupAttributeResult.h"
+#include "model/ModifyNodePoolAttributeRequest.h"
+#include "model/ModifyNodePoolAttributeResult.h"
+#include "model/ModifyTenantConfigRequest.h"
+#include "model/ModifyTenantConfigResult.h"
+#include "model/PageListAppInstanceGroupUserRequest.h"
+#include "model/PageListAppInstanceGroupUserResult.h"
+#include "model/RenewAppInstanceGroupRequest.h"
+#include "model/RenewAppInstanceGroupResult.h"
+#include "model/UnbindRequest.h"
+#include "model/UnbindResult.h"
+#include "model/UpdateAppInstanceGroupImageRequest.h"
+#include "model/UpdateAppInstanceGroupImageResult.h"
+
+
+namespace AlibabaCloud
+{
+	namespace Appstream_center
+	{
+		class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT Appstream_centerClient : public RpcServiceClient
+		{
+		public:
+			typedef Outcome<Error, Model::ApproveOtaTaskResult> ApproveOtaTaskOutcome;
+			typedef std::future<ApproveOtaTaskOutcome> ApproveOtaTaskOutcomeCallable;
+			typedef std::function<void(const Appstream_centerClient*, const Model::ApproveOtaTaskRequest&, const ApproveOtaTaskOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ApproveOtaTaskAsyncHandler;
+			typedef Outcome<Error, Model::AuthorizeInstanceGroupResult> AuthorizeInstanceGroupOutcome;
+			typedef std::future<AuthorizeInstanceGroupOutcome> AuthorizeInstanceGroupOutcomeCallable;
+			typedef std::function<void(const Appstream_centerClient*, const Model::AuthorizeInstanceGroupRequest&, const AuthorizeInstanceGroupOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AuthorizeInstanceGroupAsyncHandler;
+			typedef Outcome<Error, Model::CancelOtaTaskResult> CancelOtaTaskOutcome;
+			typedef std::future<CancelOtaTaskOutcome> CancelOtaTaskOutcomeCallable;
+			typedef std::function<void(const Appstream_centerClient*, const Model::CancelOtaTaskRequest&, const CancelOtaTaskOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CancelOtaTaskAsyncHandler;
+			typedef Outcome<Error, Model::CreateAppInstanceGroupResult> CreateAppInstanceGroupOutcome;
+			typedef std::future<CreateAppInstanceGroupOutcome> CreateAppInstanceGroupOutcomeCallable;
+			typedef std::function<void(const Appstream_centerClient*, const Model::CreateAppInstanceGroupRequest&, const CreateAppInstanceGroupOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateAppInstanceGroupAsyncHandler;
+			typedef Outcome<Error, Model::DeleteAppInstanceGroupResult> DeleteAppInstanceGroupOutcome;
+			typedef std::future<DeleteAppInstanceGroupOutcome> DeleteAppInstanceGroupOutcomeCallable;
+			typedef std::function<void(const Appstream_centerClient*, const Model::DeleteAppInstanceGroupRequest&, const DeleteAppInstanceGroupOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteAppInstanceGroupAsyncHandler;
+			typedef Outcome<Error, Model::DeleteAppInstancesResult> DeleteAppInstancesOutcome;
+			typedef std::future<DeleteAppInstancesOutcome> DeleteAppInstancesOutcomeCallable;
+			typedef std::function<void(const Appstream_centerClient*, const Model::DeleteAppInstancesRequest&, const DeleteAppInstancesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteAppInstancesAsyncHandler;
+			typedef Outcome<Error, Model::GetAppInstanceGroupResult> GetAppInstanceGroupOutcome;
+			typedef std::future<GetAppInstanceGroupOutcome> GetAppInstanceGroupOutcomeCallable;
+			typedef std::function<void(const Appstream_centerClient*, const Model::GetAppInstanceGroupRequest&, const GetAppInstanceGroupOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetAppInstanceGroupAsyncHandler;
+			typedef Outcome<Error, Model::GetConnectionTicketResult> GetConnectionTicketOutcome;
+			typedef std::future<GetConnectionTicketOutcome> GetConnectionTicketOutcomeCallable;
+			typedef std::function<void(const Appstream_centerClient*, const Model::GetConnectionTicketRequest&, const GetConnectionTicketOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetConnectionTicketAsyncHandler;
+			typedef Outcome<Error, Model::GetOtaTaskByTaskIdResult> GetOtaTaskByTaskIdOutcome;
+			typedef std::future<GetOtaTaskByTaskIdOutcome> GetOtaTaskByTaskIdOutcomeCallable;
+			typedef std::function<void(const Appstream_centerClient*, const Model::GetOtaTaskByTaskIdRequest&, const GetOtaTaskByTaskIdOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetOtaTaskByTaskIdAsyncHandler;
+			typedef Outcome<Error, Model::GetResourcePriceResult> GetResourcePriceOutcome;
+			typedef std::future<GetResourcePriceOutcome> GetResourcePriceOutcomeCallable;
+			typedef std::function<void(const Appstream_centerClient*, const Model::GetResourcePriceRequest&, const GetResourcePriceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetResourcePriceAsyncHandler;
+			typedef Outcome<Error, Model::GetResourceRenewPriceResult> GetResourceRenewPriceOutcome;
+			typedef std::future<GetResourceRenewPriceOutcome> GetResourceRenewPriceOutcomeCallable;
+			typedef std::function<void(const Appstream_centerClient*, const Model::GetResourceRenewPriceRequest&, const GetResourceRenewPriceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetResourceRenewPriceAsyncHandler;
+			typedef Outcome<Error, Model::ListAppInstanceGroupResult> ListAppInstanceGroupOutcome;
+			typedef std::future<ListAppInstanceGroupOutcome> ListAppInstanceGroupOutcomeCallable;
+			typedef std::function<void(const Appstream_centerClient*, const Model::ListAppInstanceGroupRequest&, const ListAppInstanceGroupOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListAppInstanceGroupAsyncHandler;
+			typedef Outcome<Error, Model::ListAppInstancesResult> ListAppInstancesOutcome;
+			typedef std::future<ListAppInstancesOutcome> ListAppInstancesOutcomeCallable;
+			typedef std::function<void(const Appstream_centerClient*, const Model::ListAppInstancesRequest&, const ListAppInstancesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListAppInstancesAsyncHandler;
+			typedef Outcome<Error, Model::ListNodeInstanceTypeResult> ListNodeInstanceTypeOutcome;
+			typedef std::future<ListNodeInstanceTypeOutcome> ListNodeInstanceTypeOutcomeCallable;
+			typedef std::function<void(const Appstream_centerClient*, const Model::ListNodeInstanceTypeRequest&, const ListNodeInstanceTypeOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListNodeInstanceTypeAsyncHandler;
+			typedef Outcome<Error, Model::ListOtaTaskResult> ListOtaTaskOutcome;
+			typedef std::future<ListOtaTaskOutcome> ListOtaTaskOutcomeCallable;
+			typedef std::function<void(const Appstream_centerClient*, const Model::ListOtaTaskRequest&, const ListOtaTaskOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListOtaTaskAsyncHandler;
+			typedef Outcome<Error, Model::ListRegionsResult> ListRegionsOutcome;
+			typedef std::future<ListRegionsOutcome> ListRegionsOutcomeCallable;
+			typedef std::function<void(const Appstream_centerClient*, const Model::ListRegionsRequest&, const ListRegionsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListRegionsAsyncHandler;
+			typedef Outcome<Error, Model::ListTenantConfigResult> ListTenantConfigOutcome;
+			typedef std::future<ListTenantConfigOutcome> ListTenantConfigOutcomeCallable;
+			typedef std::function<void(const Appstream_centerClient*, const Model::ListTenantConfigRequest&, const ListTenantConfigOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListTenantConfigAsyncHandler;
+			typedef Outcome<Error, Model::LogOffAllSessionsInAppInstanceGroupResult> LogOffAllSessionsInAppInstanceGroupOutcome;
+			typedef std::future<LogOffAllSessionsInAppInstanceGroupOutcome> LogOffAllSessionsInAppInstanceGroupOutcomeCallable;
+			typedef std::function<void(const Appstream_centerClient*, const Model::LogOffAllSessionsInAppInstanceGroupRequest&, const LogOffAllSessionsInAppInstanceGroupOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> LogOffAllSessionsInAppInstanceGroupAsyncHandler;
+			typedef Outcome<Error, Model::ModifyAppInstanceGroupAttributeResult> ModifyAppInstanceGroupAttributeOutcome;
+			typedef std::future<ModifyAppInstanceGroupAttributeOutcome> ModifyAppInstanceGroupAttributeOutcomeCallable;
+			typedef std::function<void(const Appstream_centerClient*, const Model::ModifyAppInstanceGroupAttributeRequest&, const ModifyAppInstanceGroupAttributeOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyAppInstanceGroupAttributeAsyncHandler;
+			typedef Outcome<Error, Model::ModifyNodePoolAttributeResult> ModifyNodePoolAttributeOutcome;
+			typedef std::future<ModifyNodePoolAttributeOutcome> ModifyNodePoolAttributeOutcomeCallable;
+			typedef std::function<void(const Appstream_centerClient*, const Model::ModifyNodePoolAttributeRequest&, const ModifyNodePoolAttributeOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyNodePoolAttributeAsyncHandler;
+			typedef Outcome<Error, Model::ModifyTenantConfigResult> ModifyTenantConfigOutcome;
+			typedef std::future<ModifyTenantConfigOutcome> ModifyTenantConfigOutcomeCallable;
+			typedef std::function<void(const Appstream_centerClient*, const Model::ModifyTenantConfigRequest&, const ModifyTenantConfigOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyTenantConfigAsyncHandler;
+			typedef Outcome<Error, Model::PageListAppInstanceGroupUserResult> PageListAppInstanceGroupUserOutcome;
+			typedef std::future<PageListAppInstanceGroupUserOutcome> PageListAppInstanceGroupUserOutcomeCallable;
+			typedef std::function<void(const Appstream_centerClient*, const Model::PageListAppInstanceGroupUserRequest&, const PageListAppInstanceGroupUserOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> PageListAppInstanceGroupUserAsyncHandler;
+			typedef Outcome<Error, Model::RenewAppInstanceGroupResult> RenewAppInstanceGroupOutcome;
+			typedef std::future<RenewAppInstanceGroupOutcome> RenewAppInstanceGroupOutcomeCallable;
+			typedef std::function<void(const Appstream_centerClient*, const Model::RenewAppInstanceGroupRequest&, const RenewAppInstanceGroupOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RenewAppInstanceGroupAsyncHandler;
+			typedef Outcome<Error, Model::UnbindResult> UnbindOutcome;
+			typedef std::future<UnbindOutcome> UnbindOutcomeCallable;
+			typedef std::function<void(const Appstream_centerClient*, const Model::UnbindRequest&, const UnbindOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UnbindAsyncHandler;
+			typedef Outcome<Error, Model::UpdateAppInstanceGroupImageResult> UpdateAppInstanceGroupImageOutcome;
+			typedef std::future<UpdateAppInstanceGroupImageOutcome> UpdateAppInstanceGroupImageOutcomeCallable;
+			typedef std::function<void(const Appstream_centerClient*, const Model::UpdateAppInstanceGroupImageRequest&, const UpdateAppInstanceGroupImageOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateAppInstanceGroupImageAsyncHandler;
+
+			Appstream_centerClient(const Credentials &credentials, const ClientConfiguration &configuration);
+			Appstream_centerClient(const std::shared_ptr<CredentialsProvider> &credentialsProvider, const ClientConfiguration &configuration);
+			Appstream_centerClient(const std::string &accessKeyId, const std::string &accessKeySecret, const ClientConfiguration &configuration);
+			~Appstream_centerClient();
+			ApproveOtaTaskOutcome approveOtaTask(const Model::ApproveOtaTaskRequest &request)const;
+			void approveOtaTaskAsync(const Model::ApproveOtaTaskRequest& request, const ApproveOtaTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ApproveOtaTaskOutcomeCallable approveOtaTaskCallable(const Model::ApproveOtaTaskRequest& request) const;
+			AuthorizeInstanceGroupOutcome authorizeInstanceGroup(const Model::AuthorizeInstanceGroupRequest &request)const;
+			void authorizeInstanceGroupAsync(const Model::AuthorizeInstanceGroupRequest& request, const AuthorizeInstanceGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			AuthorizeInstanceGroupOutcomeCallable authorizeInstanceGroupCallable(const Model::AuthorizeInstanceGroupRequest& request) const;
+			CancelOtaTaskOutcome cancelOtaTask(const Model::CancelOtaTaskRequest &request)const;
+			void cancelOtaTaskAsync(const Model::CancelOtaTaskRequest& request, const CancelOtaTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CancelOtaTaskOutcomeCallable cancelOtaTaskCallable(const Model::CancelOtaTaskRequest& request) const;
+			CreateAppInstanceGroupOutcome createAppInstanceGroup(const Model::CreateAppInstanceGroupRequest &request)const;
+			void createAppInstanceGroupAsync(const Model::CreateAppInstanceGroupRequest& request, const CreateAppInstanceGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateAppInstanceGroupOutcomeCallable createAppInstanceGroupCallable(const Model::CreateAppInstanceGroupRequest& request) const;
+			DeleteAppInstanceGroupOutcome deleteAppInstanceGroup(const Model::DeleteAppInstanceGroupRequest &request)const;
+			void deleteAppInstanceGroupAsync(const Model::DeleteAppInstanceGroupRequest& request, const DeleteAppInstanceGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteAppInstanceGroupOutcomeCallable deleteAppInstanceGroupCallable(const Model::DeleteAppInstanceGroupRequest& request) const;
+			DeleteAppInstancesOutcome deleteAppInstances(const Model::DeleteAppInstancesRequest &request)const;
+			void deleteAppInstancesAsync(const Model::DeleteAppInstancesRequest& request, const DeleteAppInstancesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteAppInstancesOutcomeCallable deleteAppInstancesCallable(const Model::DeleteAppInstancesRequest& request) const;
+			GetAppInstanceGroupOutcome getAppInstanceGroup(const Model::GetAppInstanceGroupRequest &request)const;
+			void getAppInstanceGroupAsync(const Model::GetAppInstanceGroupRequest& request, const GetAppInstanceGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetAppInstanceGroupOutcomeCallable getAppInstanceGroupCallable(const Model::GetAppInstanceGroupRequest& request) const;
+			GetConnectionTicketOutcome getConnectionTicket(const Model::GetConnectionTicketRequest &request)const;
+			void getConnectionTicketAsync(const Model::GetConnectionTicketRequest& request, const GetConnectionTicketAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetConnectionTicketOutcomeCallable getConnectionTicketCallable(const Model::GetConnectionTicketRequest& request) const;
+			GetOtaTaskByTaskIdOutcome getOtaTaskByTaskId(const Model::GetOtaTaskByTaskIdRequest &request)const;
+			void getOtaTaskByTaskIdAsync(const Model::GetOtaTaskByTaskIdRequest& request, const GetOtaTaskByTaskIdAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetOtaTaskByTaskIdOutcomeCallable getOtaTaskByTaskIdCallable(const Model::GetOtaTaskByTaskIdRequest& request) const;
+			GetResourcePriceOutcome getResourcePrice(const Model::GetResourcePriceRequest &request)const;
+			void getResourcePriceAsync(const Model::GetResourcePriceRequest& request, const GetResourcePriceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetResourcePriceOutcomeCallable getResourcePriceCallable(const Model::GetResourcePriceRequest& request) const;
+			GetResourceRenewPriceOutcome getResourceRenewPrice(const Model::GetResourceRenewPriceRequest &request)const;
+			void getResourceRenewPriceAsync(const Model::GetResourceRenewPriceRequest& request, const GetResourceRenewPriceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetResourceRenewPriceOutcomeCallable getResourceRenewPriceCallable(const Model::GetResourceRenewPriceRequest& request) const;
+			ListAppInstanceGroupOutcome listAppInstanceGroup(const Model::ListAppInstanceGroupRequest &request)const;
+			void listAppInstanceGroupAsync(const Model::ListAppInstanceGroupRequest& request, const ListAppInstanceGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListAppInstanceGroupOutcomeCallable listAppInstanceGroupCallable(const Model::ListAppInstanceGroupRequest& request) const;
+			ListAppInstancesOutcome listAppInstances(const Model::ListAppInstancesRequest &request)const;
+			void listAppInstancesAsync(const Model::ListAppInstancesRequest& request, const ListAppInstancesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListAppInstancesOutcomeCallable listAppInstancesCallable(const Model::ListAppInstancesRequest& request) const;
+			ListNodeInstanceTypeOutcome listNodeInstanceType(const Model::ListNodeInstanceTypeRequest &request)const;
+			void listNodeInstanceTypeAsync(const Model::ListNodeInstanceTypeRequest& request, const ListNodeInstanceTypeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListNodeInstanceTypeOutcomeCallable listNodeInstanceTypeCallable(const Model::ListNodeInstanceTypeRequest& request) const;
+			ListOtaTaskOutcome listOtaTask(const Model::ListOtaTaskRequest &request)const;
+			void listOtaTaskAsync(const Model::ListOtaTaskRequest& request, const ListOtaTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListOtaTaskOutcomeCallable listOtaTaskCallable(const Model::ListOtaTaskRequest& request) const;
+			ListRegionsOutcome listRegions(const Model::ListRegionsRequest &request)const;
+			void listRegionsAsync(const Model::ListRegionsRequest& request, const ListRegionsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListRegionsOutcomeCallable listRegionsCallable(const Model::ListRegionsRequest& request) const;
+			ListTenantConfigOutcome listTenantConfig(const Model::ListTenantConfigRequest &request)const;
+			void listTenantConfigAsync(const Model::ListTenantConfigRequest& request, const ListTenantConfigAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListTenantConfigOutcomeCallable listTenantConfigCallable(const Model::ListTenantConfigRequest& request) const;
+			LogOffAllSessionsInAppInstanceGroupOutcome logOffAllSessionsInAppInstanceGroup(const Model::LogOffAllSessionsInAppInstanceGroupRequest &request)const;
+			void logOffAllSessionsInAppInstanceGroupAsync(const Model::LogOffAllSessionsInAppInstanceGroupRequest& request, const LogOffAllSessionsInAppInstanceGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			LogOffAllSessionsInAppInstanceGroupOutcomeCallable logOffAllSessionsInAppInstanceGroupCallable(const Model::LogOffAllSessionsInAppInstanceGroupRequest& request) const;
+			ModifyAppInstanceGroupAttributeOutcome modifyAppInstanceGroupAttribute(const Model::ModifyAppInstanceGroupAttributeRequest &request)const;
+			void modifyAppInstanceGroupAttributeAsync(const Model::ModifyAppInstanceGroupAttributeRequest& request, const ModifyAppInstanceGroupAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyAppInstanceGroupAttributeOutcomeCallable modifyAppInstanceGroupAttributeCallable(const Model::ModifyAppInstanceGroupAttributeRequest& request) const;
+			ModifyNodePoolAttributeOutcome modifyNodePoolAttribute(const Model::ModifyNodePoolAttributeRequest &request)const;
+			void modifyNodePoolAttributeAsync(const Model::ModifyNodePoolAttributeRequest& request, const ModifyNodePoolAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyNodePoolAttributeOutcomeCallable modifyNodePoolAttributeCallable(const Model::ModifyNodePoolAttributeRequest& request) const;
+			ModifyTenantConfigOutcome modifyTenantConfig(const Model::ModifyTenantConfigRequest &request)const;
+			void modifyTenantConfigAsync(const Model::ModifyTenantConfigRequest& request, const ModifyTenantConfigAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyTenantConfigOutcomeCallable modifyTenantConfigCallable(const Model::ModifyTenantConfigRequest& request) const;
+			PageListAppInstanceGroupUserOutcome pageListAppInstanceGroupUser(const Model::PageListAppInstanceGroupUserRequest &request)const;
+			void pageListAppInstanceGroupUserAsync(const Model::PageListAppInstanceGroupUserRequest& request, const PageListAppInstanceGroupUserAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			PageListAppInstanceGroupUserOutcomeCallable pageListAppInstanceGroupUserCallable(const Model::PageListAppInstanceGroupUserRequest& request) const;
+			RenewAppInstanceGroupOutcome renewAppInstanceGroup(const Model::RenewAppInstanceGroupRequest &request)const;
+			void renewAppInstanceGroupAsync(const Model::RenewAppInstanceGroupRequest& request, const RenewAppInstanceGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			RenewAppInstanceGroupOutcomeCallable renewAppInstanceGroupCallable(const Model::RenewAppInstanceGroupRequest& request) const;
+			UnbindOutcome unbind(const Model::UnbindRequest &request)const;
+			void unbindAsync(const Model::UnbindRequest& request, const UnbindAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			UnbindOutcomeCallable unbindCallable(const Model::UnbindRequest& request) const;
+			UpdateAppInstanceGroupImageOutcome updateAppInstanceGroupImage(const Model::UpdateAppInstanceGroupImageRequest &request)const;
+			void updateAppInstanceGroupImageAsync(const Model::UpdateAppInstanceGroupImageRequest& request, const UpdateAppInstanceGroupImageAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			UpdateAppInstanceGroupImageOutcomeCallable updateAppInstanceGroupImageCallable(const Model::UpdateAppInstanceGroupImageRequest& request) const;
+	
+		private:
+			std::shared_ptr<EndpointProvider> endpointProvider_;
+		};
+	}
+}
+
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_APPSTREAM_CENTERCLIENT_H_

+ 32 - 0
appstream-center/include/alibabacloud/appstream-center/Appstream_centerExport.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_APPSTREAM_CENTER_APPSTREAM_CENTEREXPORT_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_APPSTREAM_CENTEREXPORT_H_
+
+#include <alibabacloud/core/Global.h>
+
+#if defined(ALIBABACLOUD_SHARED)
+#	if defined(ALIBABACLOUD_APPSTREAM_CENTER_LIBRARY)
+#		define ALIBABACLOUD_APPSTREAM_CENTER_EXPORT ALIBABACLOUD_DECL_EXPORT
+#	else
+#		define ALIBABACLOUD_APPSTREAM_CENTER_EXPORT ALIBABACLOUD_DECL_IMPORT
+#	endif
+#else
+#	define ALIBABACLOUD_APPSTREAM_CENTER_EXPORT
+#endif
+
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_APPSTREAM_CENTEREXPORT_H_

+ 57 - 0
appstream-center/include/alibabacloud/appstream-center/model/ApproveOtaTaskRequest.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_APPSTREAM_CENTER_MODEL_APPROVEOTATASKREQUEST_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_APPROVEOTATASKREQUEST_H_
+
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Appstream_center {
+namespace Model {
+class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT ApproveOtaTaskRequest : public RpcServiceRequest {
+public:
+	ApproveOtaTaskRequest();
+	~ApproveOtaTaskRequest();
+	std::string getBizRegionId() const;
+	void setBizRegionId(const std::string &bizRegionId);
+	std::string getOtaType() const;
+	void setOtaType(const std::string &otaType);
+	std::string getStartTime() const;
+	void setStartTime(const std::string &startTime);
+	std::string getStopTime() const;
+	void setStopTime(const std::string &stopTime);
+	std::string getAppInstanceGroupId() const;
+	void setAppInstanceGroupId(const std::string &appInstanceGroupId);
+	std::string getTaskId() const;
+	void setTaskId(const std::string &taskId);
+
+private:
+	std::string bizRegionId_;
+	std::string otaType_;
+	std::string startTime_;
+	std::string stopTime_;
+	std::string appInstanceGroupId_;
+	std::string taskId_;
+};
+} // namespace Model
+} // namespace Appstream_center
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_APPROVEOTATASKREQUEST_H_

+ 53 - 0
appstream-center/include/alibabacloud/appstream-center/model/ApproveOtaTaskResult.h

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

+ 54 - 0
appstream-center/include/alibabacloud/appstream-center/model/AuthorizeInstanceGroupRequest.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_APPSTREAM_CENTER_MODEL_AUTHORIZEINSTANCEGROUPREQUEST_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_AUTHORIZEINSTANCEGROUPREQUEST_H_
+
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Appstream_center {
+namespace Model {
+class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT AuthorizeInstanceGroupRequest : public RpcServiceRequest {
+public:
+	AuthorizeInstanceGroupRequest();
+	~AuthorizeInstanceGroupRequest();
+	std::string getSpecId() const;
+	void setSpecId(const std::string &specId);
+	std::vector<std::string> getUnAuthorizeUserIds() const;
+	void setUnAuthorizeUserIds(const std::vector<std::string> &unAuthorizeUserIds);
+	std::string getProductType() const;
+	void setProductType(const std::string &productType);
+	std::string getAppInstanceGroupId() const;
+	void setAppInstanceGroupId(const std::string &appInstanceGroupId);
+	std::vector<std::string> getAuthorizeUserIds() const;
+	void setAuthorizeUserIds(const std::vector<std::string> &authorizeUserIds);
+
+private:
+	std::string specId_;
+	std::vector<std::string> unAuthorizeUserIds_;
+	std::string productType_;
+	std::string appInstanceGroupId_;
+	std::vector<std::string> authorizeUserIds_;
+};
+} // namespace Model
+} // namespace Appstream_center
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_AUTHORIZEINSTANCEGROUPREQUEST_H_

+ 49 - 0
appstream-center/include/alibabacloud/appstream-center/model/AuthorizeInstanceGroupResult.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_APPSTREAM_CENTER_MODEL_AUTHORIZEINSTANCEGROUPRESULT_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_AUTHORIZEINSTANCEGROUPRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Appstream_center
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT AuthorizeInstanceGroupResult : public ServiceResult
+			{
+			public:
+
+
+				AuthorizeInstanceGroupResult();
+				explicit AuthorizeInstanceGroupResult(const std::string &payload);
+				~AuthorizeInstanceGroupResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_AUTHORIZEINSTANCEGROUPRESULT_H_

+ 45 - 0
appstream-center/include/alibabacloud/appstream-center/model/CancelOtaTaskRequest.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_APPSTREAM_CENTER_MODEL_CANCELOTATASKREQUEST_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_CANCELOTATASKREQUEST_H_
+
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Appstream_center {
+namespace Model {
+class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT CancelOtaTaskRequest : public RpcServiceRequest {
+public:
+	CancelOtaTaskRequest();
+	~CancelOtaTaskRequest();
+	std::string getAppInstanceGroupId() const;
+	void setAppInstanceGroupId(const std::string &appInstanceGroupId);
+	std::string getTaskId() const;
+	void setTaskId(const std::string &taskId);
+
+private:
+	std::string appInstanceGroupId_;
+	std::string taskId_;
+};
+} // namespace Model
+} // namespace Appstream_center
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_CANCELOTATASKREQUEST_H_

+ 53 - 0
appstream-center/include/alibabacloud/appstream-center/model/CancelOtaTaskResult.h

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

+ 186 - 0
appstream-center/include/alibabacloud/appstream-center/model/CreateAppInstanceGroupRequest.h

@@ -0,0 +1,186 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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_APPSTREAM_CENTER_MODEL_CREATEAPPINSTANCEGROUPREQUEST_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_CREATEAPPINSTANCEGROUPREQUEST_H_
+
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Appstream_center {
+namespace Model {
+class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT CreateAppInstanceGroupRequest : public RpcServiceRequest {
+public:
+	struct RuntimePolicy {
+		std::string sessionType;
+		std::string debugMode;
+	};
+	struct Network {
+		struct RoutesItem {
+			std::string mode;
+			std::string destination;
+		};
+		RoutesItem routesItem;
+		std::vector<RoutesItem> routes;
+		std::string strategyType;
+	};
+	struct UserInfo {
+		std::string type;
+	};
+	struct NodePool {
+		struct RecurrenceSchedulesItem {
+			int integer;
+			std::vector<int> recurrenceValues;
+			std::string recurrenceType;
+			struct TimerPeriodsItem {
+				int amount;
+				std::string endTime;
+				std::string startTime;
+			};
+			TimerPeriodsItem timerPeriodsItem;
+			std::vector<TimerPeriodsItem> timerPeriods;
+		};
+		RecurrenceSchedulesItem recurrenceSchedulesItem;
+		std::vector<RecurrenceSchedulesItem> recurrenceSchedules;
+		int nodeAmount;
+		int scalingStep;
+		std::string strategyDisableDate;
+		std::string nodeInstanceType;
+		int scalingDownAfterIdleMinutes;
+		std::string strategyType;
+		int maxScalingAmount;
+		bool warmUp;
+		std::string scalingUsageThreshold;
+		int nodeCapacity;
+		std::string strategyEnableDate;
+	};
+	struct SecurityPolicy {
+		bool resetAfterUnbind;
+	};
+	struct VideoPolicy {
+		bool webrtc;
+		bool terminalResolutionAdaptive;
+		int frameRate;
+		int sessionResolutionWidth;
+		std::string streamingMode;
+		int sessionResolutionHeight;
+	};
+	CreateAppInstanceGroupRequest();
+	~CreateAppInstanceGroupRequest();
+	RuntimePolicy getRuntimePolicy() const;
+	void setRuntimePolicy(const RuntimePolicy &runtimePolicy);
+	std::string getBizRegionId() const;
+	void setBizRegionId(const std::string &bizRegionId);
+	int getScalingStep() const;
+	void setScalingStep(int scalingStep);
+	int getScalingDownAfterIdleMinutes() const;
+	void setScalingDownAfterIdleMinutes(int scalingDownAfterIdleMinutes);
+	int getMinAmount() const;
+	void setMinAmount(int minAmount);
+	std::string getProductType() const;
+	void setProductType(const std::string &productType);
+	Network getNetwork() const;
+	void setNetwork(const Network &network);
+	int getReserveMinAmount() const;
+	void setReserveMinAmount(int reserveMinAmount);
+	int getSessionTimeout() const;
+	void setSessionTimeout(int sessionTimeout);
+	std::string getChargeResourceMode() const;
+	void setChargeResourceMode(const std::string &chargeResourceMode);
+	std::string getAppCenterImageId() const;
+	void setAppCenterImageId(const std::string &appCenterImageId);
+	std::string getScalingUsageThreshold() const;
+	void setScalingUsageThreshold(const std::string &scalingUsageThreshold);
+	UserInfo getUserInfo() const;
+	void setUserInfo(const UserInfo &userInfo);
+	std::string getReserveAmountRatio() const;
+	void setReserveAmountRatio(const std::string &reserveAmountRatio);
+	std::string getPreOpenAppId() const;
+	void setPreOpenAppId(const std::string &preOpenAppId);
+	int getAmount() const;
+	void setAmount(int amount);
+	int getPeriod() const;
+	void setPeriod(int period);
+	bool getAutoPay() const;
+	void setAutoPay(bool autoPay);
+	NodePool getNodePool() const;
+	void setNodePool(const NodePool &nodePool);
+	std::string getAppInstanceType() const;
+	void setAppInstanceType(const std::string &appInstanceType);
+	int getMaxAmount() const;
+	void setMaxAmount(int maxAmount);
+	SecurityPolicy getSecurityPolicy() const;
+	void setSecurityPolicy(const SecurityPolicy &securityPolicy);
+	std::string getPromotionId() const;
+	void setPromotionId(const std::string &promotionId);
+	std::vector<std::string> getUsers() const;
+	void setUsers(const std::vector<std::string> &users);
+	VideoPolicy getVideoPolicy() const;
+	void setVideoPolicy(const VideoPolicy &videoPolicy);
+	std::string getAppInstanceGroupName() const;
+	void setAppInstanceGroupName(const std::string &appInstanceGroupName);
+	std::string getPeriodUnit() const;
+	void setPeriodUnit(const std::string &periodUnit);
+	int getReserveMaxAmount() const;
+	void setReserveMaxAmount(int reserveMaxAmount);
+	bool getAutoRenew() const;
+	void setAutoRenew(bool autoRenew);
+	std::string getChargeType() const;
+	void setChargeType(const std::string &chargeType);
+	std::string getStrategyType() const;
+	void setStrategyType(const std::string &strategyType);
+
+private:
+	RuntimePolicy runtimePolicy_;
+	std::string bizRegionId_;
+	int scalingStep_;
+	int scalingDownAfterIdleMinutes_;
+	int minAmount_;
+	std::string productType_;
+	Network network_;
+	int reserveMinAmount_;
+	int sessionTimeout_;
+	std::string chargeResourceMode_;
+	std::string appCenterImageId_;
+	std::string scalingUsageThreshold_;
+	UserInfo userInfo_;
+	std::string reserveAmountRatio_;
+	std::string preOpenAppId_;
+	int amount_;
+	int period_;
+	bool autoPay_;
+	NodePool nodePool_;
+	std::string appInstanceType_;
+	int maxAmount_;
+	SecurityPolicy securityPolicy_;
+	std::string promotionId_;
+	std::vector<std::string> users_;
+	VideoPolicy videoPolicy_;
+	std::string appInstanceGroupName_;
+	std::string periodUnit_;
+	int reserveMaxAmount_;
+	bool autoRenew_;
+	std::string chargeType_;
+	std::string strategyType_;
+};
+} // namespace Model
+} // namespace Appstream_center
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_CREATEAPPINSTANCEGROUPREQUEST_H_

+ 58 - 0
appstream-center/include/alibabacloud/appstream-center/model/CreateAppInstanceGroupResult.h

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

+ 45 - 0
appstream-center/include/alibabacloud/appstream-center/model/DeleteAppInstanceGroupRequest.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_APPSTREAM_CENTER_MODEL_DELETEAPPINSTANCEGROUPREQUEST_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_DELETEAPPINSTANCEGROUPREQUEST_H_
+
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Appstream_center {
+namespace Model {
+class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT DeleteAppInstanceGroupRequest : public RpcServiceRequest {
+public:
+	DeleteAppInstanceGroupRequest();
+	~DeleteAppInstanceGroupRequest();
+	std::string getProductType() const;
+	void setProductType(const std::string &productType);
+	std::string getAppInstanceGroupId() const;
+	void setAppInstanceGroupId(const std::string &appInstanceGroupId);
+
+private:
+	std::string productType_;
+	std::string appInstanceGroupId_;
+};
+} // namespace Model
+} // namespace Appstream_center
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_DELETEAPPINSTANCEGROUPREQUEST_H_

+ 49 - 0
appstream-center/include/alibabacloud/appstream-center/model/DeleteAppInstanceGroupResult.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_APPSTREAM_CENTER_MODEL_DELETEAPPINSTANCEGROUPRESULT_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_DELETEAPPINSTANCEGROUPRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Appstream_center
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT DeleteAppInstanceGroupResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteAppInstanceGroupResult();
+				explicit DeleteAppInstanceGroupResult(const std::string &payload);
+				~DeleteAppInstanceGroupResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_DELETEAPPINSTANCEGROUPRESULT_H_

+ 48 - 0
appstream-center/include/alibabacloud/appstream-center/model/DeleteAppInstancesRequest.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_APPSTREAM_CENTER_MODEL_DELETEAPPINSTANCESREQUEST_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_DELETEAPPINSTANCESREQUEST_H_
+
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Appstream_center {
+namespace Model {
+class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT DeleteAppInstancesRequest : public RpcServiceRequest {
+public:
+	DeleteAppInstancesRequest();
+	~DeleteAppInstancesRequest();
+	std::vector<std::string> getAppInstanceIds() const;
+	void setAppInstanceIds(const std::vector<std::string> &appInstanceIds);
+	std::string getProductType() const;
+	void setProductType(const std::string &productType);
+	std::string getAppInstanceGroupId() const;
+	void setAppInstanceGroupId(const std::string &appInstanceGroupId);
+
+private:
+	std::vector<std::string> appInstanceIds_;
+	std::string productType_;
+	std::string appInstanceGroupId_;
+};
+} // namespace Model
+} // namespace Appstream_center
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_DELETEAPPINSTANCESREQUEST_H_

+ 58 - 0
appstream-center/include/alibabacloud/appstream-center/model/DeleteAppInstancesResult.h

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

+ 45 - 0
appstream-center/include/alibabacloud/appstream-center/model/GetAppInstanceGroupRequest.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_APPSTREAM_CENTER_MODEL_GETAPPINSTANCEGROUPREQUEST_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_GETAPPINSTANCEGROUPREQUEST_H_
+
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Appstream_center {
+namespace Model {
+class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT GetAppInstanceGroupRequest : public RpcServiceRequest {
+public:
+	GetAppInstanceGroupRequest();
+	~GetAppInstanceGroupRequest();
+	std::string getProductType() const;
+	void setProductType(const std::string &productType);
+	std::string getAppInstanceGroupId() const;
+	void setAppInstanceGroupId(const std::string &appInstanceGroupId);
+
+private:
+	std::string productType_;
+	std::string appInstanceGroupId_;
+};
+} // namespace Model
+} // namespace Appstream_center
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_GETAPPINSTANCEGROUPREQUEST_H_

+ 129 - 0
appstream-center/include/alibabacloud/appstream-center/model/GetAppInstanceGroupResult.h

@@ -0,0 +1,129 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_APPSTREAM_CENTER_MODEL_GETAPPINSTANCEGROUPRESULT_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_GETAPPINSTANCEGROUPRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Appstream_center
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT GetAppInstanceGroupResult : public ServiceResult
+			{
+			public:
+				struct AppInstanceGroupModels
+				{
+					struct OtaInfo
+					{
+						std::string newOtaVersion;
+						std::string taskId;
+						std::string otaVersion;
+					};
+					struct AppsItem
+					{
+						std::string appId;
+						std::string appName;
+					};
+					struct Node
+					{
+						struct RecurrenceSchedule
+						{
+							struct TimerPeriod
+							{
+								std::string endTime;
+								int amount;
+								std::string startTime;
+							};
+							std::string recurrenceType;
+							std::vector<RecurrenceSchedule::TimerPeriod> timerPeriods;
+							std::vector<std::string> recurrenceValues;
+						};
+						bool warmUp;
+						std::string strategyType;
+						int scalingStep;
+						int maxScalingAmount;
+						int scalingDownAfterIdleMinutes;
+						std::string strategyEnableDate;
+						std::string nodeTypeName;
+						int amount;
+						std::vector<Node::RecurrenceSchedule> recurrenceSchedules;
+						int scalingNodeUsed;
+						std::string strategyDisableDate;
+						int nodeAmount;
+						std::string nodeInstanceType;
+						std::string nodePoolId;
+						int nodeUsed;
+						int nodeCapacity;
+						std::string scalingUsageThreshold;
+						int scalingNodeAmount;
+					};
+					long memory;
+					std::string appInstanceGroupName;
+					std::string cpu;
+					std::vector<AppsItem> apps;
+					std::string gpu;
+					int maxAmount;
+					std::string aliyunImageId;
+					std::string sessionTimeout;
+					std::string osType;
+					std::vector<Node> nodePool;
+					int minAmount;
+					std::string expiredTime;
+					std::string resourceStatus;
+					std::string appCenterImageName;
+					std::string status;
+					int amount;
+					std::string productType;
+					std::string specId;
+					std::string appCenterImageId;
+					OtaInfo otaInfo;
+					std::string gmtCreate;
+					std::string appInstanceType;
+					std::string chargeType;
+					std::string regionId;
+					std::string appInstanceGroupId;
+				};
+
+
+				GetAppInstanceGroupResult();
+				explicit GetAppInstanceGroupResult(const std::string &payload);
+				~GetAppInstanceGroupResult();
+				int getTotalCount()const;
+				int getPageSize()const;
+				int getPageNumber()const;
+				AppInstanceGroupModels getAppInstanceGroupModels()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				int totalCount_;
+				int pageSize_;
+				int pageNumber_;
+				AppInstanceGroupModels appInstanceGroupModels_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_GETAPPINSTANCEGROUPRESULT_H_

+ 77 - 0
appstream-center/include/alibabacloud/appstream-center/model/GetConnectionTicketRequest.h

@@ -0,0 +1,77 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_APPSTREAM_CENTER_MODEL_GETCONNECTIONTICKETREQUEST_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_GETCONNECTIONTICKETREQUEST_H_
+
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Appstream_center {
+namespace Model {
+class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT GetConnectionTicketRequest : public RpcServiceRequest {
+public:
+	struct FileInfos {
+		std::string fileRegion;
+		std::string driveId;
+		std::string fileName;
+		std::string filePath;
+		std::string driveType;
+		std::string fileId;
+	};
+	GetConnectionTicketRequest();
+	~GetConnectionTicketRequest();
+	std::string getBizRegionId() const;
+	void setBizRegionId(const std::string &bizRegionId);
+	std::string getAppStartParam() const;
+	void setAppStartParam(const std::string &appStartParam);
+	std::string getProductType() const;
+	void setProductType(const std::string &productType);
+	std::string getEndUserId() const;
+	void setEndUserId(const std::string &endUserId);
+	std::vector<FileInfos> getFileInfos() const;
+	void setFileInfos(const std::vector<FileInfos> &fileInfos);
+	std::string getTaskId() const;
+	void setTaskId(const std::string &taskId);
+	std::string getAppVersion() const;
+	void setAppVersion(const std::string &appVersion);
+	std::vector<std::string> getAppInstanceGroupIdList() const;
+	void setAppInstanceGroupIdList(const std::vector<std::string> &appInstanceGroupIdList);
+	std::string getAppId() const;
+	void setAppId(const std::string &appId);
+	std::string getAppInstanceId() const;
+	void setAppInstanceId(const std::string &appInstanceId);
+
+private:
+	std::string bizRegionId_;
+	std::string appStartParam_;
+	std::string productType_;
+	std::string endUserId_;
+	std::vector<FileInfos> fileInfos_;
+	std::string taskId_;
+	std::string appVersion_;
+	std::vector<std::string> appInstanceGroupIdList_;
+	std::string appId_;
+	std::string appInstanceId_;
+};
+} // namespace Model
+} // namespace Appstream_center
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_GETCONNECTIONTICKETREQUEST_H_

+ 63 - 0
appstream-center/include/alibabacloud/appstream-center/model/GetConnectionTicketResult.h

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

+ 42 - 0
appstream-center/include/alibabacloud/appstream-center/model/GetOtaTaskByTaskIdRequest.h

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

+ 59 - 0
appstream-center/include/alibabacloud/appstream-center/model/GetOtaTaskByTaskIdResult.h

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

+ 60 - 0
appstream-center/include/alibabacloud/appstream-center/model/GetResourcePriceRequest.h

@@ -0,0 +1,60 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_APPSTREAM_CENTER_MODEL_GETRESOURCEPRICEREQUEST_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_GETRESOURCEPRICEREQUEST_H_
+
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Appstream_center {
+namespace Model {
+class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT GetResourcePriceRequest : public RpcServiceRequest {
+public:
+	GetResourcePriceRequest();
+	~GetResourcePriceRequest();
+	std::string getBizRegionId() const;
+	void setBizRegionId(const std::string &bizRegionId);
+	long getPeriod() const;
+	void setPeriod(long period);
+	long getAmount() const;
+	void setAmount(long amount);
+	std::string getNodeInstanceType() const;
+	void setNodeInstanceType(const std::string &nodeInstanceType);
+	std::string getProductType() const;
+	void setProductType(const std::string &productType);
+	std::string getPeriodUnit() const;
+	void setPeriodUnit(const std::string &periodUnit);
+	std::string getChargeType() const;
+	void setChargeType(const std::string &chargeType);
+
+private:
+	std::string bizRegionId_;
+	long period_;
+	long amount_;
+	std::string nodeInstanceType_;
+	std::string productType_;
+	std::string periodUnit_;
+	std::string chargeType_;
+};
+} // namespace Model
+} // namespace Appstream_center
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_GETRESOURCEPRICEREQUEST_H_

+ 81 - 0
appstream-center/include/alibabacloud/appstream-center/model/GetResourcePriceResult.h

@@ -0,0 +1,81 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_APPSTREAM_CENTER_MODEL_GETRESOURCEPRICERESULT_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_GETRESOURCEPRICERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Appstream_center
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT GetResourcePriceResult : public ServiceResult
+			{
+			public:
+				struct PriceModel
+				{
+					struct Price
+					{
+						struct Promotion
+						{
+							std::string promotionName;
+							std::string promotionDesc;
+							std::string promotionId;
+							std::string optionCode;
+							bool selected;
+						};
+						std::string originalPrice;
+						std::vector<Promotion> promotions;
+						std::string discountPrice;
+						std::string currency;
+						std::string tradePrice;
+					};
+					struct Rule
+					{
+						std::string description;
+						long ruleId;
+					};
+					Price price;
+					std::vector<Rule> rules;
+				};
+
+
+				GetResourcePriceResult();
+				explicit GetResourcePriceResult(const std::string &payload);
+				~GetResourcePriceResult();
+				std::string getMessage()const;
+				PriceModel getPriceModel()const;
+				std::string getCode()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string message_;
+				PriceModel priceModel_;
+				std::string code_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_GETRESOURCEPRICERESULT_H_

+ 51 - 0
appstream-center/include/alibabacloud/appstream-center/model/GetResourceRenewPriceRequest.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_APPSTREAM_CENTER_MODEL_GETRESOURCERENEWPRICEREQUEST_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_GETRESOURCERENEWPRICEREQUEST_H_
+
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Appstream_center {
+namespace Model {
+class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT GetResourceRenewPriceRequest : public RpcServiceRequest {
+public:
+	GetResourceRenewPriceRequest();
+	~GetResourceRenewPriceRequest();
+	long getPeriod() const;
+	void setPeriod(long period);
+	std::string getProductType() const;
+	void setProductType(const std::string &productType);
+	std::string getPeriodUnit() const;
+	void setPeriodUnit(const std::string &periodUnit);
+	std::string getAppInstanceGroupId() const;
+	void setAppInstanceGroupId(const std::string &appInstanceGroupId);
+
+private:
+	long period_;
+	std::string productType_;
+	std::string periodUnit_;
+	std::string appInstanceGroupId_;
+};
+} // namespace Model
+} // namespace Appstream_center
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_GETRESOURCERENEWPRICEREQUEST_H_

+ 77 - 0
appstream-center/include/alibabacloud/appstream-center/model/GetResourceRenewPriceResult.h

@@ -0,0 +1,77 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_APPSTREAM_CENTER_MODEL_GETRESOURCERENEWPRICERESULT_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_GETRESOURCERENEWPRICERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Appstream_center
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT GetResourceRenewPriceResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					struct Price
+					{
+						struct Promotion
+						{
+							std::string promotionName;
+							std::string promotionDesc;
+							std::string promotionId;
+							std::string optionCode;
+							bool selected;
+						};
+						std::string originalPrice;
+						std::vector<Promotion> promotions;
+						std::string discountPrice;
+						std::string currency;
+						std::string tradePrice;
+					};
+					struct Rule
+					{
+						std::string description;
+						long ruleId;
+					};
+					Price price;
+					std::vector<Rule> rules;
+				};
+
+
+				GetResourceRenewPriceResult();
+				explicit GetResourceRenewPriceResult(const std::string &payload);
+				~GetResourceRenewPriceResult();
+				Data getData()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				Data data_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_GETRESOURCERENEWPRICERESULT_H_

+ 69 - 0
appstream-center/include/alibabacloud/appstream-center/model/ListAppInstanceGroupRequest.h

@@ -0,0 +1,69 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_APPSTREAM_CENTER_MODEL_LISTAPPINSTANCEGROUPREQUEST_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_LISTAPPINSTANCEGROUPREQUEST_H_
+
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Appstream_center {
+namespace Model {
+class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT ListAppInstanceGroupRequest : public RpcServiceRequest {
+public:
+	ListAppInstanceGroupRequest();
+	~ListAppInstanceGroupRequest();
+	std::string getBizRegionId() const;
+	void setBizRegionId(const std::string &bizRegionId);
+	int getPageNumber() const;
+	void setPageNumber(int pageNumber);
+	std::string getProductType() const;
+	void setProductType(const std::string &productType);
+	std::string getAppCenterImageId() const;
+	void setAppCenterImageId(const std::string &appCenterImageId);
+	std::string getRegionId() const;
+	void setRegionId(const std::string &regionId);
+	int getPageSize() const;
+	void setPageSize(int pageSize);
+	std::string getNodeInstanceType() const;
+	void setNodeInstanceType(const std::string &nodeInstanceType);
+	std::string getAppInstanceGroupName() const;
+	void setAppInstanceGroupName(const std::string &appInstanceGroupName);
+	std::string getAppInstanceGroupId() const;
+	void setAppInstanceGroupId(const std::string &appInstanceGroupId);
+	std::vector<std::string> getStatus() const;
+	void setStatus(const std::vector<std::string> &status);
+
+private:
+	std::string bizRegionId_;
+	int pageNumber_;
+	std::string productType_;
+	std::string appCenterImageId_;
+	std::string regionId_;
+	int pageSize_;
+	std::string nodeInstanceType_;
+	std::string appInstanceGroupName_;
+	std::string appInstanceGroupId_;
+	std::vector<std::string> status_;
+};
+} // namespace Model
+} // namespace Appstream_center
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_LISTAPPINSTANCEGROUPREQUEST_H_

+ 133 - 0
appstream-center/include/alibabacloud/appstream-center/model/ListAppInstanceGroupResult.h

@@ -0,0 +1,133 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_APPSTREAM_CENTER_MODEL_LISTAPPINSTANCEGROUPRESULT_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_LISTAPPINSTANCEGROUPRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Appstream_center
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT ListAppInstanceGroupResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					struct OtaInfo
+					{
+						std::string newOtaVersion;
+						std::string taskId;
+						std::string otaVersion;
+					};
+					struct AppsItem
+					{
+						std::string appVersion;
+						std::string appId;
+						std::string appVersionName;
+						std::string appIcon;
+						std::string appName;
+					};
+					struct Node
+					{
+						struct RecurrenceSchedule
+						{
+							struct TimerPeriod
+							{
+								std::string endTime;
+								int amount;
+								std::string startTime;
+							};
+							std::string recurrenceType;
+							std::vector<RecurrenceSchedule::TimerPeriod> timerPeriods;
+							std::vector<std::string> recurrenceValues;
+						};
+						bool warmUp;
+						std::string strategyType;
+						int scalingStep;
+						int maxScalingAmount;
+						int scalingDownAfterIdleMinutes;
+						std::string strategyEnableDate;
+						std::string nodeTypeName;
+						int amount;
+						std::vector<Node::RecurrenceSchedule> recurrenceSchedules;
+						int scalingNodeUsed;
+						std::string strategyDisableDate;
+						int nodeAmount;
+						std::string nodeInstanceType;
+						std::string nodePoolId;
+						int nodeUsed;
+						int nodeCapacity;
+						std::string scalingUsageThreshold;
+						int scalingNodeAmount;
+					};
+					long memory;
+					std::string appInstanceGroupName;
+					std::string cpu;
+					std::vector<Data::AppsItem> apps;
+					std::string gpu;
+					int maxAmount;
+					std::string aliyunImageId;
+					std::string sessionTimeout;
+					std::string osType;
+					std::vector<Data::Node> nodePool;
+					int minAmount;
+					std::string expiredTime;
+					std::string appPolicyId;
+					std::string resourceStatus;
+					std::string status;
+					int amount;
+					std::string productType;
+					std::string specId;
+					std::string appCenterImageId;
+					OtaInfo otaInfo;
+					std::string gmtCreate;
+					std::string chargeResourceMode;
+					std::string appInstanceType;
+					std::string chargeType;
+					std::string regionId;
+					std::string appInstanceGroupId;
+				};
+
+
+				ListAppInstanceGroupResult();
+				explicit ListAppInstanceGroupResult(const std::string &payload);
+				~ListAppInstanceGroupResult();
+				int getTotalCount()const;
+				int getPageSize()const;
+				int getPageNumber()const;
+				std::vector<Data> getAppInstanceGroupModels()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				int totalCount_;
+				int pageSize_;
+				int pageNumber_;
+				std::vector<Data> appInstanceGroupModels_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_LISTAPPINSTANCEGROUPRESULT_H_

+ 54 - 0
appstream-center/include/alibabacloud/appstream-center/model/ListAppInstancesRequest.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_APPSTREAM_CENTER_MODEL_LISTAPPINSTANCESREQUEST_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_LISTAPPINSTANCESREQUEST_H_
+
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Appstream_center {
+namespace Model {
+class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT ListAppInstancesRequest : public RpcServiceRequest {
+public:
+	ListAppInstancesRequest();
+	~ListAppInstancesRequest();
+	int getPageNumber() const;
+	void setPageNumber(int pageNumber);
+	std::string getAppInstanceGroupId() const;
+	void setAppInstanceGroupId(const std::string &appInstanceGroupId);
+	int getPageSize() const;
+	void setPageSize(int pageSize);
+	std::string getAppInstanceId() const;
+	void setAppInstanceId(const std::string &appInstanceId);
+	std::vector<std::string> getStatus() const;
+	void setStatus(const std::vector<std::string> &status);
+
+private:
+	int pageNumber_;
+	std::string appInstanceGroupId_;
+	int pageSize_;
+	std::string appInstanceId_;
+	std::vector<std::string> status_;
+};
+} // namespace Model
+} // namespace Appstream_center
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_LISTAPPINSTANCESREQUEST_H_

+ 67 - 0
appstream-center/include/alibabacloud/appstream-center/model/ListAppInstancesResult.h

@@ -0,0 +1,67 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_APPSTREAM_CENTER_MODEL_LISTAPPINSTANCESRESULT_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_LISTAPPINSTANCESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Appstream_center
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT ListAppInstancesResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					std::string status;
+					std::string appInstanceId;
+					std::string gmtCreate;
+					std::string sessionStatus;
+					std::string mainEthPublicIp;
+					std::string gmtModified;
+					std::string appInstanceGroupId;
+				};
+
+
+				ListAppInstancesResult();
+				explicit ListAppInstancesResult(const std::string &payload);
+				~ListAppInstancesResult();
+				std::vector<Data> getAppInstanceModels()const;
+				int getTotalCount()const;
+				int getPageSize()const;
+				int getPageNumber()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<Data> appInstanceModels_;
+				int totalCount_;
+				int pageSize_;
+				int pageNumber_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_LISTAPPINSTANCESRESULT_H_

+ 57 - 0
appstream-center/include/alibabacloud/appstream-center/model/ListNodeInstanceTypeRequest.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_APPSTREAM_CENTER_MODEL_LISTNODEINSTANCETYPEREQUEST_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_LISTNODEINSTANCETYPEREQUEST_H_
+
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Appstream_center {
+namespace Model {
+class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT ListNodeInstanceTypeRequest : public RpcServiceRequest {
+public:
+	ListNodeInstanceTypeRequest();
+	~ListNodeInstanceTypeRequest();
+	std::string getBizRegionId() const;
+	void setBizRegionId(const std::string &bizRegionId);
+	std::string getLanguage() const;
+	void setLanguage(const std::string &language);
+	std::string getOsType() const;
+	void setOsType(const std::string &osType);
+	int getPageNumber() const;
+	void setPageNumber(int pageNumber);
+	std::string getProductType() const;
+	void setProductType(const std::string &productType);
+	int getPageSize() const;
+	void setPageSize(int pageSize);
+
+private:
+	std::string bizRegionId_;
+	std::string language_;
+	std::string osType_;
+	int pageNumber_;
+	std::string productType_;
+	int pageSize_;
+};
+} // namespace Model
+} // namespace Appstream_center
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_LISTNODEINSTANCETYPEREQUEST_H_

+ 70 - 0
appstream-center/include/alibabacloud/appstream-center/model/ListNodeInstanceTypeResult.h

@@ -0,0 +1,70 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_APPSTREAM_CENTER_MODEL_LISTNODEINSTANCETYPERESULT_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_LISTNODEINSTANCETYPERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Appstream_center
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT ListNodeInstanceTypeResult : public ServiceResult
+			{
+			public:
+				struct Node
+				{
+					long gpuMemory;
+					std::string nodeInstanceTypeFamily;
+					long systemDiskSize;
+					long memory;
+					std::string nodeTypeName;
+					std::string cpu;
+					long dataDiskSize;
+					std::string nodeInstanceType;
+					std::string gpu;
+					int maxCapacity;
+				};
+
+
+				ListNodeInstanceTypeResult();
+				explicit ListNodeInstanceTypeResult(const std::string &payload);
+				~ListNodeInstanceTypeResult();
+				std::vector<Node> getNodeInstanceTypeModels()const;
+				int getTotalCount()const;
+				int getPageSize()const;
+				int getPageNumber()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<Node> nodeInstanceTypeModels_;
+				int totalCount_;
+				int pageSize_;
+				int pageNumber_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_LISTNODEINSTANCETYPERESULT_H_

+ 51 - 0
appstream-center/include/alibabacloud/appstream-center/model/ListOtaTaskRequest.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_APPSTREAM_CENTER_MODEL_LISTOTATASKREQUEST_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_LISTOTATASKREQUEST_H_
+
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Appstream_center {
+namespace Model {
+class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT ListOtaTaskRequest : public RpcServiceRequest {
+public:
+	ListOtaTaskRequest();
+	~ListOtaTaskRequest();
+	std::string getOtaType() const;
+	void setOtaType(const std::string &otaType);
+	int getPageNumber() const;
+	void setPageNumber(int pageNumber);
+	std::string getAppInstanceGroupId() const;
+	void setAppInstanceGroupId(const std::string &appInstanceGroupId);
+	int getPageSize() const;
+	void setPageSize(int pageSize);
+
+private:
+	std::string otaType_;
+	int pageNumber_;
+	std::string appInstanceGroupId_;
+	int pageSize_;
+};
+} // namespace Model
+} // namespace Appstream_center
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_LISTOTATASKREQUEST_H_

+ 64 - 0
appstream-center/include/alibabacloud/appstream-center/model/ListOtaTaskResult.h

@@ -0,0 +1,64 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_APPSTREAM_CENTER_MODEL_LISTOTATASKRESULT_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_LISTOTATASKRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Appstream_center
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT ListOtaTaskResult : public ServiceResult
+			{
+			public:
+				struct Data
+				{
+					std::string taskId;
+					std::string otaVersion;
+					std::string taskDisplayStatus;
+					std::string taskStartTime;
+				};
+
+
+				ListOtaTaskResult();
+				explicit ListOtaTaskResult(const std::string &payload);
+				~ListOtaTaskResult();
+				int getTotalCount()const;
+				int getPageSize()const;
+				int getPageNumber()const;
+				std::vector<Data> getTaskList()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				int totalCount_;
+				int pageSize_;
+				int pageNumber_;
+				std::vector<Data> taskList_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_LISTOTATASKRESULT_H_

+ 39 - 0
appstream-center/include/alibabacloud/appstream-center/model/ListRegionsRequest.h

@@ -0,0 +1,39 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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_APPSTREAM_CENTER_MODEL_LISTREGIONSREQUEST_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_LISTREGIONSREQUEST_H_
+
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Appstream_center {
+namespace Model {
+class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT ListRegionsRequest : public RpcServiceRequest {
+public:
+	ListRegionsRequest();
+	~ListRegionsRequest();
+
+private:
+};
+} // namespace Model
+} // namespace Appstream_center
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_LISTREGIONSREQUEST_H_

+ 55 - 0
appstream-center/include/alibabacloud/appstream-center/model/ListRegionsResult.h

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

+ 39 - 0
appstream-center/include/alibabacloud/appstream-center/model/ListTenantConfigRequest.h

@@ -0,0 +1,39 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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_APPSTREAM_CENTER_MODEL_LISTTENANTCONFIGREQUEST_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_LISTTENANTCONFIGREQUEST_H_
+
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Appstream_center {
+namespace Model {
+class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT ListTenantConfigRequest : public RpcServiceRequest {
+public:
+	ListTenantConfigRequest();
+	~ListTenantConfigRequest();
+
+private:
+};
+} // namespace Model
+} // namespace Appstream_center
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_LISTTENANTCONFIGREQUEST_H_

+ 55 - 0
appstream-center/include/alibabacloud/appstream-center/model/ListTenantConfigResult.h

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

+ 45 - 0
appstream-center/include/alibabacloud/appstream-center/model/LogOffAllSessionsInAppInstanceGroupRequest.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_APPSTREAM_CENTER_MODEL_LOGOFFALLSESSIONSINAPPINSTANCEGROUPREQUEST_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_LOGOFFALLSESSIONSINAPPINSTANCEGROUPREQUEST_H_
+
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Appstream_center {
+namespace Model {
+class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT LogOffAllSessionsInAppInstanceGroupRequest : public RpcServiceRequest {
+public:
+	LogOffAllSessionsInAppInstanceGroupRequest();
+	~LogOffAllSessionsInAppInstanceGroupRequest();
+	std::string getProductType() const;
+	void setProductType(const std::string &productType);
+	std::string getAppInstanceGroupId() const;
+	void setAppInstanceGroupId(const std::string &appInstanceGroupId);
+
+private:
+	std::string productType_;
+	std::string appInstanceGroupId_;
+};
+} // namespace Model
+} // namespace Appstream_center
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_LOGOFFALLSESSIONSINAPPINSTANCEGROUPREQUEST_H_

+ 53 - 0
appstream-center/include/alibabacloud/appstream-center/model/LogOffAllSessionsInAppInstanceGroupResult.h

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

+ 58 - 0
appstream-center/include/alibabacloud/appstream-center/model/ModifyAppInstanceGroupAttributeRequest.h

@@ -0,0 +1,58 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_APPSTREAM_CENTER_MODEL_MODIFYAPPINSTANCEGROUPATTRIBUTEREQUEST_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_MODIFYAPPINSTANCEGROUPATTRIBUTEREQUEST_H_
+
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Appstream_center {
+namespace Model {
+class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT ModifyAppInstanceGroupAttributeRequest : public RpcServiceRequest {
+public:
+	struct NodePool {
+		std::string nodePoolId;
+		int nodeCapacity;
+	};
+	ModifyAppInstanceGroupAttributeRequest();
+	~ModifyAppInstanceGroupAttributeRequest();
+	NodePool getNodePool() const;
+	void setNodePool(const NodePool &nodePool);
+	std::string getProductType() const;
+	void setProductType(const std::string &productType);
+	std::string getAppInstanceGroupName() const;
+	void setAppInstanceGroupName(const std::string &appInstanceGroupName);
+	int getSessionTimeout() const;
+	void setSessionTimeout(int sessionTimeout);
+	std::string getAppInstanceGroupId() const;
+	void setAppInstanceGroupId(const std::string &appInstanceGroupId);
+
+private:
+	NodePool nodePool_;
+	std::string productType_;
+	std::string appInstanceGroupName_;
+	int sessionTimeout_;
+	std::string appInstanceGroupId_;
+};
+} // namespace Model
+} // namespace Appstream_center
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_MODIFYAPPINSTANCEGROUPATTRIBUTEREQUEST_H_

+ 53 - 0
appstream-center/include/alibabacloud/appstream-center/model/ModifyAppInstanceGroupAttributeResult.h

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

+ 78 - 0
appstream-center/include/alibabacloud/appstream-center/model/ModifyNodePoolAttributeRequest.h

@@ -0,0 +1,78 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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_APPSTREAM_CENTER_MODEL_MODIFYNODEPOOLATTRIBUTEREQUEST_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_MODIFYNODEPOOLATTRIBUTEREQUEST_H_
+
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Appstream_center {
+namespace Model {
+class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT ModifyNodePoolAttributeRequest : public RpcServiceRequest {
+public:
+	struct NodePoolStrategy {
+		struct RecurrenceSchedulesItem {
+			int integer;
+			std::vector<int> recurrenceValues;
+			std::string recurrenceType;
+			struct TimerPeriodsItem {
+				int amount;
+				std::string endTime;
+				std::string startTime;
+			};
+			TimerPeriodsItem timerPeriodsItem;
+			std::vector<TimerPeriodsItem> timerPeriods;
+		};
+		RecurrenceSchedulesItem recurrenceSchedulesItem;
+		std::vector<RecurrenceSchedulesItem> recurrenceSchedules;
+		int scalingStep;
+		std::string strategyDisableDate;
+		int scalingDownAfterIdleMinutes;
+		std::string strategyType;
+		int maxScalingAmount;
+		bool warmUp;
+		std::string scalingUsageThreshold;
+		std::string strategyEnableDate;
+	};
+	ModifyNodePoolAttributeRequest();
+	~ModifyNodePoolAttributeRequest();
+	std::string getBizRegionId() const;
+	void setBizRegionId(const std::string &bizRegionId);
+	std::string getProductType() const;
+	void setProductType(const std::string &productType);
+	std::string getPoolId() const;
+	void setPoolId(const std::string &poolId);
+	NodePoolStrategy getNodePoolStrategy() const;
+	void setNodePoolStrategy(const NodePoolStrategy &nodePoolStrategy);
+	int getNodeCapacity() const;
+	void setNodeCapacity(int nodeCapacity);
+
+private:
+	std::string bizRegionId_;
+	std::string productType_;
+	std::string poolId_;
+	NodePoolStrategy nodePoolStrategy_;
+	int nodeCapacity_;
+};
+} // namespace Model
+} // namespace Appstream_center
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_MODIFYNODEPOOLATTRIBUTEREQUEST_H_

+ 53 - 0
appstream-center/include/alibabacloud/appstream-center/model/ModifyNodePoolAttributeResult.h

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

+ 42 - 0
appstream-center/include/alibabacloud/appstream-center/model/ModifyTenantConfigRequest.h

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

+ 49 - 0
appstream-center/include/alibabacloud/appstream-center/model/ModifyTenantConfigResult.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_APPSTREAM_CENTER_MODEL_MODIFYTENANTCONFIGRESULT_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_MODIFYTENANTCONFIGRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Appstream_center
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT ModifyTenantConfigResult : public ServiceResult
+			{
+			public:
+
+
+				ModifyTenantConfigResult();
+				explicit ModifyTenantConfigResult(const std::string &payload);
+				~ModifyTenantConfigResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_MODIFYTENANTCONFIGRESULT_H_

+ 51 - 0
appstream-center/include/alibabacloud/appstream-center/model/PageListAppInstanceGroupUserRequest.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_APPSTREAM_CENTER_MODEL_PAGELISTAPPINSTANCEGROUPUSERREQUEST_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_PAGELISTAPPINSTANCEGROUPUSERREQUEST_H_
+
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Appstream_center {
+namespace Model {
+class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT PageListAppInstanceGroupUserRequest : public RpcServiceRequest {
+public:
+	PageListAppInstanceGroupUserRequest();
+	~PageListAppInstanceGroupUserRequest();
+	int getPageNumber() const;
+	void setPageNumber(int pageNumber);
+	std::string getProductType() const;
+	void setProductType(const std::string &productType);
+	std::string getAppInstanceGroupId() const;
+	void setAppInstanceGroupId(const std::string &appInstanceGroupId);
+	int getPageSize() const;
+	void setPageSize(int pageSize);
+
+private:
+	int pageNumber_;
+	std::string productType_;
+	std::string appInstanceGroupId_;
+	int pageSize_;
+};
+} // namespace Model
+} // namespace Appstream_center
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_PAGELISTAPPINSTANCEGROUPUSERREQUEST_H_

+ 51 - 0
appstream-center/include/alibabacloud/appstream-center/model/PageListAppInstanceGroupUserResult.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_APPSTREAM_CENTER_MODEL_PAGELISTAPPINSTANCEGROUPUSERRESULT_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_PAGELISTAPPINSTANCEGROUPUSERRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Appstream_center
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT PageListAppInstanceGroupUserResult : public ServiceResult
+			{
+			public:
+
+
+				PageListAppInstanceGroupUserResult();
+				explicit PageListAppInstanceGroupUserResult(const std::string &payload);
+				~PageListAppInstanceGroupUserResult();
+				std::vector<std::string> getUsers()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<std::string> users_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_PAGELISTAPPINSTANCEGROUPUSERRESULT_H_

+ 57 - 0
appstream-center/include/alibabacloud/appstream-center/model/RenewAppInstanceGroupRequest.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_APPSTREAM_CENTER_MODEL_RENEWAPPINSTANCEGROUPREQUEST_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_RENEWAPPINSTANCEGROUPREQUEST_H_
+
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Appstream_center {
+namespace Model {
+class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT RenewAppInstanceGroupRequest : public RpcServiceRequest {
+public:
+	RenewAppInstanceGroupRequest();
+	~RenewAppInstanceGroupRequest();
+	int getPeriod() const;
+	void setPeriod(int period);
+	bool getAutoPay() const;
+	void setAutoPay(bool autoPay);
+	std::string getPromotionId() const;
+	void setPromotionId(const std::string &promotionId);
+	std::string getProductType() const;
+	void setProductType(const std::string &productType);
+	std::string getPeriodUnit() const;
+	void setPeriodUnit(const std::string &periodUnit);
+	std::string getAppInstanceGroupId() const;
+	void setAppInstanceGroupId(const std::string &appInstanceGroupId);
+
+private:
+	int period_;
+	bool autoPay_;
+	std::string promotionId_;
+	std::string productType_;
+	std::string periodUnit_;
+	std::string appInstanceGroupId_;
+};
+} // namespace Model
+} // namespace Appstream_center
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_RENEWAPPINSTANCEGROUPREQUEST_H_

+ 55 - 0
appstream-center/include/alibabacloud/appstream-center/model/RenewAppInstanceGroupResult.h

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

+ 51 - 0
appstream-center/include/alibabacloud/appstream-center/model/UnbindRequest.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_APPSTREAM_CENTER_MODEL_UNBINDREQUEST_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_UNBINDREQUEST_H_
+
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Appstream_center {
+namespace Model {
+class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT UnbindRequest : public RpcServiceRequest {
+public:
+	UnbindRequest();
+	~UnbindRequest();
+	std::string getProductType() const;
+	void setProductType(const std::string &productType);
+	std::string getAppInstanceGroupId() const;
+	void setAppInstanceGroupId(const std::string &appInstanceGroupId);
+	std::string getEndUserId() const;
+	void setEndUserId(const std::string &endUserId);
+	std::string getAppInstanceId() const;
+	void setAppInstanceId(const std::string &appInstanceId);
+
+private:
+	std::string productType_;
+	std::string appInstanceGroupId_;
+	std::string endUserId_;
+	std::string appInstanceId_;
+};
+} // namespace Model
+} // namespace Appstream_center
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_UNBINDREQUEST_H_

+ 49 - 0
appstream-center/include/alibabacloud/appstream-center/model/UnbindResult.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_APPSTREAM_CENTER_MODEL_UNBINDRESULT_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_UNBINDRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Appstream_center
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT UnbindResult : public ServiceResult
+			{
+			public:
+
+
+				UnbindResult();
+				explicit UnbindResult(const std::string &payload);
+				~UnbindResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_UNBINDRESULT_H_

+ 54 - 0
appstream-center/include/alibabacloud/appstream-center/model/UpdateAppInstanceGroupImageRequest.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_APPSTREAM_CENTER_MODEL_UPDATEAPPINSTANCEGROUPIMAGEREQUEST_H_
+#define ALIBABACLOUD_APPSTREAM_CENTER_MODEL_UPDATEAPPINSTANCEGROUPIMAGEREQUEST_H_
+
+#include <alibabacloud/appstream-center/Appstream_centerExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Appstream_center {
+namespace Model {
+class ALIBABACLOUD_APPSTREAM_CENTER_EXPORT UpdateAppInstanceGroupImageRequest : public RpcServiceRequest {
+public:
+	UpdateAppInstanceGroupImageRequest();
+	~UpdateAppInstanceGroupImageRequest();
+	std::string getBizRegionId() const;
+	void setBizRegionId(const std::string &bizRegionId);
+	std::string getUpdateMode() const;
+	void setUpdateMode(const std::string &updateMode);
+	std::string getProductType() const;
+	void setProductType(const std::string &productType);
+	std::string getAppInstanceGroupId() const;
+	void setAppInstanceGroupId(const std::string &appInstanceGroupId);
+	std::string getAppCenterImageId() const;
+	void setAppCenterImageId(const std::string &appCenterImageId);
+
+private:
+	std::string bizRegionId_;
+	std::string updateMode_;
+	std::string productType_;
+	std::string appInstanceGroupId_;
+	std::string appCenterImageId_;
+};
+} // namespace Model
+} // namespace Appstream_center
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_APPSTREAM_CENTER_MODEL_UPDATEAPPINSTANCEGROUPIMAGEREQUEST_H_

+ 53 - 0
appstream-center/include/alibabacloud/appstream-center/model/UpdateAppInstanceGroupImageResult.h

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

+ 953 - 0
appstream-center/src/Appstream-centerClient.cc

@@ -0,0 +1,953 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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/appstream-center/Appstream_centerClient.h>
+#include <alibabacloud/core/SimpleCredentialsProvider.h>
+
+using namespace AlibabaCloud;
+using namespace AlibabaCloud::Location;
+using namespace AlibabaCloud::Appstream_center;
+using namespace AlibabaCloud::Appstream_center::Model;
+
+namespace
+{
+	const std::string SERVICE_NAME = "appstream-center";
+}
+
+Appstream_centerClient::Appstream_centerClient(const Credentials &credentials, const ClientConfiguration &configuration) :
+	RpcServiceClient(SERVICE_NAME, std::make_shared<SimpleCredentialsProvider>(credentials), configuration)
+{
+	auto locationClient = std::make_shared<LocationClient>(credentials, configuration);
+	endpointProvider_ = std::make_shared<EndpointProvider>(locationClient, configuration.regionId(), SERVICE_NAME, "");
+}
+
+Appstream_centerClient::Appstream_centerClient(const std::shared_ptr<CredentialsProvider>& credentialsProvider, const ClientConfiguration & configuration) :
+	RpcServiceClient(SERVICE_NAME, credentialsProvider, configuration)
+{
+	auto locationClient = std::make_shared<LocationClient>(credentialsProvider, configuration);
+	endpointProvider_ = std::make_shared<EndpointProvider>(locationClient, configuration.regionId(), SERVICE_NAME, "");
+}
+
+Appstream_centerClient::Appstream_centerClient(const std::string & accessKeyId, const std::string & accessKeySecret, const ClientConfiguration & configuration) :
+	RpcServiceClient(SERVICE_NAME, std::make_shared<SimpleCredentialsProvider>(accessKeyId, accessKeySecret), configuration)
+{
+	auto locationClient = std::make_shared<LocationClient>(accessKeyId, accessKeySecret, configuration);
+	endpointProvider_ = std::make_shared<EndpointProvider>(locationClient, configuration.regionId(), SERVICE_NAME, "");
+}
+
+Appstream_centerClient::~Appstream_centerClient()
+{}
+
+Appstream_centerClient::ApproveOtaTaskOutcome Appstream_centerClient::approveOtaTask(const ApproveOtaTaskRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ApproveOtaTaskOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ApproveOtaTaskOutcome(ApproveOtaTaskResult(outcome.result()));
+	else
+		return ApproveOtaTaskOutcome(outcome.error());
+}
+
+void Appstream_centerClient::approveOtaTaskAsync(const ApproveOtaTaskRequest& request, const ApproveOtaTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, approveOtaTask(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+Appstream_centerClient::ApproveOtaTaskOutcomeCallable Appstream_centerClient::approveOtaTaskCallable(const ApproveOtaTaskRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ApproveOtaTaskOutcome()>>(
+			[this, request]()
+			{
+			return this->approveOtaTask(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+Appstream_centerClient::AuthorizeInstanceGroupOutcome Appstream_centerClient::authorizeInstanceGroup(const AuthorizeInstanceGroupRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return AuthorizeInstanceGroupOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return AuthorizeInstanceGroupOutcome(AuthorizeInstanceGroupResult(outcome.result()));
+	else
+		return AuthorizeInstanceGroupOutcome(outcome.error());
+}
+
+void Appstream_centerClient::authorizeInstanceGroupAsync(const AuthorizeInstanceGroupRequest& request, const AuthorizeInstanceGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, authorizeInstanceGroup(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+Appstream_centerClient::AuthorizeInstanceGroupOutcomeCallable Appstream_centerClient::authorizeInstanceGroupCallable(const AuthorizeInstanceGroupRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<AuthorizeInstanceGroupOutcome()>>(
+			[this, request]()
+			{
+			return this->authorizeInstanceGroup(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+Appstream_centerClient::CancelOtaTaskOutcome Appstream_centerClient::cancelOtaTask(const CancelOtaTaskRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return CancelOtaTaskOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return CancelOtaTaskOutcome(CancelOtaTaskResult(outcome.result()));
+	else
+		return CancelOtaTaskOutcome(outcome.error());
+}
+
+void Appstream_centerClient::cancelOtaTaskAsync(const CancelOtaTaskRequest& request, const CancelOtaTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, cancelOtaTask(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+Appstream_centerClient::CancelOtaTaskOutcomeCallable Appstream_centerClient::cancelOtaTaskCallable(const CancelOtaTaskRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<CancelOtaTaskOutcome()>>(
+			[this, request]()
+			{
+			return this->cancelOtaTask(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+Appstream_centerClient::CreateAppInstanceGroupOutcome Appstream_centerClient::createAppInstanceGroup(const CreateAppInstanceGroupRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return CreateAppInstanceGroupOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return CreateAppInstanceGroupOutcome(CreateAppInstanceGroupResult(outcome.result()));
+	else
+		return CreateAppInstanceGroupOutcome(outcome.error());
+}
+
+void Appstream_centerClient::createAppInstanceGroupAsync(const CreateAppInstanceGroupRequest& request, const CreateAppInstanceGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, createAppInstanceGroup(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+Appstream_centerClient::CreateAppInstanceGroupOutcomeCallable Appstream_centerClient::createAppInstanceGroupCallable(const CreateAppInstanceGroupRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<CreateAppInstanceGroupOutcome()>>(
+			[this, request]()
+			{
+			return this->createAppInstanceGroup(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+Appstream_centerClient::DeleteAppInstanceGroupOutcome Appstream_centerClient::deleteAppInstanceGroup(const DeleteAppInstanceGroupRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DeleteAppInstanceGroupOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DeleteAppInstanceGroupOutcome(DeleteAppInstanceGroupResult(outcome.result()));
+	else
+		return DeleteAppInstanceGroupOutcome(outcome.error());
+}
+
+void Appstream_centerClient::deleteAppInstanceGroupAsync(const DeleteAppInstanceGroupRequest& request, const DeleteAppInstanceGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, deleteAppInstanceGroup(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+Appstream_centerClient::DeleteAppInstanceGroupOutcomeCallable Appstream_centerClient::deleteAppInstanceGroupCallable(const DeleteAppInstanceGroupRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DeleteAppInstanceGroupOutcome()>>(
+			[this, request]()
+			{
+			return this->deleteAppInstanceGroup(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+Appstream_centerClient::DeleteAppInstancesOutcome Appstream_centerClient::deleteAppInstances(const DeleteAppInstancesRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DeleteAppInstancesOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DeleteAppInstancesOutcome(DeleteAppInstancesResult(outcome.result()));
+	else
+		return DeleteAppInstancesOutcome(outcome.error());
+}
+
+void Appstream_centerClient::deleteAppInstancesAsync(const DeleteAppInstancesRequest& request, const DeleteAppInstancesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, deleteAppInstances(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+Appstream_centerClient::DeleteAppInstancesOutcomeCallable Appstream_centerClient::deleteAppInstancesCallable(const DeleteAppInstancesRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DeleteAppInstancesOutcome()>>(
+			[this, request]()
+			{
+			return this->deleteAppInstances(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+Appstream_centerClient::GetAppInstanceGroupOutcome Appstream_centerClient::getAppInstanceGroup(const GetAppInstanceGroupRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return GetAppInstanceGroupOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return GetAppInstanceGroupOutcome(GetAppInstanceGroupResult(outcome.result()));
+	else
+		return GetAppInstanceGroupOutcome(outcome.error());
+}
+
+void Appstream_centerClient::getAppInstanceGroupAsync(const GetAppInstanceGroupRequest& request, const GetAppInstanceGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, getAppInstanceGroup(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+Appstream_centerClient::GetAppInstanceGroupOutcomeCallable Appstream_centerClient::getAppInstanceGroupCallable(const GetAppInstanceGroupRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<GetAppInstanceGroupOutcome()>>(
+			[this, request]()
+			{
+			return this->getAppInstanceGroup(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+Appstream_centerClient::GetConnectionTicketOutcome Appstream_centerClient::getConnectionTicket(const GetConnectionTicketRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return GetConnectionTicketOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return GetConnectionTicketOutcome(GetConnectionTicketResult(outcome.result()));
+	else
+		return GetConnectionTicketOutcome(outcome.error());
+}
+
+void Appstream_centerClient::getConnectionTicketAsync(const GetConnectionTicketRequest& request, const GetConnectionTicketAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, getConnectionTicket(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+Appstream_centerClient::GetConnectionTicketOutcomeCallable Appstream_centerClient::getConnectionTicketCallable(const GetConnectionTicketRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<GetConnectionTicketOutcome()>>(
+			[this, request]()
+			{
+			return this->getConnectionTicket(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+Appstream_centerClient::GetOtaTaskByTaskIdOutcome Appstream_centerClient::getOtaTaskByTaskId(const GetOtaTaskByTaskIdRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return GetOtaTaskByTaskIdOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return GetOtaTaskByTaskIdOutcome(GetOtaTaskByTaskIdResult(outcome.result()));
+	else
+		return GetOtaTaskByTaskIdOutcome(outcome.error());
+}
+
+void Appstream_centerClient::getOtaTaskByTaskIdAsync(const GetOtaTaskByTaskIdRequest& request, const GetOtaTaskByTaskIdAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, getOtaTaskByTaskId(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+Appstream_centerClient::GetOtaTaskByTaskIdOutcomeCallable Appstream_centerClient::getOtaTaskByTaskIdCallable(const GetOtaTaskByTaskIdRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<GetOtaTaskByTaskIdOutcome()>>(
+			[this, request]()
+			{
+			return this->getOtaTaskByTaskId(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+Appstream_centerClient::GetResourcePriceOutcome Appstream_centerClient::getResourcePrice(const GetResourcePriceRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return GetResourcePriceOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return GetResourcePriceOutcome(GetResourcePriceResult(outcome.result()));
+	else
+		return GetResourcePriceOutcome(outcome.error());
+}
+
+void Appstream_centerClient::getResourcePriceAsync(const GetResourcePriceRequest& request, const GetResourcePriceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, getResourcePrice(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+Appstream_centerClient::GetResourcePriceOutcomeCallable Appstream_centerClient::getResourcePriceCallable(const GetResourcePriceRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<GetResourcePriceOutcome()>>(
+			[this, request]()
+			{
+			return this->getResourcePrice(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+Appstream_centerClient::GetResourceRenewPriceOutcome Appstream_centerClient::getResourceRenewPrice(const GetResourceRenewPriceRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return GetResourceRenewPriceOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return GetResourceRenewPriceOutcome(GetResourceRenewPriceResult(outcome.result()));
+	else
+		return GetResourceRenewPriceOutcome(outcome.error());
+}
+
+void Appstream_centerClient::getResourceRenewPriceAsync(const GetResourceRenewPriceRequest& request, const GetResourceRenewPriceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, getResourceRenewPrice(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+Appstream_centerClient::GetResourceRenewPriceOutcomeCallable Appstream_centerClient::getResourceRenewPriceCallable(const GetResourceRenewPriceRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<GetResourceRenewPriceOutcome()>>(
+			[this, request]()
+			{
+			return this->getResourceRenewPrice(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+Appstream_centerClient::ListAppInstanceGroupOutcome Appstream_centerClient::listAppInstanceGroup(const ListAppInstanceGroupRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ListAppInstanceGroupOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ListAppInstanceGroupOutcome(ListAppInstanceGroupResult(outcome.result()));
+	else
+		return ListAppInstanceGroupOutcome(outcome.error());
+}
+
+void Appstream_centerClient::listAppInstanceGroupAsync(const ListAppInstanceGroupRequest& request, const ListAppInstanceGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, listAppInstanceGroup(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+Appstream_centerClient::ListAppInstanceGroupOutcomeCallable Appstream_centerClient::listAppInstanceGroupCallable(const ListAppInstanceGroupRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ListAppInstanceGroupOutcome()>>(
+			[this, request]()
+			{
+			return this->listAppInstanceGroup(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+Appstream_centerClient::ListAppInstancesOutcome Appstream_centerClient::listAppInstances(const ListAppInstancesRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ListAppInstancesOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ListAppInstancesOutcome(ListAppInstancesResult(outcome.result()));
+	else
+		return ListAppInstancesOutcome(outcome.error());
+}
+
+void Appstream_centerClient::listAppInstancesAsync(const ListAppInstancesRequest& request, const ListAppInstancesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, listAppInstances(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+Appstream_centerClient::ListAppInstancesOutcomeCallable Appstream_centerClient::listAppInstancesCallable(const ListAppInstancesRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ListAppInstancesOutcome()>>(
+			[this, request]()
+			{
+			return this->listAppInstances(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+Appstream_centerClient::ListNodeInstanceTypeOutcome Appstream_centerClient::listNodeInstanceType(const ListNodeInstanceTypeRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ListNodeInstanceTypeOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ListNodeInstanceTypeOutcome(ListNodeInstanceTypeResult(outcome.result()));
+	else
+		return ListNodeInstanceTypeOutcome(outcome.error());
+}
+
+void Appstream_centerClient::listNodeInstanceTypeAsync(const ListNodeInstanceTypeRequest& request, const ListNodeInstanceTypeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, listNodeInstanceType(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+Appstream_centerClient::ListNodeInstanceTypeOutcomeCallable Appstream_centerClient::listNodeInstanceTypeCallable(const ListNodeInstanceTypeRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ListNodeInstanceTypeOutcome()>>(
+			[this, request]()
+			{
+			return this->listNodeInstanceType(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+Appstream_centerClient::ListOtaTaskOutcome Appstream_centerClient::listOtaTask(const ListOtaTaskRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ListOtaTaskOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ListOtaTaskOutcome(ListOtaTaskResult(outcome.result()));
+	else
+		return ListOtaTaskOutcome(outcome.error());
+}
+
+void Appstream_centerClient::listOtaTaskAsync(const ListOtaTaskRequest& request, const ListOtaTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, listOtaTask(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+Appstream_centerClient::ListOtaTaskOutcomeCallable Appstream_centerClient::listOtaTaskCallable(const ListOtaTaskRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ListOtaTaskOutcome()>>(
+			[this, request]()
+			{
+			return this->listOtaTask(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+Appstream_centerClient::ListRegionsOutcome Appstream_centerClient::listRegions(const ListRegionsRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ListRegionsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ListRegionsOutcome(ListRegionsResult(outcome.result()));
+	else
+		return ListRegionsOutcome(outcome.error());
+}
+
+void Appstream_centerClient::listRegionsAsync(const ListRegionsRequest& request, const ListRegionsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, listRegions(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+Appstream_centerClient::ListRegionsOutcomeCallable Appstream_centerClient::listRegionsCallable(const ListRegionsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ListRegionsOutcome()>>(
+			[this, request]()
+			{
+			return this->listRegions(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+Appstream_centerClient::ListTenantConfigOutcome Appstream_centerClient::listTenantConfig(const ListTenantConfigRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ListTenantConfigOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ListTenantConfigOutcome(ListTenantConfigResult(outcome.result()));
+	else
+		return ListTenantConfigOutcome(outcome.error());
+}
+
+void Appstream_centerClient::listTenantConfigAsync(const ListTenantConfigRequest& request, const ListTenantConfigAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, listTenantConfig(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+Appstream_centerClient::ListTenantConfigOutcomeCallable Appstream_centerClient::listTenantConfigCallable(const ListTenantConfigRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ListTenantConfigOutcome()>>(
+			[this, request]()
+			{
+			return this->listTenantConfig(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+Appstream_centerClient::LogOffAllSessionsInAppInstanceGroupOutcome Appstream_centerClient::logOffAllSessionsInAppInstanceGroup(const LogOffAllSessionsInAppInstanceGroupRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return LogOffAllSessionsInAppInstanceGroupOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return LogOffAllSessionsInAppInstanceGroupOutcome(LogOffAllSessionsInAppInstanceGroupResult(outcome.result()));
+	else
+		return LogOffAllSessionsInAppInstanceGroupOutcome(outcome.error());
+}
+
+void Appstream_centerClient::logOffAllSessionsInAppInstanceGroupAsync(const LogOffAllSessionsInAppInstanceGroupRequest& request, const LogOffAllSessionsInAppInstanceGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, logOffAllSessionsInAppInstanceGroup(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+Appstream_centerClient::LogOffAllSessionsInAppInstanceGroupOutcomeCallable Appstream_centerClient::logOffAllSessionsInAppInstanceGroupCallable(const LogOffAllSessionsInAppInstanceGroupRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<LogOffAllSessionsInAppInstanceGroupOutcome()>>(
+			[this, request]()
+			{
+			return this->logOffAllSessionsInAppInstanceGroup(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+Appstream_centerClient::ModifyAppInstanceGroupAttributeOutcome Appstream_centerClient::modifyAppInstanceGroupAttribute(const ModifyAppInstanceGroupAttributeRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ModifyAppInstanceGroupAttributeOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ModifyAppInstanceGroupAttributeOutcome(ModifyAppInstanceGroupAttributeResult(outcome.result()));
+	else
+		return ModifyAppInstanceGroupAttributeOutcome(outcome.error());
+}
+
+void Appstream_centerClient::modifyAppInstanceGroupAttributeAsync(const ModifyAppInstanceGroupAttributeRequest& request, const ModifyAppInstanceGroupAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, modifyAppInstanceGroupAttribute(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+Appstream_centerClient::ModifyAppInstanceGroupAttributeOutcomeCallable Appstream_centerClient::modifyAppInstanceGroupAttributeCallable(const ModifyAppInstanceGroupAttributeRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ModifyAppInstanceGroupAttributeOutcome()>>(
+			[this, request]()
+			{
+			return this->modifyAppInstanceGroupAttribute(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+Appstream_centerClient::ModifyNodePoolAttributeOutcome Appstream_centerClient::modifyNodePoolAttribute(const ModifyNodePoolAttributeRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ModifyNodePoolAttributeOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ModifyNodePoolAttributeOutcome(ModifyNodePoolAttributeResult(outcome.result()));
+	else
+		return ModifyNodePoolAttributeOutcome(outcome.error());
+}
+
+void Appstream_centerClient::modifyNodePoolAttributeAsync(const ModifyNodePoolAttributeRequest& request, const ModifyNodePoolAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, modifyNodePoolAttribute(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+Appstream_centerClient::ModifyNodePoolAttributeOutcomeCallable Appstream_centerClient::modifyNodePoolAttributeCallable(const ModifyNodePoolAttributeRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ModifyNodePoolAttributeOutcome()>>(
+			[this, request]()
+			{
+			return this->modifyNodePoolAttribute(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+Appstream_centerClient::ModifyTenantConfigOutcome Appstream_centerClient::modifyTenantConfig(const ModifyTenantConfigRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ModifyTenantConfigOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ModifyTenantConfigOutcome(ModifyTenantConfigResult(outcome.result()));
+	else
+		return ModifyTenantConfigOutcome(outcome.error());
+}
+
+void Appstream_centerClient::modifyTenantConfigAsync(const ModifyTenantConfigRequest& request, const ModifyTenantConfigAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, modifyTenantConfig(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+Appstream_centerClient::ModifyTenantConfigOutcomeCallable Appstream_centerClient::modifyTenantConfigCallable(const ModifyTenantConfigRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ModifyTenantConfigOutcome()>>(
+			[this, request]()
+			{
+			return this->modifyTenantConfig(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+Appstream_centerClient::PageListAppInstanceGroupUserOutcome Appstream_centerClient::pageListAppInstanceGroupUser(const PageListAppInstanceGroupUserRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return PageListAppInstanceGroupUserOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return PageListAppInstanceGroupUserOutcome(PageListAppInstanceGroupUserResult(outcome.result()));
+	else
+		return PageListAppInstanceGroupUserOutcome(outcome.error());
+}
+
+void Appstream_centerClient::pageListAppInstanceGroupUserAsync(const PageListAppInstanceGroupUserRequest& request, const PageListAppInstanceGroupUserAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, pageListAppInstanceGroupUser(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+Appstream_centerClient::PageListAppInstanceGroupUserOutcomeCallable Appstream_centerClient::pageListAppInstanceGroupUserCallable(const PageListAppInstanceGroupUserRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<PageListAppInstanceGroupUserOutcome()>>(
+			[this, request]()
+			{
+			return this->pageListAppInstanceGroupUser(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+Appstream_centerClient::RenewAppInstanceGroupOutcome Appstream_centerClient::renewAppInstanceGroup(const RenewAppInstanceGroupRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return RenewAppInstanceGroupOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return RenewAppInstanceGroupOutcome(RenewAppInstanceGroupResult(outcome.result()));
+	else
+		return RenewAppInstanceGroupOutcome(outcome.error());
+}
+
+void Appstream_centerClient::renewAppInstanceGroupAsync(const RenewAppInstanceGroupRequest& request, const RenewAppInstanceGroupAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, renewAppInstanceGroup(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+Appstream_centerClient::RenewAppInstanceGroupOutcomeCallable Appstream_centerClient::renewAppInstanceGroupCallable(const RenewAppInstanceGroupRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<RenewAppInstanceGroupOutcome()>>(
+			[this, request]()
+			{
+			return this->renewAppInstanceGroup(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+Appstream_centerClient::UnbindOutcome Appstream_centerClient::unbind(const UnbindRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return UnbindOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return UnbindOutcome(UnbindResult(outcome.result()));
+	else
+		return UnbindOutcome(outcome.error());
+}
+
+void Appstream_centerClient::unbindAsync(const UnbindRequest& request, const UnbindAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, unbind(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+Appstream_centerClient::UnbindOutcomeCallable Appstream_centerClient::unbindCallable(const UnbindRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<UnbindOutcome()>>(
+			[this, request]()
+			{
+			return this->unbind(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+Appstream_centerClient::UpdateAppInstanceGroupImageOutcome Appstream_centerClient::updateAppInstanceGroupImage(const UpdateAppInstanceGroupImageRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return UpdateAppInstanceGroupImageOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return UpdateAppInstanceGroupImageOutcome(UpdateAppInstanceGroupImageResult(outcome.result()));
+	else
+		return UpdateAppInstanceGroupImageOutcome(outcome.error());
+}
+
+void Appstream_centerClient::updateAppInstanceGroupImageAsync(const UpdateAppInstanceGroupImageRequest& request, const UpdateAppInstanceGroupImageAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, updateAppInstanceGroupImage(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+Appstream_centerClient::UpdateAppInstanceGroupImageOutcomeCallable Appstream_centerClient::updateAppInstanceGroupImageCallable(const UpdateAppInstanceGroupImageRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<UpdateAppInstanceGroupImageOutcome()>>(
+			[this, request]()
+			{
+			return this->updateAppInstanceGroupImage(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+

+ 81 - 0
appstream-center/src/model/ApproveOtaTaskRequest.cc

@@ -0,0 +1,81 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/appstream-center/model/ApproveOtaTaskRequest.h>
+
+using AlibabaCloud::Appstream_center::Model::ApproveOtaTaskRequest;
+
+ApproveOtaTaskRequest::ApproveOtaTaskRequest()
+    : RpcServiceRequest("appstream-center", "2021-09-01", "ApproveOtaTask") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+ApproveOtaTaskRequest::~ApproveOtaTaskRequest() {}
+
+std::string ApproveOtaTaskRequest::getBizRegionId() const {
+  return bizRegionId_;
+}
+
+void ApproveOtaTaskRequest::setBizRegionId(const std::string &bizRegionId) {
+  bizRegionId_ = bizRegionId;
+  setBodyParameter(std::string("BizRegionId"), bizRegionId);
+}
+
+std::string ApproveOtaTaskRequest::getOtaType() const {
+  return otaType_;
+}
+
+void ApproveOtaTaskRequest::setOtaType(const std::string &otaType) {
+  otaType_ = otaType;
+  setBodyParameter(std::string("OtaType"), otaType);
+}
+
+std::string ApproveOtaTaskRequest::getStartTime() const {
+  return startTime_;
+}
+
+void ApproveOtaTaskRequest::setStartTime(const std::string &startTime) {
+  startTime_ = startTime;
+  setBodyParameter(std::string("StartTime"), startTime);
+}
+
+std::string ApproveOtaTaskRequest::getStopTime() const {
+  return stopTime_;
+}
+
+void ApproveOtaTaskRequest::setStopTime(const std::string &stopTime) {
+  stopTime_ = stopTime;
+  setBodyParameter(std::string("StopTime"), stopTime);
+}
+
+std::string ApproveOtaTaskRequest::getAppInstanceGroupId() const {
+  return appInstanceGroupId_;
+}
+
+void ApproveOtaTaskRequest::setAppInstanceGroupId(const std::string &appInstanceGroupId) {
+  appInstanceGroupId_ = appInstanceGroupId;
+  setBodyParameter(std::string("AppInstanceGroupId"), appInstanceGroupId);
+}
+
+std::string ApproveOtaTaskRequest::getTaskId() const {
+  return taskId_;
+}
+
+void ApproveOtaTaskRequest::setTaskId(const std::string &taskId) {
+  taskId_ = taskId;
+  setBodyParameter(std::string("TaskId"), taskId);
+}
+

+ 58 - 0
appstream-center/src/model/ApproveOtaTaskResult.cc

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

+ 70 - 0
appstream-center/src/model/AuthorizeInstanceGroupRequest.cc

@@ -0,0 +1,70 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/appstream-center/model/AuthorizeInstanceGroupRequest.h>
+
+using AlibabaCloud::Appstream_center::Model::AuthorizeInstanceGroupRequest;
+
+AuthorizeInstanceGroupRequest::AuthorizeInstanceGroupRequest()
+    : RpcServiceRequest("appstream-center", "2021-09-01", "AuthorizeInstanceGroup") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+AuthorizeInstanceGroupRequest::~AuthorizeInstanceGroupRequest() {}
+
+std::string AuthorizeInstanceGroupRequest::getSpecId() const {
+  return specId_;
+}
+
+void AuthorizeInstanceGroupRequest::setSpecId(const std::string &specId) {
+  specId_ = specId;
+  setBodyParameter(std::string("SpecId"), specId);
+}
+
+std::vector<std::string> AuthorizeInstanceGroupRequest::getUnAuthorizeUserIds() const {
+  return unAuthorizeUserIds_;
+}
+
+void AuthorizeInstanceGroupRequest::setUnAuthorizeUserIds(const std::vector<std::string> &unAuthorizeUserIds) {
+  unAuthorizeUserIds_ = unAuthorizeUserIds;
+}
+
+std::string AuthorizeInstanceGroupRequest::getProductType() const {
+  return productType_;
+}
+
+void AuthorizeInstanceGroupRequest::setProductType(const std::string &productType) {
+  productType_ = productType;
+  setBodyParameter(std::string("ProductType"), productType);
+}
+
+std::string AuthorizeInstanceGroupRequest::getAppInstanceGroupId() const {
+  return appInstanceGroupId_;
+}
+
+void AuthorizeInstanceGroupRequest::setAppInstanceGroupId(const std::string &appInstanceGroupId) {
+  appInstanceGroupId_ = appInstanceGroupId;
+  setBodyParameter(std::string("AppInstanceGroupId"), appInstanceGroupId);
+}
+
+std::vector<std::string> AuthorizeInstanceGroupRequest::getAuthorizeUserIds() const {
+  return authorizeUserIds_;
+}
+
+void AuthorizeInstanceGroupRequest::setAuthorizeUserIds(const std::vector<std::string> &authorizeUserIds) {
+  authorizeUserIds_ = authorizeUserIds;
+}
+

+ 44 - 0
appstream-center/src/model/AuthorizeInstanceGroupResult.cc

@@ -0,0 +1,44 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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/appstream-center/model/AuthorizeInstanceGroupResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Appstream_center;
+using namespace AlibabaCloud::Appstream_center::Model;
+
+AuthorizeInstanceGroupResult::AuthorizeInstanceGroupResult() :
+	ServiceResult()
+{}
+
+AuthorizeInstanceGroupResult::AuthorizeInstanceGroupResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+AuthorizeInstanceGroupResult::~AuthorizeInstanceGroupResult()
+{}
+
+void AuthorizeInstanceGroupResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+
+}
+

+ 45 - 0
appstream-center/src/model/CancelOtaTaskRequest.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/appstream-center/model/CancelOtaTaskRequest.h>
+
+using AlibabaCloud::Appstream_center::Model::CancelOtaTaskRequest;
+
+CancelOtaTaskRequest::CancelOtaTaskRequest()
+    : RpcServiceRequest("appstream-center", "2021-09-01", "CancelOtaTask") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+CancelOtaTaskRequest::~CancelOtaTaskRequest() {}
+
+std::string CancelOtaTaskRequest::getAppInstanceGroupId() const {
+  return appInstanceGroupId_;
+}
+
+void CancelOtaTaskRequest::setAppInstanceGroupId(const std::string &appInstanceGroupId) {
+  appInstanceGroupId_ = appInstanceGroupId;
+  setBodyParameter(std::string("AppInstanceGroupId"), appInstanceGroupId);
+}
+
+std::string CancelOtaTaskRequest::getTaskId() const {
+  return taskId_;
+}
+
+void CancelOtaTaskRequest::setTaskId(const std::string &taskId) {
+  taskId_ = taskId;
+  setBodyParameter(std::string("TaskId"), taskId);
+}
+

+ 58 - 0
appstream-center/src/model/CancelOtaTaskResult.cc

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

+ 336 - 0
appstream-center/src/model/CreateAppInstanceGroupRequest.cc

@@ -0,0 +1,336 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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/appstream-center/model/CreateAppInstanceGroupRequest.h>
+
+using AlibabaCloud::Appstream_center::Model::CreateAppInstanceGroupRequest;
+
+CreateAppInstanceGroupRequest::CreateAppInstanceGroupRequest()
+    : RpcServiceRequest("appstream-center", "2021-09-01", "CreateAppInstanceGroup") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+CreateAppInstanceGroupRequest::~CreateAppInstanceGroupRequest() {}
+
+CreateAppInstanceGroupRequest::RuntimePolicy CreateAppInstanceGroupRequest::getRuntimePolicy() const {
+  return runtimePolicy_;
+}
+
+void CreateAppInstanceGroupRequest::setRuntimePolicy(const CreateAppInstanceGroupRequest::RuntimePolicy &runtimePolicy) {
+  runtimePolicy_ = runtimePolicy;
+  setBodyParameter(std::string("RuntimePolicy") + ".SessionType", runtimePolicy.sessionType);
+  setBodyParameter(std::string("RuntimePolicy") + ".DebugMode", runtimePolicy.debugMode);
+}
+
+std::string CreateAppInstanceGroupRequest::getBizRegionId() const {
+  return bizRegionId_;
+}
+
+void CreateAppInstanceGroupRequest::setBizRegionId(const std::string &bizRegionId) {
+  bizRegionId_ = bizRegionId;
+  setBodyParameter(std::string("BizRegionId"), bizRegionId);
+}
+
+int CreateAppInstanceGroupRequest::getScalingStep() const {
+  return scalingStep_;
+}
+
+void CreateAppInstanceGroupRequest::setScalingStep(int scalingStep) {
+  scalingStep_ = scalingStep;
+  setBodyParameter(std::string("ScalingStep"), std::to_string(scalingStep));
+}
+
+int CreateAppInstanceGroupRequest::getScalingDownAfterIdleMinutes() const {
+  return scalingDownAfterIdleMinutes_;
+}
+
+void CreateAppInstanceGroupRequest::setScalingDownAfterIdleMinutes(int scalingDownAfterIdleMinutes) {
+  scalingDownAfterIdleMinutes_ = scalingDownAfterIdleMinutes;
+  setBodyParameter(std::string("ScalingDownAfterIdleMinutes"), std::to_string(scalingDownAfterIdleMinutes));
+}
+
+int CreateAppInstanceGroupRequest::getMinAmount() const {
+  return minAmount_;
+}
+
+void CreateAppInstanceGroupRequest::setMinAmount(int minAmount) {
+  minAmount_ = minAmount;
+  setBodyParameter(std::string("MinAmount"), std::to_string(minAmount));
+}
+
+std::string CreateAppInstanceGroupRequest::getProductType() const {
+  return productType_;
+}
+
+void CreateAppInstanceGroupRequest::setProductType(const std::string &productType) {
+  productType_ = productType;
+  setBodyParameter(std::string("ProductType"), productType);
+}
+
+CreateAppInstanceGroupRequest::Network CreateAppInstanceGroupRequest::getNetwork() const {
+  return network_;
+}
+
+void CreateAppInstanceGroupRequest::setNetwork(const CreateAppInstanceGroupRequest::Network &network) {
+  network_ = network;
+  for(int dep1 = 0; dep1 != network.routes.size(); dep1++) {
+    setBodyParameter(std::string("Network") + ".Routes." + std::to_string(dep1 + 1) + ".Mode", network.routes[dep1].mode);
+    setBodyParameter(std::string("Network") + ".Routes." + std::to_string(dep1 + 1) + ".Destination", network.routes[dep1].destination);
+  }
+  setBodyParameter(std::string("Network") + ".StrategyType", network.strategyType);
+}
+
+int CreateAppInstanceGroupRequest::getReserveMinAmount() const {
+  return reserveMinAmount_;
+}
+
+void CreateAppInstanceGroupRequest::setReserveMinAmount(int reserveMinAmount) {
+  reserveMinAmount_ = reserveMinAmount;
+  setBodyParameter(std::string("ReserveMinAmount"), std::to_string(reserveMinAmount));
+}
+
+int CreateAppInstanceGroupRequest::getSessionTimeout() const {
+  return sessionTimeout_;
+}
+
+void CreateAppInstanceGroupRequest::setSessionTimeout(int sessionTimeout) {
+  sessionTimeout_ = sessionTimeout;
+  setBodyParameter(std::string("SessionTimeout"), std::to_string(sessionTimeout));
+}
+
+std::string CreateAppInstanceGroupRequest::getChargeResourceMode() const {
+  return chargeResourceMode_;
+}
+
+void CreateAppInstanceGroupRequest::setChargeResourceMode(const std::string &chargeResourceMode) {
+  chargeResourceMode_ = chargeResourceMode;
+  setBodyParameter(std::string("ChargeResourceMode"), chargeResourceMode);
+}
+
+std::string CreateAppInstanceGroupRequest::getAppCenterImageId() const {
+  return appCenterImageId_;
+}
+
+void CreateAppInstanceGroupRequest::setAppCenterImageId(const std::string &appCenterImageId) {
+  appCenterImageId_ = appCenterImageId;
+  setBodyParameter(std::string("AppCenterImageId"), appCenterImageId);
+}
+
+std::string CreateAppInstanceGroupRequest::getScalingUsageThreshold() const {
+  return scalingUsageThreshold_;
+}
+
+void CreateAppInstanceGroupRequest::setScalingUsageThreshold(const std::string &scalingUsageThreshold) {
+  scalingUsageThreshold_ = scalingUsageThreshold;
+  setBodyParameter(std::string("ScalingUsageThreshold"), scalingUsageThreshold);
+}
+
+CreateAppInstanceGroupRequest::UserInfo CreateAppInstanceGroupRequest::getUserInfo() const {
+  return userInfo_;
+}
+
+void CreateAppInstanceGroupRequest::setUserInfo(const CreateAppInstanceGroupRequest::UserInfo &userInfo) {
+  userInfo_ = userInfo;
+  setBodyParameter(std::string("UserInfo") + ".Type", userInfo.type);
+}
+
+std::string CreateAppInstanceGroupRequest::getReserveAmountRatio() const {
+  return reserveAmountRatio_;
+}
+
+void CreateAppInstanceGroupRequest::setReserveAmountRatio(const std::string &reserveAmountRatio) {
+  reserveAmountRatio_ = reserveAmountRatio;
+  setBodyParameter(std::string("ReserveAmountRatio"), reserveAmountRatio);
+}
+
+std::string CreateAppInstanceGroupRequest::getPreOpenAppId() const {
+  return preOpenAppId_;
+}
+
+void CreateAppInstanceGroupRequest::setPreOpenAppId(const std::string &preOpenAppId) {
+  preOpenAppId_ = preOpenAppId;
+  setBodyParameter(std::string("PreOpenAppId"), preOpenAppId);
+}
+
+int CreateAppInstanceGroupRequest::getAmount() const {
+  return amount_;
+}
+
+void CreateAppInstanceGroupRequest::setAmount(int amount) {
+  amount_ = amount;
+  setBodyParameter(std::string("Amount"), std::to_string(amount));
+}
+
+int CreateAppInstanceGroupRequest::getPeriod() const {
+  return period_;
+}
+
+void CreateAppInstanceGroupRequest::setPeriod(int period) {
+  period_ = period;
+  setBodyParameter(std::string("Period"), std::to_string(period));
+}
+
+bool CreateAppInstanceGroupRequest::getAutoPay() const {
+  return autoPay_;
+}
+
+void CreateAppInstanceGroupRequest::setAutoPay(bool autoPay) {
+  autoPay_ = autoPay;
+  setBodyParameter(std::string("AutoPay"), autoPay ? "true" : "false");
+}
+
+CreateAppInstanceGroupRequest::NodePool CreateAppInstanceGroupRequest::getNodePool() const {
+  return nodePool_;
+}
+
+void CreateAppInstanceGroupRequest::setNodePool(const CreateAppInstanceGroupRequest::NodePool &nodePool) {
+  nodePool_ = nodePool;
+  for(int dep1 = 0; dep1 != nodePool.recurrenceSchedules.size(); dep1++) {
+    for(int dep2 = 0; dep2 != nodePool.recurrenceSchedules[dep1].recurrenceValues.size(); dep2++) {
+      setBodyParameter(std::string("NodePool") + ".RecurrenceSchedules." + std::to_string(dep1 + 1) + ".RecurrenceValues." + std::to_string(dep2 + 1), std::to_string(nodePool.recurrenceSchedules[dep1].recurrenceValues[dep2]));
+    }
+    setBodyParameter(std::string("NodePool") + ".RecurrenceSchedules." + std::to_string(dep1 + 1) + ".RecurrenceType", nodePool.recurrenceSchedules[dep1].recurrenceType);
+    for(int dep2 = 0; dep2 != nodePool.recurrenceSchedules[dep1].timerPeriods.size(); dep2++) {
+      setBodyParameter(std::string("NodePool") + ".RecurrenceSchedules." + std::to_string(dep1 + 1) + ".TimerPeriods." + std::to_string(dep2 + 1) + ".Amount", std::to_string(nodePool.recurrenceSchedules[dep1].timerPeriods[dep2].amount));
+      setBodyParameter(std::string("NodePool") + ".RecurrenceSchedules." + std::to_string(dep1 + 1) + ".TimerPeriods." + std::to_string(dep2 + 1) + ".EndTime", nodePool.recurrenceSchedules[dep1].timerPeriods[dep2].endTime);
+      setBodyParameter(std::string("NodePool") + ".RecurrenceSchedules." + std::to_string(dep1 + 1) + ".TimerPeriods." + std::to_string(dep2 + 1) + ".StartTime", nodePool.recurrenceSchedules[dep1].timerPeriods[dep2].startTime);
+    }
+  }
+  setBodyParameter(std::string("NodePool") + ".NodeAmount", std::to_string(nodePool.nodeAmount));
+  setBodyParameter(std::string("NodePool") + ".ScalingStep", std::to_string(nodePool.scalingStep));
+  setBodyParameter(std::string("NodePool") + ".StrategyDisableDate", nodePool.strategyDisableDate);
+  setBodyParameter(std::string("NodePool") + ".NodeInstanceType", nodePool.nodeInstanceType);
+  setBodyParameter(std::string("NodePool") + ".ScalingDownAfterIdleMinutes", std::to_string(nodePool.scalingDownAfterIdleMinutes));
+  setBodyParameter(std::string("NodePool") + ".StrategyType", nodePool.strategyType);
+  setBodyParameter(std::string("NodePool") + ".MaxScalingAmount", std::to_string(nodePool.maxScalingAmount));
+  setBodyParameter(std::string("NodePool") + ".WarmUp", nodePool.warmUp ? "true" : "false");
+  setBodyParameter(std::string("NodePool") + ".ScalingUsageThreshold", nodePool.scalingUsageThreshold);
+  setBodyParameter(std::string("NodePool") + ".NodeCapacity", std::to_string(nodePool.nodeCapacity));
+  setBodyParameter(std::string("NodePool") + ".StrategyEnableDate", nodePool.strategyEnableDate);
+}
+
+std::string CreateAppInstanceGroupRequest::getAppInstanceType() const {
+  return appInstanceType_;
+}
+
+void CreateAppInstanceGroupRequest::setAppInstanceType(const std::string &appInstanceType) {
+  appInstanceType_ = appInstanceType;
+  setBodyParameter(std::string("AppInstanceType"), appInstanceType);
+}
+
+int CreateAppInstanceGroupRequest::getMaxAmount() const {
+  return maxAmount_;
+}
+
+void CreateAppInstanceGroupRequest::setMaxAmount(int maxAmount) {
+  maxAmount_ = maxAmount;
+  setBodyParameter(std::string("MaxAmount"), std::to_string(maxAmount));
+}
+
+CreateAppInstanceGroupRequest::SecurityPolicy CreateAppInstanceGroupRequest::getSecurityPolicy() const {
+  return securityPolicy_;
+}
+
+void CreateAppInstanceGroupRequest::setSecurityPolicy(const CreateAppInstanceGroupRequest::SecurityPolicy &securityPolicy) {
+  securityPolicy_ = securityPolicy;
+  setBodyParameter(std::string("SecurityPolicy") + ".ResetAfterUnbind", securityPolicy.resetAfterUnbind ? "true" : "false");
+}
+
+std::string CreateAppInstanceGroupRequest::getPromotionId() const {
+  return promotionId_;
+}
+
+void CreateAppInstanceGroupRequest::setPromotionId(const std::string &promotionId) {
+  promotionId_ = promotionId;
+  setBodyParameter(std::string("PromotionId"), promotionId);
+}
+
+std::vector<std::string> CreateAppInstanceGroupRequest::getUsers() const {
+  return users_;
+}
+
+void CreateAppInstanceGroupRequest::setUsers(const std::vector<std::string> &users) {
+  users_ = users;
+}
+
+CreateAppInstanceGroupRequest::VideoPolicy CreateAppInstanceGroupRequest::getVideoPolicy() const {
+  return videoPolicy_;
+}
+
+void CreateAppInstanceGroupRequest::setVideoPolicy(const CreateAppInstanceGroupRequest::VideoPolicy &videoPolicy) {
+  videoPolicy_ = videoPolicy;
+  setBodyParameter(std::string("VideoPolicy") + ".Webrtc", videoPolicy.webrtc ? "true" : "false");
+  setBodyParameter(std::string("VideoPolicy") + ".TerminalResolutionAdaptive", videoPolicy.terminalResolutionAdaptive ? "true" : "false");
+  setBodyParameter(std::string("VideoPolicy") + ".FrameRate", std::to_string(videoPolicy.frameRate));
+  setBodyParameter(std::string("VideoPolicy") + ".SessionResolutionWidth", std::to_string(videoPolicy.sessionResolutionWidth));
+  setBodyParameter(std::string("VideoPolicy") + ".StreamingMode", videoPolicy.streamingMode);
+  setBodyParameter(std::string("VideoPolicy") + ".SessionResolutionHeight", std::to_string(videoPolicy.sessionResolutionHeight));
+}
+
+std::string CreateAppInstanceGroupRequest::getAppInstanceGroupName() const {
+  return appInstanceGroupName_;
+}
+
+void CreateAppInstanceGroupRequest::setAppInstanceGroupName(const std::string &appInstanceGroupName) {
+  appInstanceGroupName_ = appInstanceGroupName;
+  setBodyParameter(std::string("AppInstanceGroupName"), appInstanceGroupName);
+}
+
+std::string CreateAppInstanceGroupRequest::getPeriodUnit() const {
+  return periodUnit_;
+}
+
+void CreateAppInstanceGroupRequest::setPeriodUnit(const std::string &periodUnit) {
+  periodUnit_ = periodUnit;
+  setBodyParameter(std::string("PeriodUnit"), periodUnit);
+}
+
+int CreateAppInstanceGroupRequest::getReserveMaxAmount() const {
+  return reserveMaxAmount_;
+}
+
+void CreateAppInstanceGroupRequest::setReserveMaxAmount(int reserveMaxAmount) {
+  reserveMaxAmount_ = reserveMaxAmount;
+  setBodyParameter(std::string("ReserveMaxAmount"), std::to_string(reserveMaxAmount));
+}
+
+bool CreateAppInstanceGroupRequest::getAutoRenew() const {
+  return autoRenew_;
+}
+
+void CreateAppInstanceGroupRequest::setAutoRenew(bool autoRenew) {
+  autoRenew_ = autoRenew;
+  setBodyParameter(std::string("AutoRenew"), autoRenew ? "true" : "false");
+}
+
+std::string CreateAppInstanceGroupRequest::getChargeType() const {
+  return chargeType_;
+}
+
+void CreateAppInstanceGroupRequest::setChargeType(const std::string &chargeType) {
+  chargeType_ = chargeType;
+  setBodyParameter(std::string("ChargeType"), chargeType);
+}
+
+std::string CreateAppInstanceGroupRequest::getStrategyType() const {
+  return strategyType_;
+}
+
+void CreateAppInstanceGroupRequest::setStrategyType(const std::string &strategyType) {
+  strategyType_ = strategyType;
+  setBodyParameter(std::string("StrategyType"), strategyType);
+}
+

+ 58 - 0
appstream-center/src/model/CreateAppInstanceGroupResult.cc

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

+ 45 - 0
appstream-center/src/model/DeleteAppInstanceGroupRequest.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/appstream-center/model/DeleteAppInstanceGroupRequest.h>
+
+using AlibabaCloud::Appstream_center::Model::DeleteAppInstanceGroupRequest;
+
+DeleteAppInstanceGroupRequest::DeleteAppInstanceGroupRequest()
+    : RpcServiceRequest("appstream-center", "2021-09-01", "DeleteAppInstanceGroup") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+DeleteAppInstanceGroupRequest::~DeleteAppInstanceGroupRequest() {}
+
+std::string DeleteAppInstanceGroupRequest::getProductType() const {
+  return productType_;
+}
+
+void DeleteAppInstanceGroupRequest::setProductType(const std::string &productType) {
+  productType_ = productType;
+  setBodyParameter(std::string("ProductType"), productType);
+}
+
+std::string DeleteAppInstanceGroupRequest::getAppInstanceGroupId() const {
+  return appInstanceGroupId_;
+}
+
+void DeleteAppInstanceGroupRequest::setAppInstanceGroupId(const std::string &appInstanceGroupId) {
+  appInstanceGroupId_ = appInstanceGroupId;
+  setBodyParameter(std::string("AppInstanceGroupId"), appInstanceGroupId);
+}
+

+ 44 - 0
appstream-center/src/model/DeleteAppInstanceGroupResult.cc

@@ -0,0 +1,44 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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/appstream-center/model/DeleteAppInstanceGroupResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Appstream_center;
+using namespace AlibabaCloud::Appstream_center::Model;
+
+DeleteAppInstanceGroupResult::DeleteAppInstanceGroupResult() :
+	ServiceResult()
+{}
+
+DeleteAppInstanceGroupResult::DeleteAppInstanceGroupResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DeleteAppInstanceGroupResult::~DeleteAppInstanceGroupResult()
+{}
+
+void DeleteAppInstanceGroupResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+
+}
+

+ 53 - 0
appstream-center/src/model/DeleteAppInstancesRequest.cc

@@ -0,0 +1,53 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/appstream-center/model/DeleteAppInstancesRequest.h>
+
+using AlibabaCloud::Appstream_center::Model::DeleteAppInstancesRequest;
+
+DeleteAppInstancesRequest::DeleteAppInstancesRequest()
+    : RpcServiceRequest("appstream-center", "2021-09-01", "DeleteAppInstances") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+DeleteAppInstancesRequest::~DeleteAppInstancesRequest() {}
+
+std::vector<std::string> DeleteAppInstancesRequest::getAppInstanceIds() const {
+  return appInstanceIds_;
+}
+
+void DeleteAppInstancesRequest::setAppInstanceIds(const std::vector<std::string> &appInstanceIds) {
+  appInstanceIds_ = appInstanceIds;
+}
+
+std::string DeleteAppInstancesRequest::getProductType() const {
+  return productType_;
+}
+
+void DeleteAppInstancesRequest::setProductType(const std::string &productType) {
+  productType_ = productType;
+  setBodyParameter(std::string("ProductType"), productType);
+}
+
+std::string DeleteAppInstancesRequest::getAppInstanceGroupId() const {
+  return appInstanceGroupId_;
+}
+
+void DeleteAppInstancesRequest::setAppInstanceGroupId(const std::string &appInstanceGroupId) {
+  appInstanceGroupId_ = appInstanceGroupId;
+  setBodyParameter(std::string("AppInstanceGroupId"), appInstanceGroupId);
+}
+

+ 63 - 0
appstream-center/src/model/DeleteAppInstancesResult.cc

@@ -0,0 +1,63 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/appstream-center/model/DeleteAppInstancesResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Appstream_center;
+using namespace AlibabaCloud::Appstream_center::Model;
+
+DeleteAppInstancesResult::DeleteAppInstancesResult() :
+	ServiceResult()
+{}
+
+DeleteAppInstancesResult::DeleteAppInstancesResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DeleteAppInstancesResult::~DeleteAppInstancesResult()
+{}
+
+void DeleteAppInstancesResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allDeleteAppInstanceModelsNode = value["DeleteAppInstanceModels"]["data"];
+	for (auto valueDeleteAppInstanceModelsdata : allDeleteAppInstanceModelsNode)
+	{
+		Data deleteAppInstanceModelsObject;
+		if(!valueDeleteAppInstanceModelsdata["AppInstanceId"].isNull())
+			deleteAppInstanceModelsObject.appInstanceId = valueDeleteAppInstanceModelsdata["AppInstanceId"].asString();
+		if(!valueDeleteAppInstanceModelsdata["Success"].isNull())
+			deleteAppInstanceModelsObject.success = valueDeleteAppInstanceModelsdata["Success"].asString() == "true";
+		if(!valueDeleteAppInstanceModelsdata["Code"].isNull())
+			deleteAppInstanceModelsObject.code = valueDeleteAppInstanceModelsdata["Code"].asString();
+		if(!valueDeleteAppInstanceModelsdata["Message"].isNull())
+			deleteAppInstanceModelsObject.message = valueDeleteAppInstanceModelsdata["Message"].asString();
+		deleteAppInstanceModels_.push_back(deleteAppInstanceModelsObject);
+	}
+
+}
+
+std::vector<DeleteAppInstancesResult::Data> DeleteAppInstancesResult::getDeleteAppInstanceModels()const
+{
+	return deleteAppInstanceModels_;
+}
+

+ 45 - 0
appstream-center/src/model/GetAppInstanceGroupRequest.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/appstream-center/model/GetAppInstanceGroupRequest.h>
+
+using AlibabaCloud::Appstream_center::Model::GetAppInstanceGroupRequest;
+
+GetAppInstanceGroupRequest::GetAppInstanceGroupRequest()
+    : RpcServiceRequest("appstream-center", "2021-09-01", "GetAppInstanceGroup") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+GetAppInstanceGroupRequest::~GetAppInstanceGroupRequest() {}
+
+std::string GetAppInstanceGroupRequest::getProductType() const {
+  return productType_;
+}
+
+void GetAppInstanceGroupRequest::setProductType(const std::string &productType) {
+  productType_ = productType;
+  setParameter(std::string("ProductType"), productType);
+}
+
+std::string GetAppInstanceGroupRequest::getAppInstanceGroupId() const {
+  return appInstanceGroupId_;
+}
+
+void GetAppInstanceGroupRequest::setAppInstanceGroupId(const std::string &appInstanceGroupId) {
+  appInstanceGroupId_ = appInstanceGroupId;
+  setParameter(std::string("AppInstanceGroupId"), appInstanceGroupId);
+}
+

+ 195 - 0
appstream-center/src/model/GetAppInstanceGroupResult.cc

@@ -0,0 +1,195 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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/appstream-center/model/GetAppInstanceGroupResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Appstream_center;
+using namespace AlibabaCloud::Appstream_center::Model;
+
+GetAppInstanceGroupResult::GetAppInstanceGroupResult() :
+	ServiceResult()
+{}
+
+GetAppInstanceGroupResult::GetAppInstanceGroupResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+GetAppInstanceGroupResult::~GetAppInstanceGroupResult()
+{}
+
+void GetAppInstanceGroupResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto appInstanceGroupModelsNode = value["AppInstanceGroupModels"];
+	if(!appInstanceGroupModelsNode["AppCenterImageId"].isNull())
+		appInstanceGroupModels_.appCenterImageId = appInstanceGroupModelsNode["AppCenterImageId"].asString();
+	if(!appInstanceGroupModelsNode["AliyunImageId"].isNull())
+		appInstanceGroupModels_.aliyunImageId = appInstanceGroupModelsNode["AliyunImageId"].asString();
+	if(!appInstanceGroupModelsNode["RegionId"].isNull())
+		appInstanceGroupModels_.regionId = appInstanceGroupModelsNode["RegionId"].asString();
+	if(!appInstanceGroupModelsNode["ProductType"].isNull())
+		appInstanceGroupModels_.productType = appInstanceGroupModelsNode["ProductType"].asString();
+	if(!appInstanceGroupModelsNode["AppInstanceType"].isNull())
+		appInstanceGroupModels_.appInstanceType = appInstanceGroupModelsNode["AppInstanceType"].asString();
+	if(!appInstanceGroupModelsNode["AppInstanceGroupId"].isNull())
+		appInstanceGroupModels_.appInstanceGroupId = appInstanceGroupModelsNode["AppInstanceGroupId"].asString();
+	if(!appInstanceGroupModelsNode["Cpu"].isNull())
+		appInstanceGroupModels_.cpu = appInstanceGroupModelsNode["Cpu"].asString();
+	if(!appInstanceGroupModelsNode["Gpu"].isNull())
+		appInstanceGroupModels_.gpu = appInstanceGroupModelsNode["Gpu"].asString();
+	if(!appInstanceGroupModelsNode["Memory"].isNull())
+		appInstanceGroupModels_.memory = std::stol(appInstanceGroupModelsNode["Memory"].asString());
+	if(!appInstanceGroupModelsNode["Amount"].isNull())
+		appInstanceGroupModels_.amount = std::stoi(appInstanceGroupModelsNode["Amount"].asString());
+	if(!appInstanceGroupModelsNode["MinAmount"].isNull())
+		appInstanceGroupModels_.minAmount = std::stoi(appInstanceGroupModelsNode["MinAmount"].asString());
+	if(!appInstanceGroupModelsNode["MaxAmount"].isNull())
+		appInstanceGroupModels_.maxAmount = std::stoi(appInstanceGroupModelsNode["MaxAmount"].asString());
+	if(!appInstanceGroupModelsNode["ChargeType"].isNull())
+		appInstanceGroupModels_.chargeType = appInstanceGroupModelsNode["ChargeType"].asString();
+	if(!appInstanceGroupModelsNode["GmtCreate"].isNull())
+		appInstanceGroupModels_.gmtCreate = appInstanceGroupModelsNode["GmtCreate"].asString();
+	if(!appInstanceGroupModelsNode["Status"].isNull())
+		appInstanceGroupModels_.status = appInstanceGroupModelsNode["Status"].asString();
+	if(!appInstanceGroupModelsNode["SpecId"].isNull())
+		appInstanceGroupModels_.specId = appInstanceGroupModelsNode["SpecId"].asString();
+	if(!appInstanceGroupModelsNode["SessionTimeout"].isNull())
+		appInstanceGroupModels_.sessionTimeout = appInstanceGroupModelsNode["SessionTimeout"].asString();
+	if(!appInstanceGroupModelsNode["AppInstanceGroupName"].isNull())
+		appInstanceGroupModels_.appInstanceGroupName = appInstanceGroupModelsNode["AppInstanceGroupName"].asString();
+	if(!appInstanceGroupModelsNode["ExpiredTime"].isNull())
+		appInstanceGroupModels_.expiredTime = appInstanceGroupModelsNode["ExpiredTime"].asString();
+	if(!appInstanceGroupModelsNode["OsType"].isNull())
+		appInstanceGroupModels_.osType = appInstanceGroupModelsNode["OsType"].asString();
+	if(!appInstanceGroupModelsNode["AppCenterImageName"].isNull())
+		appInstanceGroupModels_.appCenterImageName = appInstanceGroupModelsNode["AppCenterImageName"].asString();
+	if(!appInstanceGroupModelsNode["ResourceStatus"].isNull())
+		appInstanceGroupModels_.resourceStatus = appInstanceGroupModelsNode["ResourceStatus"].asString();
+	auto allAppsNode = appInstanceGroupModelsNode["Apps"]["appsItem"];
+	for (auto appInstanceGroupModelsNodeAppsappsItem : allAppsNode)
+	{
+		AppInstanceGroupModels::AppsItem appsItemObject;
+		if(!appInstanceGroupModelsNodeAppsappsItem["AppId"].isNull())
+			appsItemObject.appId = appInstanceGroupModelsNodeAppsappsItem["AppId"].asString();
+		if(!appInstanceGroupModelsNodeAppsappsItem["AppName"].isNull())
+			appsItemObject.appName = appInstanceGroupModelsNodeAppsappsItem["AppName"].asString();
+		appInstanceGroupModels_.apps.push_back(appsItemObject);
+	}
+	auto allNodePoolNode = appInstanceGroupModelsNode["NodePool"]["node"];
+	for (auto appInstanceGroupModelsNodeNodePoolnode : allNodePoolNode)
+	{
+		AppInstanceGroupModels::Node nodeObject;
+		if(!appInstanceGroupModelsNodeNodePoolnode["NodePoolId"].isNull())
+			nodeObject.nodePoolId = appInstanceGroupModelsNodeNodePoolnode["NodePoolId"].asString();
+		if(!appInstanceGroupModelsNodeNodePoolnode["NodeInstanceType"].isNull())
+			nodeObject.nodeInstanceType = appInstanceGroupModelsNodeNodePoolnode["NodeInstanceType"].asString();
+		if(!appInstanceGroupModelsNodeNodePoolnode["NodeAmount"].isNull())
+			nodeObject.nodeAmount = std::stoi(appInstanceGroupModelsNodeNodePoolnode["NodeAmount"].asString());
+		if(!appInstanceGroupModelsNodeNodePoolnode["NodeUsed"].isNull())
+			nodeObject.nodeUsed = std::stoi(appInstanceGroupModelsNodeNodePoolnode["NodeUsed"].asString());
+		if(!appInstanceGroupModelsNodeNodePoolnode["NodeCapacity"].isNull())
+			nodeObject.nodeCapacity = std::stoi(appInstanceGroupModelsNodeNodePoolnode["NodeCapacity"].asString());
+		if(!appInstanceGroupModelsNodeNodePoolnode["ScalingNodeAmount"].isNull())
+			nodeObject.scalingNodeAmount = std::stoi(appInstanceGroupModelsNodeNodePoolnode["ScalingNodeAmount"].asString());
+		if(!appInstanceGroupModelsNodeNodePoolnode["ScalingNodeUsed"].isNull())
+			nodeObject.scalingNodeUsed = std::stoi(appInstanceGroupModelsNodeNodePoolnode["ScalingNodeUsed"].asString());
+		if(!appInstanceGroupModelsNodeNodePoolnode["StrategyType"].isNull())
+			nodeObject.strategyType = appInstanceGroupModelsNodeNodePoolnode["StrategyType"].asString();
+		if(!appInstanceGroupModelsNodeNodePoolnode["Amount"].isNull())
+			nodeObject.amount = std::stoi(appInstanceGroupModelsNodeNodePoolnode["Amount"].asString());
+		if(!appInstanceGroupModelsNodeNodePoolnode["MaxScalingAmount"].isNull())
+			nodeObject.maxScalingAmount = std::stoi(appInstanceGroupModelsNodeNodePoolnode["MaxScalingAmount"].asString());
+		if(!appInstanceGroupModelsNodeNodePoolnode["ScalingStep"].isNull())
+			nodeObject.scalingStep = std::stoi(appInstanceGroupModelsNodeNodePoolnode["ScalingStep"].asString());
+		if(!appInstanceGroupModelsNodeNodePoolnode["ScalingUsageThreshold"].isNull())
+			nodeObject.scalingUsageThreshold = appInstanceGroupModelsNodeNodePoolnode["ScalingUsageThreshold"].asString();
+		if(!appInstanceGroupModelsNodeNodePoolnode["ScalingDownAfterIdleMinutes"].isNull())
+			nodeObject.scalingDownAfterIdleMinutes = std::stoi(appInstanceGroupModelsNodeNodePoolnode["ScalingDownAfterIdleMinutes"].asString());
+		if(!appInstanceGroupModelsNodeNodePoolnode["StrategyDisableDate"].isNull())
+			nodeObject.strategyDisableDate = appInstanceGroupModelsNodeNodePoolnode["StrategyDisableDate"].asString();
+		if(!appInstanceGroupModelsNodeNodePoolnode["StrategyEnableDate"].isNull())
+			nodeObject.strategyEnableDate = appInstanceGroupModelsNodeNodePoolnode["StrategyEnableDate"].asString();
+		if(!appInstanceGroupModelsNodeNodePoolnode["WarmUp"].isNull())
+			nodeObject.warmUp = appInstanceGroupModelsNodeNodePoolnode["WarmUp"].asString() == "true";
+		if(!appInstanceGroupModelsNodeNodePoolnode["NodeTypeName"].isNull())
+			nodeObject.nodeTypeName = appInstanceGroupModelsNodeNodePoolnode["NodeTypeName"].asString();
+		auto allRecurrenceSchedulesNode = appInstanceGroupModelsNodeNodePoolnode["RecurrenceSchedules"]["RecurrenceSchedule"];
+		for (auto appInstanceGroupModelsNodeNodePoolnodeRecurrenceSchedulesRecurrenceSchedule : allRecurrenceSchedulesNode)
+		{
+			AppInstanceGroupModels::Node::RecurrenceSchedule recurrenceSchedulesObject;
+			if(!appInstanceGroupModelsNodeNodePoolnodeRecurrenceSchedulesRecurrenceSchedule["RecurrenceType"].isNull())
+				recurrenceSchedulesObject.recurrenceType = appInstanceGroupModelsNodeNodePoolnodeRecurrenceSchedulesRecurrenceSchedule["RecurrenceType"].asString();
+			auto allTimerPeriodsNode = appInstanceGroupModelsNodeNodePoolnodeRecurrenceSchedulesRecurrenceSchedule["TimerPeriods"]["TimerPeriod"];
+			for (auto appInstanceGroupModelsNodeNodePoolnodeRecurrenceSchedulesRecurrenceScheduleTimerPeriodsTimerPeriod : allTimerPeriodsNode)
+			{
+				AppInstanceGroupModels::Node::RecurrenceSchedule::TimerPeriod timerPeriodsObject;
+				if(!appInstanceGroupModelsNodeNodePoolnodeRecurrenceSchedulesRecurrenceScheduleTimerPeriodsTimerPeriod["Amount"].isNull())
+					timerPeriodsObject.amount = std::stoi(appInstanceGroupModelsNodeNodePoolnodeRecurrenceSchedulesRecurrenceScheduleTimerPeriodsTimerPeriod["Amount"].asString());
+				if(!appInstanceGroupModelsNodeNodePoolnodeRecurrenceSchedulesRecurrenceScheduleTimerPeriodsTimerPeriod["EndTime"].isNull())
+					timerPeriodsObject.endTime = appInstanceGroupModelsNodeNodePoolnodeRecurrenceSchedulesRecurrenceScheduleTimerPeriodsTimerPeriod["EndTime"].asString();
+				if(!appInstanceGroupModelsNodeNodePoolnodeRecurrenceSchedulesRecurrenceScheduleTimerPeriodsTimerPeriod["StartTime"].isNull())
+					timerPeriodsObject.startTime = appInstanceGroupModelsNodeNodePoolnodeRecurrenceSchedulesRecurrenceScheduleTimerPeriodsTimerPeriod["StartTime"].asString();
+				recurrenceSchedulesObject.timerPeriods.push_back(timerPeriodsObject);
+			}
+			auto allRecurrenceValues = value["RecurrenceValues"]["RecurrenceValue"];
+			for (auto value : allRecurrenceValues)
+				recurrenceSchedulesObject.recurrenceValues.push_back(value.asString());
+			nodeObject.recurrenceSchedules.push_back(recurrenceSchedulesObject);
+		}
+		appInstanceGroupModels_.nodePool.push_back(nodeObject);
+	}
+	auto otaInfoNode = appInstanceGroupModelsNode["OtaInfo"];
+	if(!otaInfoNode["OtaVersion"].isNull())
+		appInstanceGroupModels_.otaInfo.otaVersion = otaInfoNode["OtaVersion"].asString();
+	if(!otaInfoNode["NewOtaVersion"].isNull())
+		appInstanceGroupModels_.otaInfo.newOtaVersion = otaInfoNode["NewOtaVersion"].asString();
+	if(!otaInfoNode["TaskId"].isNull())
+		appInstanceGroupModels_.otaInfo.taskId = otaInfoNode["TaskId"].asString();
+	if(!value["TotalCount"].isNull())
+		totalCount_ = std::stoi(value["TotalCount"].asString());
+	if(!value["PageSize"].isNull())
+		pageSize_ = std::stoi(value["PageSize"].asString());
+	if(!value["PageNumber"].isNull())
+		pageNumber_ = std::stoi(value["PageNumber"].asString());
+
+}
+
+int GetAppInstanceGroupResult::getTotalCount()const
+{
+	return totalCount_;
+}
+
+int GetAppInstanceGroupResult::getPageSize()const
+{
+	return pageSize_;
+}
+
+int GetAppInstanceGroupResult::getPageNumber()const
+{
+	return pageNumber_;
+}
+
+GetAppInstanceGroupResult::AppInstanceGroupModels GetAppInstanceGroupResult::getAppInstanceGroupModels()const
+{
+	return appInstanceGroupModels_;
+}
+

+ 125 - 0
appstream-center/src/model/GetConnectionTicketRequest.cc

@@ -0,0 +1,125 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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/appstream-center/model/GetConnectionTicketRequest.h>
+
+using AlibabaCloud::Appstream_center::Model::GetConnectionTicketRequest;
+
+GetConnectionTicketRequest::GetConnectionTicketRequest()
+    : RpcServiceRequest("appstream-center", "2021-09-01", "GetConnectionTicket") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+GetConnectionTicketRequest::~GetConnectionTicketRequest() {}
+
+std::string GetConnectionTicketRequest::getBizRegionId() const {
+  return bizRegionId_;
+}
+
+void GetConnectionTicketRequest::setBizRegionId(const std::string &bizRegionId) {
+  bizRegionId_ = bizRegionId;
+  setBodyParameter(std::string("BizRegionId"), bizRegionId);
+}
+
+std::string GetConnectionTicketRequest::getAppStartParam() const {
+  return appStartParam_;
+}
+
+void GetConnectionTicketRequest::setAppStartParam(const std::string &appStartParam) {
+  appStartParam_ = appStartParam;
+  setBodyParameter(std::string("AppStartParam"), appStartParam);
+}
+
+std::string GetConnectionTicketRequest::getProductType() const {
+  return productType_;
+}
+
+void GetConnectionTicketRequest::setProductType(const std::string &productType) {
+  productType_ = productType;
+  setBodyParameter(std::string("ProductType"), productType);
+}
+
+std::string GetConnectionTicketRequest::getEndUserId() const {
+  return endUserId_;
+}
+
+void GetConnectionTicketRequest::setEndUserId(const std::string &endUserId) {
+  endUserId_ = endUserId;
+  setBodyParameter(std::string("EndUserId"), endUserId);
+}
+
+std::vector<GetConnectionTicketRequest::FileInfos> GetConnectionTicketRequest::getFileInfos() const {
+  return fileInfos_;
+}
+
+void GetConnectionTicketRequest::setFileInfos(const std::vector<GetConnectionTicketRequest::FileInfos> &fileInfos) {
+  fileInfos_ = fileInfos;
+  for(int dep1 = 0; dep1 != fileInfos.size(); dep1++) {
+  auto fileInfosObj = fileInfos.at(dep1);
+  std::string fileInfosObjStr = std::string("FileInfos") + "." + std::to_string(dep1 + 1);
+    setBodyParameter(fileInfosObjStr + ".FileRegion", fileInfosObj.fileRegion);
+    setBodyParameter(fileInfosObjStr + ".DriveId", fileInfosObj.driveId);
+    setBodyParameter(fileInfosObjStr + ".FileName", fileInfosObj.fileName);
+    setBodyParameter(fileInfosObjStr + ".FilePath", fileInfosObj.filePath);
+    setBodyParameter(fileInfosObjStr + ".DriveType", fileInfosObj.driveType);
+    setBodyParameter(fileInfosObjStr + ".FileId", fileInfosObj.fileId);
+  }
+}
+
+std::string GetConnectionTicketRequest::getTaskId() const {
+  return taskId_;
+}
+
+void GetConnectionTicketRequest::setTaskId(const std::string &taskId) {
+  taskId_ = taskId;
+  setBodyParameter(std::string("TaskId"), taskId);
+}
+
+std::string GetConnectionTicketRequest::getAppVersion() const {
+  return appVersion_;
+}
+
+void GetConnectionTicketRequest::setAppVersion(const std::string &appVersion) {
+  appVersion_ = appVersion;
+  setBodyParameter(std::string("AppVersion"), appVersion);
+}
+
+std::vector<std::string> GetConnectionTicketRequest::getAppInstanceGroupIdList() const {
+  return appInstanceGroupIdList_;
+}
+
+void GetConnectionTicketRequest::setAppInstanceGroupIdList(const std::vector<std::string> &appInstanceGroupIdList) {
+  appInstanceGroupIdList_ = appInstanceGroupIdList;
+}
+
+std::string GetConnectionTicketRequest::getAppId() const {
+  return appId_;
+}
+
+void GetConnectionTicketRequest::setAppId(const std::string &appId) {
+  appId_ = appId;
+  setBodyParameter(std::string("AppId"), appId);
+}
+
+std::string GetConnectionTicketRequest::getAppInstanceId() const {
+  return appInstanceId_;
+}
+
+void GetConnectionTicketRequest::setAppInstanceId(const std::string &appInstanceId) {
+  appInstanceId_ = appInstanceId;
+  setBodyParameter(std::string("AppInstanceId"), appInstanceId);
+}
+

+ 93 - 0
appstream-center/src/model/GetConnectionTicketResult.cc

@@ -0,0 +1,93 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/appstream-center/model/GetConnectionTicketResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Appstream_center;
+using namespace AlibabaCloud::Appstream_center::Model;
+
+GetConnectionTicketResult::GetConnectionTicketResult() :
+	ServiceResult()
+{}
+
+GetConnectionTicketResult::GetConnectionTicketResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+GetConnectionTicketResult::~GetConnectionTicketResult()
+{}
+
+void GetConnectionTicketResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	if(!value["TaskStatus"].isNull())
+		taskStatus_ = value["TaskStatus"].asString();
+	if(!value["TaskId"].isNull())
+		taskId_ = value["TaskId"].asString();
+	if(!value["BizRegionId"].isNull())
+		bizRegionId_ = value["BizRegionId"].asString();
+	if(!value["Ticket"].isNull())
+		ticket_ = value["Ticket"].asString();
+	if(!value["AppInstanceGroupId"].isNull())
+		appInstanceGroupId_ = value["AppInstanceGroupId"].asString();
+	if(!value["AppInstanceId"].isNull())
+		appInstanceId_ = value["AppInstanceId"].asString();
+	if(!value["OsType"].isNull())
+		osType_ = value["OsType"].asString();
+
+}
+
+std::string GetConnectionTicketResult::getTicket()const
+{
+	return ticket_;
+}
+
+std::string GetConnectionTicketResult::getAppInstanceId()const
+{
+	return appInstanceId_;
+}
+
+std::string GetConnectionTicketResult::getTaskId()const
+{
+	return taskId_;
+}
+
+std::string GetConnectionTicketResult::getBizRegionId()const
+{
+	return bizRegionId_;
+}
+
+std::string GetConnectionTicketResult::getOsType()const
+{
+	return osType_;
+}
+
+std::string GetConnectionTicketResult::getAppInstanceGroupId()const
+{
+	return appInstanceGroupId_;
+}
+
+std::string GetConnectionTicketResult::getTaskStatus()const
+{
+	return taskStatus_;
+}
+

+ 36 - 0
appstream-center/src/model/GetOtaTaskByTaskIdRequest.cc

@@ -0,0 +1,36 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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/appstream-center/model/GetOtaTaskByTaskIdRequest.h>
+
+using AlibabaCloud::Appstream_center::Model::GetOtaTaskByTaskIdRequest;
+
+GetOtaTaskByTaskIdRequest::GetOtaTaskByTaskIdRequest()
+    : RpcServiceRequest("appstream-center", "2021-09-01", "GetOtaTaskByTaskId") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+GetOtaTaskByTaskIdRequest::~GetOtaTaskByTaskIdRequest() {}
+
+std::string GetOtaTaskByTaskIdRequest::getTaskId() const {
+  return taskId_;
+}
+
+void GetOtaTaskByTaskIdRequest::setTaskId(const std::string &taskId) {
+  taskId_ = taskId;
+  setBodyParameter(std::string("TaskId"), taskId);
+}
+

+ 79 - 0
appstream-center/src/model/GetOtaTaskByTaskIdResult.cc

@@ -0,0 +1,79 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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/appstream-center/model/GetOtaTaskByTaskIdResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Appstream_center;
+using namespace AlibabaCloud::Appstream_center::Model;
+
+GetOtaTaskByTaskIdResult::GetOtaTaskByTaskIdResult() :
+	ServiceResult()
+{}
+
+GetOtaTaskByTaskIdResult::GetOtaTaskByTaskIdResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+GetOtaTaskByTaskIdResult::~GetOtaTaskByTaskIdResult()
+{}
+
+void GetOtaTaskByTaskIdResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	if(!value["Code"].isNull())
+		code_ = value["Code"].asString();
+	if(!value["Message"].isNull())
+		message_ = value["Message"].asString();
+	if(!value["ReleaseNote"].isNull())
+		releaseNote_ = value["ReleaseNote"].asString();
+	if(!value["OtaVersion"].isNull())
+		otaVersion_ = value["OtaVersion"].asString();
+	if(!value["TaskStartTime"].isNull())
+		taskStartTime_ = value["TaskStartTime"].asString();
+
+}
+
+std::string GetOtaTaskByTaskIdResult::getMessage()const
+{
+	return message_;
+}
+
+std::string GetOtaTaskByTaskIdResult::getReleaseNote()const
+{
+	return releaseNote_;
+}
+
+std::string GetOtaTaskByTaskIdResult::getOtaVersion()const
+{
+	return otaVersion_;
+}
+
+std::string GetOtaTaskByTaskIdResult::getCode()const
+{
+	return code_;
+}
+
+std::string GetOtaTaskByTaskIdResult::getTaskStartTime()const
+{
+	return taskStartTime_;
+}
+

+ 90 - 0
appstream-center/src/model/GetResourcePriceRequest.cc

@@ -0,0 +1,90 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/appstream-center/model/GetResourcePriceRequest.h>
+
+using AlibabaCloud::Appstream_center::Model::GetResourcePriceRequest;
+
+GetResourcePriceRequest::GetResourcePriceRequest()
+    : RpcServiceRequest("appstream-center", "2021-09-01", "GetResourcePrice") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+GetResourcePriceRequest::~GetResourcePriceRequest() {}
+
+std::string GetResourcePriceRequest::getBizRegionId() const {
+  return bizRegionId_;
+}
+
+void GetResourcePriceRequest::setBizRegionId(const std::string &bizRegionId) {
+  bizRegionId_ = bizRegionId;
+  setParameter(std::string("BizRegionId"), bizRegionId);
+}
+
+long GetResourcePriceRequest::getPeriod() const {
+  return period_;
+}
+
+void GetResourcePriceRequest::setPeriod(long period) {
+  period_ = period;
+  setParameter(std::string("Period"), std::to_string(period));
+}
+
+long GetResourcePriceRequest::getAmount() const {
+  return amount_;
+}
+
+void GetResourcePriceRequest::setAmount(long amount) {
+  amount_ = amount;
+  setParameter(std::string("Amount"), std::to_string(amount));
+}
+
+std::string GetResourcePriceRequest::getNodeInstanceType() const {
+  return nodeInstanceType_;
+}
+
+void GetResourcePriceRequest::setNodeInstanceType(const std::string &nodeInstanceType) {
+  nodeInstanceType_ = nodeInstanceType;
+  setParameter(std::string("NodeInstanceType"), nodeInstanceType);
+}
+
+std::string GetResourcePriceRequest::getProductType() const {
+  return productType_;
+}
+
+void GetResourcePriceRequest::setProductType(const std::string &productType) {
+  productType_ = productType;
+  setParameter(std::string("ProductType"), productType);
+}
+
+std::string GetResourcePriceRequest::getPeriodUnit() const {
+  return periodUnit_;
+}
+
+void GetResourcePriceRequest::setPeriodUnit(const std::string &periodUnit) {
+  periodUnit_ = periodUnit;
+  setParameter(std::string("PeriodUnit"), periodUnit);
+}
+
+std::string GetResourcePriceRequest::getChargeType() const {
+  return chargeType_;
+}
+
+void GetResourcePriceRequest::setChargeType(const std::string &chargeType) {
+  chargeType_ = chargeType;
+  setParameter(std::string("ChargeType"), chargeType);
+}
+

+ 99 - 0
appstream-center/src/model/GetResourcePriceResult.cc

@@ -0,0 +1,99 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/appstream-center/model/GetResourcePriceResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Appstream_center;
+using namespace AlibabaCloud::Appstream_center::Model;
+
+GetResourcePriceResult::GetResourcePriceResult() :
+	ServiceResult()
+{}
+
+GetResourcePriceResult::GetResourcePriceResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+GetResourcePriceResult::~GetResourcePriceResult()
+{}
+
+void GetResourcePriceResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto priceModelNode = value["PriceModel"];
+	auto allRulesNode = priceModelNode["Rules"]["Rule"];
+	for (auto priceModelNodeRulesRule : allRulesNode)
+	{
+		PriceModel::Rule ruleObject;
+		if(!priceModelNodeRulesRule["RuleId"].isNull())
+			ruleObject.ruleId = std::stol(priceModelNodeRulesRule["RuleId"].asString());
+		if(!priceModelNodeRulesRule["Description"].isNull())
+			ruleObject.description = priceModelNodeRulesRule["Description"].asString();
+		priceModel_.rules.push_back(ruleObject);
+	}
+	auto priceNode = priceModelNode["Price"];
+	if(!priceNode["OriginalPrice"].isNull())
+		priceModel_.price.originalPrice = priceNode["OriginalPrice"].asString();
+	if(!priceNode["DiscountPrice"].isNull())
+		priceModel_.price.discountPrice = priceNode["DiscountPrice"].asString();
+	if(!priceNode["TradePrice"].isNull())
+		priceModel_.price.tradePrice = priceNode["TradePrice"].asString();
+	if(!priceNode["Currency"].isNull())
+		priceModel_.price.currency = priceNode["Currency"].asString();
+	auto allPromotionsNode = priceNode["Promotions"]["Promotion"];
+	for (auto priceNodePromotionsPromotion : allPromotionsNode)
+	{
+		PriceModel::Price::Promotion promotionObject;
+		if(!priceNodePromotionsPromotion["OptionCode"].isNull())
+			promotionObject.optionCode = priceNodePromotionsPromotion["OptionCode"].asString();
+		if(!priceNodePromotionsPromotion["PromotionId"].isNull())
+			promotionObject.promotionId = priceNodePromotionsPromotion["PromotionId"].asString();
+		if(!priceNodePromotionsPromotion["PromotionName"].isNull())
+			promotionObject.promotionName = priceNodePromotionsPromotion["PromotionName"].asString();
+		if(!priceNodePromotionsPromotion["PromotionDesc"].isNull())
+			promotionObject.promotionDesc = priceNodePromotionsPromotion["PromotionDesc"].asString();
+		if(!priceNodePromotionsPromotion["Selected"].isNull())
+			promotionObject.selected = priceNodePromotionsPromotion["Selected"].asString() == "true";
+		priceModel_.price.promotions.push_back(promotionObject);
+	}
+	if(!value["Code"].isNull())
+		code_ = value["Code"].asString();
+	if(!value["Message"].isNull())
+		message_ = value["Message"].asString();
+
+}
+
+std::string GetResourcePriceResult::getMessage()const
+{
+	return message_;
+}
+
+GetResourcePriceResult::PriceModel GetResourcePriceResult::getPriceModel()const
+{
+	return priceModel_;
+}
+
+std::string GetResourcePriceResult::getCode()const
+{
+	return code_;
+}
+

+ 63 - 0
appstream-center/src/model/GetResourceRenewPriceRequest.cc

@@ -0,0 +1,63 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/appstream-center/model/GetResourceRenewPriceRequest.h>
+
+using AlibabaCloud::Appstream_center::Model::GetResourceRenewPriceRequest;
+
+GetResourceRenewPriceRequest::GetResourceRenewPriceRequest()
+    : RpcServiceRequest("appstream-center", "2021-09-01", "GetResourceRenewPrice") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+GetResourceRenewPriceRequest::~GetResourceRenewPriceRequest() {}
+
+long GetResourceRenewPriceRequest::getPeriod() const {
+  return period_;
+}
+
+void GetResourceRenewPriceRequest::setPeriod(long period) {
+  period_ = period;
+  setParameter(std::string("Period"), std::to_string(period));
+}
+
+std::string GetResourceRenewPriceRequest::getProductType() const {
+  return productType_;
+}
+
+void GetResourceRenewPriceRequest::setProductType(const std::string &productType) {
+  productType_ = productType;
+  setParameter(std::string("ProductType"), productType);
+}
+
+std::string GetResourceRenewPriceRequest::getPeriodUnit() const {
+  return periodUnit_;
+}
+
+void GetResourceRenewPriceRequest::setPeriodUnit(const std::string &periodUnit) {
+  periodUnit_ = periodUnit;
+  setParameter(std::string("PeriodUnit"), periodUnit);
+}
+
+std::string GetResourceRenewPriceRequest::getAppInstanceGroupId() const {
+  return appInstanceGroupId_;
+}
+
+void GetResourceRenewPriceRequest::setAppInstanceGroupId(const std::string &appInstanceGroupId) {
+  appInstanceGroupId_ = appInstanceGroupId;
+  setParameter(std::string("AppInstanceGroupId"), appInstanceGroupId);
+}
+

+ 85 - 0
appstream-center/src/model/GetResourceRenewPriceResult.cc

@@ -0,0 +1,85 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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/appstream-center/model/GetResourceRenewPriceResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Appstream_center;
+using namespace AlibabaCloud::Appstream_center::Model;
+
+GetResourceRenewPriceResult::GetResourceRenewPriceResult() :
+	ServiceResult()
+{}
+
+GetResourceRenewPriceResult::GetResourceRenewPriceResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+GetResourceRenewPriceResult::~GetResourceRenewPriceResult()
+{}
+
+void GetResourceRenewPriceResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto dataNode = value["Data"];
+	auto allRulesNode = dataNode["Rules"]["Rule"];
+	for (auto dataNodeRulesRule : allRulesNode)
+	{
+		Data::Rule ruleObject;
+		if(!dataNodeRulesRule["RuleId"].isNull())
+			ruleObject.ruleId = std::stol(dataNodeRulesRule["RuleId"].asString());
+		if(!dataNodeRulesRule["Description"].isNull())
+			ruleObject.description = dataNodeRulesRule["Description"].asString();
+		data_.rules.push_back(ruleObject);
+	}
+	auto priceNode = dataNode["Price"];
+	if(!priceNode["OriginalPrice"].isNull())
+		data_.price.originalPrice = priceNode["OriginalPrice"].asString();
+	if(!priceNode["DiscountPrice"].isNull())
+		data_.price.discountPrice = priceNode["DiscountPrice"].asString();
+	if(!priceNode["TradePrice"].isNull())
+		data_.price.tradePrice = priceNode["TradePrice"].asString();
+	if(!priceNode["Currency"].isNull())
+		data_.price.currency = priceNode["Currency"].asString();
+	auto allPromotionsNode = priceNode["Promotions"]["Promotion"];
+	for (auto priceNodePromotionsPromotion : allPromotionsNode)
+	{
+		Data::Price::Promotion promotionObject;
+		if(!priceNodePromotionsPromotion["OptionCode"].isNull())
+			promotionObject.optionCode = priceNodePromotionsPromotion["OptionCode"].asString();
+		if(!priceNodePromotionsPromotion["PromotionId"].isNull())
+			promotionObject.promotionId = priceNodePromotionsPromotion["PromotionId"].asString();
+		if(!priceNodePromotionsPromotion["PromotionName"].isNull())
+			promotionObject.promotionName = priceNodePromotionsPromotion["PromotionName"].asString();
+		if(!priceNodePromotionsPromotion["PromotionDesc"].isNull())
+			promotionObject.promotionDesc = priceNodePromotionsPromotion["PromotionDesc"].asString();
+		if(!priceNodePromotionsPromotion["Selected"].isNull())
+			promotionObject.selected = priceNodePromotionsPromotion["Selected"].asString() == "true";
+		data_.price.promotions.push_back(promotionObject);
+	}
+
+}
+
+GetResourceRenewPriceResult::Data GetResourceRenewPriceResult::getData()const
+{
+	return data_;
+}
+

+ 116 - 0
appstream-center/src/model/ListAppInstanceGroupRequest.cc

@@ -0,0 +1,116 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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/appstream-center/model/ListAppInstanceGroupRequest.h>
+
+using AlibabaCloud::Appstream_center::Model::ListAppInstanceGroupRequest;
+
+ListAppInstanceGroupRequest::ListAppInstanceGroupRequest()
+    : RpcServiceRequest("appstream-center", "2021-09-01", "ListAppInstanceGroup") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+ListAppInstanceGroupRequest::~ListAppInstanceGroupRequest() {}
+
+std::string ListAppInstanceGroupRequest::getBizRegionId() const {
+  return bizRegionId_;
+}
+
+void ListAppInstanceGroupRequest::setBizRegionId(const std::string &bizRegionId) {
+  bizRegionId_ = bizRegionId;
+  setParameter(std::string("BizRegionId"), bizRegionId);
+}
+
+int ListAppInstanceGroupRequest::getPageNumber() const {
+  return pageNumber_;
+}
+
+void ListAppInstanceGroupRequest::setPageNumber(int pageNumber) {
+  pageNumber_ = pageNumber;
+  setParameter(std::string("PageNumber"), std::to_string(pageNumber));
+}
+
+std::string ListAppInstanceGroupRequest::getProductType() const {
+  return productType_;
+}
+
+void ListAppInstanceGroupRequest::setProductType(const std::string &productType) {
+  productType_ = productType;
+  setParameter(std::string("ProductType"), productType);
+}
+
+std::string ListAppInstanceGroupRequest::getAppCenterImageId() const {
+  return appCenterImageId_;
+}
+
+void ListAppInstanceGroupRequest::setAppCenterImageId(const std::string &appCenterImageId) {
+  appCenterImageId_ = appCenterImageId;
+  setParameter(std::string("AppCenterImageId"), appCenterImageId);
+}
+
+std::string ListAppInstanceGroupRequest::getRegionId() const {
+  return regionId_;
+}
+
+void ListAppInstanceGroupRequest::setRegionId(const std::string &regionId) {
+  regionId_ = regionId;
+  setParameter(std::string("RegionId"), regionId);
+}
+
+int ListAppInstanceGroupRequest::getPageSize() const {
+  return pageSize_;
+}
+
+void ListAppInstanceGroupRequest::setPageSize(int pageSize) {
+  pageSize_ = pageSize;
+  setParameter(std::string("PageSize"), std::to_string(pageSize));
+}
+
+std::string ListAppInstanceGroupRequest::getNodeInstanceType() const {
+  return nodeInstanceType_;
+}
+
+void ListAppInstanceGroupRequest::setNodeInstanceType(const std::string &nodeInstanceType) {
+  nodeInstanceType_ = nodeInstanceType;
+  setParameter(std::string("NodeInstanceType"), nodeInstanceType);
+}
+
+std::string ListAppInstanceGroupRequest::getAppInstanceGroupName() const {
+  return appInstanceGroupName_;
+}
+
+void ListAppInstanceGroupRequest::setAppInstanceGroupName(const std::string &appInstanceGroupName) {
+  appInstanceGroupName_ = appInstanceGroupName;
+  setParameter(std::string("AppInstanceGroupName"), appInstanceGroupName);
+}
+
+std::string ListAppInstanceGroupRequest::getAppInstanceGroupId() const {
+  return appInstanceGroupId_;
+}
+
+void ListAppInstanceGroupRequest::setAppInstanceGroupId(const std::string &appInstanceGroupId) {
+  appInstanceGroupId_ = appInstanceGroupId;
+  setParameter(std::string("AppInstanceGroupId"), appInstanceGroupId);
+}
+
+std::vector<std::string> ListAppInstanceGroupRequest::getStatus() const {
+  return status_;
+}
+
+void ListAppInstanceGroupRequest::setStatus(const std::vector<std::string> &status) {
+  status_ = status;
+}
+

+ 208 - 0
appstream-center/src/model/ListAppInstanceGroupResult.cc

@@ -0,0 +1,208 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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/appstream-center/model/ListAppInstanceGroupResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Appstream_center;
+using namespace AlibabaCloud::Appstream_center::Model;
+
+ListAppInstanceGroupResult::ListAppInstanceGroupResult() :
+	ServiceResult()
+{}
+
+ListAppInstanceGroupResult::ListAppInstanceGroupResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+ListAppInstanceGroupResult::~ListAppInstanceGroupResult()
+{}
+
+void ListAppInstanceGroupResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allAppInstanceGroupModelsNode = value["AppInstanceGroupModels"]["data"];
+	for (auto valueAppInstanceGroupModelsdata : allAppInstanceGroupModelsNode)
+	{
+		Data appInstanceGroupModelsObject;
+		if(!valueAppInstanceGroupModelsdata["AppCenterImageId"].isNull())
+			appInstanceGroupModelsObject.appCenterImageId = valueAppInstanceGroupModelsdata["AppCenterImageId"].asString();
+		if(!valueAppInstanceGroupModelsdata["AliyunImageId"].isNull())
+			appInstanceGroupModelsObject.aliyunImageId = valueAppInstanceGroupModelsdata["AliyunImageId"].asString();
+		if(!valueAppInstanceGroupModelsdata["RegionId"].isNull())
+			appInstanceGroupModelsObject.regionId = valueAppInstanceGroupModelsdata["RegionId"].asString();
+		if(!valueAppInstanceGroupModelsdata["ProductType"].isNull())
+			appInstanceGroupModelsObject.productType = valueAppInstanceGroupModelsdata["ProductType"].asString();
+		if(!valueAppInstanceGroupModelsdata["AppInstanceType"].isNull())
+			appInstanceGroupModelsObject.appInstanceType = valueAppInstanceGroupModelsdata["AppInstanceType"].asString();
+		if(!valueAppInstanceGroupModelsdata["AppInstanceGroupId"].isNull())
+			appInstanceGroupModelsObject.appInstanceGroupId = valueAppInstanceGroupModelsdata["AppInstanceGroupId"].asString();
+		if(!valueAppInstanceGroupModelsdata["Cpu"].isNull())
+			appInstanceGroupModelsObject.cpu = valueAppInstanceGroupModelsdata["Cpu"].asString();
+		if(!valueAppInstanceGroupModelsdata["Gpu"].isNull())
+			appInstanceGroupModelsObject.gpu = valueAppInstanceGroupModelsdata["Gpu"].asString();
+		if(!valueAppInstanceGroupModelsdata["Memory"].isNull())
+			appInstanceGroupModelsObject.memory = std::stol(valueAppInstanceGroupModelsdata["Memory"].asString());
+		if(!valueAppInstanceGroupModelsdata["Amount"].isNull())
+			appInstanceGroupModelsObject.amount = std::stoi(valueAppInstanceGroupModelsdata["Amount"].asString());
+		if(!valueAppInstanceGroupModelsdata["MinAmount"].isNull())
+			appInstanceGroupModelsObject.minAmount = std::stoi(valueAppInstanceGroupModelsdata["MinAmount"].asString());
+		if(!valueAppInstanceGroupModelsdata["MaxAmount"].isNull())
+			appInstanceGroupModelsObject.maxAmount = std::stoi(valueAppInstanceGroupModelsdata["MaxAmount"].asString());
+		if(!valueAppInstanceGroupModelsdata["ChargeType"].isNull())
+			appInstanceGroupModelsObject.chargeType = valueAppInstanceGroupModelsdata["ChargeType"].asString();
+		if(!valueAppInstanceGroupModelsdata["GmtCreate"].isNull())
+			appInstanceGroupModelsObject.gmtCreate = valueAppInstanceGroupModelsdata["GmtCreate"].asString();
+		if(!valueAppInstanceGroupModelsdata["Status"].isNull())
+			appInstanceGroupModelsObject.status = valueAppInstanceGroupModelsdata["Status"].asString();
+		if(!valueAppInstanceGroupModelsdata["SpecId"].isNull())
+			appInstanceGroupModelsObject.specId = valueAppInstanceGroupModelsdata["SpecId"].asString();
+		if(!valueAppInstanceGroupModelsdata["SessionTimeout"].isNull())
+			appInstanceGroupModelsObject.sessionTimeout = valueAppInstanceGroupModelsdata["SessionTimeout"].asString();
+		if(!valueAppInstanceGroupModelsdata["AppInstanceGroupName"].isNull())
+			appInstanceGroupModelsObject.appInstanceGroupName = valueAppInstanceGroupModelsdata["AppInstanceGroupName"].asString();
+		if(!valueAppInstanceGroupModelsdata["ExpiredTime"].isNull())
+			appInstanceGroupModelsObject.expiredTime = valueAppInstanceGroupModelsdata["ExpiredTime"].asString();
+		if(!valueAppInstanceGroupModelsdata["OsType"].isNull())
+			appInstanceGroupModelsObject.osType = valueAppInstanceGroupModelsdata["OsType"].asString();
+		if(!valueAppInstanceGroupModelsdata["ResourceStatus"].isNull())
+			appInstanceGroupModelsObject.resourceStatus = valueAppInstanceGroupModelsdata["ResourceStatus"].asString();
+		if(!valueAppInstanceGroupModelsdata["AppPolicyId"].isNull())
+			appInstanceGroupModelsObject.appPolicyId = valueAppInstanceGroupModelsdata["AppPolicyId"].asString();
+		if(!valueAppInstanceGroupModelsdata["ChargeResourceMode"].isNull())
+			appInstanceGroupModelsObject.chargeResourceMode = valueAppInstanceGroupModelsdata["ChargeResourceMode"].asString();
+		auto allAppsNode = valueAppInstanceGroupModelsdata["Apps"]["appsItem"];
+		for (auto valueAppInstanceGroupModelsdataAppsappsItem : allAppsNode)
+		{
+			Data::AppsItem appsObject;
+			if(!valueAppInstanceGroupModelsdataAppsappsItem["AppId"].isNull())
+				appsObject.appId = valueAppInstanceGroupModelsdataAppsappsItem["AppId"].asString();
+			if(!valueAppInstanceGroupModelsdataAppsappsItem["AppName"].isNull())
+				appsObject.appName = valueAppInstanceGroupModelsdataAppsappsItem["AppName"].asString();
+			if(!valueAppInstanceGroupModelsdataAppsappsItem["AppVersion"].isNull())
+				appsObject.appVersion = valueAppInstanceGroupModelsdataAppsappsItem["AppVersion"].asString();
+			if(!valueAppInstanceGroupModelsdataAppsappsItem["AppVersionName"].isNull())
+				appsObject.appVersionName = valueAppInstanceGroupModelsdataAppsappsItem["AppVersionName"].asString();
+			if(!valueAppInstanceGroupModelsdataAppsappsItem["AppIcon"].isNull())
+				appsObject.appIcon = valueAppInstanceGroupModelsdataAppsappsItem["AppIcon"].asString();
+			appInstanceGroupModelsObject.apps.push_back(appsObject);
+		}
+		auto allNodePoolNode = valueAppInstanceGroupModelsdata["NodePool"]["node"];
+		for (auto valueAppInstanceGroupModelsdataNodePoolnode : allNodePoolNode)
+		{
+			Data::Node nodePoolObject;
+			if(!valueAppInstanceGroupModelsdataNodePoolnode["NodePoolId"].isNull())
+				nodePoolObject.nodePoolId = valueAppInstanceGroupModelsdataNodePoolnode["NodePoolId"].asString();
+			if(!valueAppInstanceGroupModelsdataNodePoolnode["NodeInstanceType"].isNull())
+				nodePoolObject.nodeInstanceType = valueAppInstanceGroupModelsdataNodePoolnode["NodeInstanceType"].asString();
+			if(!valueAppInstanceGroupModelsdataNodePoolnode["NodeAmount"].isNull())
+				nodePoolObject.nodeAmount = std::stoi(valueAppInstanceGroupModelsdataNodePoolnode["NodeAmount"].asString());
+			if(!valueAppInstanceGroupModelsdataNodePoolnode["NodeUsed"].isNull())
+				nodePoolObject.nodeUsed = std::stoi(valueAppInstanceGroupModelsdataNodePoolnode["NodeUsed"].asString());
+			if(!valueAppInstanceGroupModelsdataNodePoolnode["NodeCapacity"].isNull())
+				nodePoolObject.nodeCapacity = std::stoi(valueAppInstanceGroupModelsdataNodePoolnode["NodeCapacity"].asString());
+			if(!valueAppInstanceGroupModelsdataNodePoolnode["ScalingNodeAmount"].isNull())
+				nodePoolObject.scalingNodeAmount = std::stoi(valueAppInstanceGroupModelsdataNodePoolnode["ScalingNodeAmount"].asString());
+			if(!valueAppInstanceGroupModelsdataNodePoolnode["ScalingNodeUsed"].isNull())
+				nodePoolObject.scalingNodeUsed = std::stoi(valueAppInstanceGroupModelsdataNodePoolnode["ScalingNodeUsed"].asString());
+			if(!valueAppInstanceGroupModelsdataNodePoolnode["StrategyType"].isNull())
+				nodePoolObject.strategyType = valueAppInstanceGroupModelsdataNodePoolnode["StrategyType"].asString();
+			if(!valueAppInstanceGroupModelsdataNodePoolnode["Amount"].isNull())
+				nodePoolObject.amount = std::stoi(valueAppInstanceGroupModelsdataNodePoolnode["Amount"].asString());
+			if(!valueAppInstanceGroupModelsdataNodePoolnode["MaxScalingAmount"].isNull())
+				nodePoolObject.maxScalingAmount = std::stoi(valueAppInstanceGroupModelsdataNodePoolnode["MaxScalingAmount"].asString());
+			if(!valueAppInstanceGroupModelsdataNodePoolnode["ScalingStep"].isNull())
+				nodePoolObject.scalingStep = std::stoi(valueAppInstanceGroupModelsdataNodePoolnode["ScalingStep"].asString());
+			if(!valueAppInstanceGroupModelsdataNodePoolnode["ScalingUsageThreshold"].isNull())
+				nodePoolObject.scalingUsageThreshold = valueAppInstanceGroupModelsdataNodePoolnode["ScalingUsageThreshold"].asString();
+			if(!valueAppInstanceGroupModelsdataNodePoolnode["ScalingDownAfterIdleMinutes"].isNull())
+				nodePoolObject.scalingDownAfterIdleMinutes = std::stoi(valueAppInstanceGroupModelsdataNodePoolnode["ScalingDownAfterIdleMinutes"].asString());
+			if(!valueAppInstanceGroupModelsdataNodePoolnode["StrategyDisableDate"].isNull())
+				nodePoolObject.strategyDisableDate = valueAppInstanceGroupModelsdataNodePoolnode["StrategyDisableDate"].asString();
+			if(!valueAppInstanceGroupModelsdataNodePoolnode["StrategyEnableDate"].isNull())
+				nodePoolObject.strategyEnableDate = valueAppInstanceGroupModelsdataNodePoolnode["StrategyEnableDate"].asString();
+			if(!valueAppInstanceGroupModelsdataNodePoolnode["WarmUp"].isNull())
+				nodePoolObject.warmUp = valueAppInstanceGroupModelsdataNodePoolnode["WarmUp"].asString() == "true";
+			if(!valueAppInstanceGroupModelsdataNodePoolnode["NodeTypeName"].isNull())
+				nodePoolObject.nodeTypeName = valueAppInstanceGroupModelsdataNodePoolnode["NodeTypeName"].asString();
+			auto allRecurrenceSchedulesNode = valueAppInstanceGroupModelsdataNodePoolnode["RecurrenceSchedules"]["RecurrenceSchedule"];
+			for (auto valueAppInstanceGroupModelsdataNodePoolnodeRecurrenceSchedulesRecurrenceSchedule : allRecurrenceSchedulesNode)
+			{
+				Data::Node::RecurrenceSchedule recurrenceSchedulesObject;
+				if(!valueAppInstanceGroupModelsdataNodePoolnodeRecurrenceSchedulesRecurrenceSchedule["RecurrenceType"].isNull())
+					recurrenceSchedulesObject.recurrenceType = valueAppInstanceGroupModelsdataNodePoolnodeRecurrenceSchedulesRecurrenceSchedule["RecurrenceType"].asString();
+				auto allTimerPeriodsNode = valueAppInstanceGroupModelsdataNodePoolnodeRecurrenceSchedulesRecurrenceSchedule["TimerPeriods"]["TimerPeriod"];
+				for (auto valueAppInstanceGroupModelsdataNodePoolnodeRecurrenceSchedulesRecurrenceScheduleTimerPeriodsTimerPeriod : allTimerPeriodsNode)
+				{
+					Data::Node::RecurrenceSchedule::TimerPeriod timerPeriodsObject;
+					if(!valueAppInstanceGroupModelsdataNodePoolnodeRecurrenceSchedulesRecurrenceScheduleTimerPeriodsTimerPeriod["Amount"].isNull())
+						timerPeriodsObject.amount = std::stoi(valueAppInstanceGroupModelsdataNodePoolnodeRecurrenceSchedulesRecurrenceScheduleTimerPeriodsTimerPeriod["Amount"].asString());
+					if(!valueAppInstanceGroupModelsdataNodePoolnodeRecurrenceSchedulesRecurrenceScheduleTimerPeriodsTimerPeriod["EndTime"].isNull())
+						timerPeriodsObject.endTime = valueAppInstanceGroupModelsdataNodePoolnodeRecurrenceSchedulesRecurrenceScheduleTimerPeriodsTimerPeriod["EndTime"].asString();
+					if(!valueAppInstanceGroupModelsdataNodePoolnodeRecurrenceSchedulesRecurrenceScheduleTimerPeriodsTimerPeriod["StartTime"].isNull())
+						timerPeriodsObject.startTime = valueAppInstanceGroupModelsdataNodePoolnodeRecurrenceSchedulesRecurrenceScheduleTimerPeriodsTimerPeriod["StartTime"].asString();
+					recurrenceSchedulesObject.timerPeriods.push_back(timerPeriodsObject);
+				}
+				auto allRecurrenceValues = value["RecurrenceValues"]["RecurrenceValue"];
+				for (auto value : allRecurrenceValues)
+					recurrenceSchedulesObject.recurrenceValues.push_back(value.asString());
+				nodePoolObject.recurrenceSchedules.push_back(recurrenceSchedulesObject);
+			}
+			appInstanceGroupModelsObject.nodePool.push_back(nodePoolObject);
+		}
+		auto otaInfoNode = value["OtaInfo"];
+		if(!otaInfoNode["OtaVersion"].isNull())
+			appInstanceGroupModelsObject.otaInfo.otaVersion = otaInfoNode["OtaVersion"].asString();
+		if(!otaInfoNode["NewOtaVersion"].isNull())
+			appInstanceGroupModelsObject.otaInfo.newOtaVersion = otaInfoNode["NewOtaVersion"].asString();
+		if(!otaInfoNode["TaskId"].isNull())
+			appInstanceGroupModelsObject.otaInfo.taskId = otaInfoNode["TaskId"].asString();
+		appInstanceGroupModels_.push_back(appInstanceGroupModelsObject);
+	}
+	if(!value["TotalCount"].isNull())
+		totalCount_ = std::stoi(value["TotalCount"].asString());
+	if(!value["PageSize"].isNull())
+		pageSize_ = std::stoi(value["PageSize"].asString());
+	if(!value["PageNumber"].isNull())
+		pageNumber_ = std::stoi(value["PageNumber"].asString());
+
+}
+
+int ListAppInstanceGroupResult::getTotalCount()const
+{
+	return totalCount_;
+}
+
+int ListAppInstanceGroupResult::getPageSize()const
+{
+	return pageSize_;
+}
+
+int ListAppInstanceGroupResult::getPageNumber()const
+{
+	return pageNumber_;
+}
+
+std::vector<ListAppInstanceGroupResult::Data> ListAppInstanceGroupResult::getAppInstanceGroupModels()const
+{
+	return appInstanceGroupModels_;
+}
+

+ 71 - 0
appstream-center/src/model/ListAppInstancesRequest.cc

@@ -0,0 +1,71 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/appstream-center/model/ListAppInstancesRequest.h>
+
+using AlibabaCloud::Appstream_center::Model::ListAppInstancesRequest;
+
+ListAppInstancesRequest::ListAppInstancesRequest()
+    : RpcServiceRequest("appstream-center", "2021-09-01", "ListAppInstances") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+ListAppInstancesRequest::~ListAppInstancesRequest() {}
+
+int ListAppInstancesRequest::getPageNumber() const {
+  return pageNumber_;
+}
+
+void ListAppInstancesRequest::setPageNumber(int pageNumber) {
+  pageNumber_ = pageNumber;
+  setParameter(std::string("PageNumber"), std::to_string(pageNumber));
+}
+
+std::string ListAppInstancesRequest::getAppInstanceGroupId() const {
+  return appInstanceGroupId_;
+}
+
+void ListAppInstancesRequest::setAppInstanceGroupId(const std::string &appInstanceGroupId) {
+  appInstanceGroupId_ = appInstanceGroupId;
+  setParameter(std::string("AppInstanceGroupId"), appInstanceGroupId);
+}
+
+int ListAppInstancesRequest::getPageSize() const {
+  return pageSize_;
+}
+
+void ListAppInstancesRequest::setPageSize(int pageSize) {
+  pageSize_ = pageSize;
+  setParameter(std::string("PageSize"), std::to_string(pageSize));
+}
+
+std::string ListAppInstancesRequest::getAppInstanceId() const {
+  return appInstanceId_;
+}
+
+void ListAppInstancesRequest::setAppInstanceId(const std::string &appInstanceId) {
+  appInstanceId_ = appInstanceId;
+  setParameter(std::string("AppInstanceId"), appInstanceId);
+}
+
+std::vector<std::string> ListAppInstancesRequest::getStatus() const {
+  return status_;
+}
+
+void ListAppInstancesRequest::setStatus(const std::vector<std::string> &status) {
+  status_ = status;
+}
+

+ 90 - 0
appstream-center/src/model/ListAppInstancesResult.cc

@@ -0,0 +1,90 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/appstream-center/model/ListAppInstancesResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Appstream_center;
+using namespace AlibabaCloud::Appstream_center::Model;
+
+ListAppInstancesResult::ListAppInstancesResult() :
+	ServiceResult()
+{}
+
+ListAppInstancesResult::ListAppInstancesResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+ListAppInstancesResult::~ListAppInstancesResult()
+{}
+
+void ListAppInstancesResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allAppInstanceModelsNode = value["AppInstanceModels"]["data"];
+	for (auto valueAppInstanceModelsdata : allAppInstanceModelsNode)
+	{
+		Data appInstanceModelsObject;
+		if(!valueAppInstanceModelsdata["AppInstanceId"].isNull())
+			appInstanceModelsObject.appInstanceId = valueAppInstanceModelsdata["AppInstanceId"].asString();
+		if(!valueAppInstanceModelsdata["AppInstanceGroupId"].isNull())
+			appInstanceModelsObject.appInstanceGroupId = valueAppInstanceModelsdata["AppInstanceGroupId"].asString();
+		if(!valueAppInstanceModelsdata["Status"].isNull())
+			appInstanceModelsObject.status = valueAppInstanceModelsdata["Status"].asString();
+		if(!valueAppInstanceModelsdata["MainEthPublicIp"].isNull())
+			appInstanceModelsObject.mainEthPublicIp = valueAppInstanceModelsdata["MainEthPublicIp"].asString();
+		if(!valueAppInstanceModelsdata["GmtCreate"].isNull())
+			appInstanceModelsObject.gmtCreate = valueAppInstanceModelsdata["GmtCreate"].asString();
+		if(!valueAppInstanceModelsdata["GmtModified"].isNull())
+			appInstanceModelsObject.gmtModified = valueAppInstanceModelsdata["GmtModified"].asString();
+		if(!valueAppInstanceModelsdata["SessionStatus"].isNull())
+			appInstanceModelsObject.sessionStatus = valueAppInstanceModelsdata["SessionStatus"].asString();
+		appInstanceModels_.push_back(appInstanceModelsObject);
+	}
+	if(!value["TotalCount"].isNull())
+		totalCount_ = std::stoi(value["TotalCount"].asString());
+	if(!value["PageSize"].isNull())
+		pageSize_ = std::stoi(value["PageSize"].asString());
+	if(!value["PageNumber"].isNull())
+		pageNumber_ = std::stoi(value["PageNumber"].asString());
+
+}
+
+std::vector<ListAppInstancesResult::Data> ListAppInstancesResult::getAppInstanceModels()const
+{
+	return appInstanceModels_;
+}
+
+int ListAppInstancesResult::getTotalCount()const
+{
+	return totalCount_;
+}
+
+int ListAppInstancesResult::getPageSize()const
+{
+	return pageSize_;
+}
+
+int ListAppInstancesResult::getPageNumber()const
+{
+	return pageNumber_;
+}
+

+ 81 - 0
appstream-center/src/model/ListNodeInstanceTypeRequest.cc

@@ -0,0 +1,81 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/appstream-center/model/ListNodeInstanceTypeRequest.h>
+
+using AlibabaCloud::Appstream_center::Model::ListNodeInstanceTypeRequest;
+
+ListNodeInstanceTypeRequest::ListNodeInstanceTypeRequest()
+    : RpcServiceRequest("appstream-center", "2021-09-01", "ListNodeInstanceType") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+ListNodeInstanceTypeRequest::~ListNodeInstanceTypeRequest() {}
+
+std::string ListNodeInstanceTypeRequest::getBizRegionId() const {
+  return bizRegionId_;
+}
+
+void ListNodeInstanceTypeRequest::setBizRegionId(const std::string &bizRegionId) {
+  bizRegionId_ = bizRegionId;
+  setParameter(std::string("BizRegionId"), bizRegionId);
+}
+
+std::string ListNodeInstanceTypeRequest::getLanguage() const {
+  return language_;
+}
+
+void ListNodeInstanceTypeRequest::setLanguage(const std::string &language) {
+  language_ = language;
+  setParameter(std::string("Language"), language);
+}
+
+std::string ListNodeInstanceTypeRequest::getOsType() const {
+  return osType_;
+}
+
+void ListNodeInstanceTypeRequest::setOsType(const std::string &osType) {
+  osType_ = osType;
+  setParameter(std::string("OsType"), osType);
+}
+
+int ListNodeInstanceTypeRequest::getPageNumber() const {
+  return pageNumber_;
+}
+
+void ListNodeInstanceTypeRequest::setPageNumber(int pageNumber) {
+  pageNumber_ = pageNumber;
+  setParameter(std::string("PageNumber"), std::to_string(pageNumber));
+}
+
+std::string ListNodeInstanceTypeRequest::getProductType() const {
+  return productType_;
+}
+
+void ListNodeInstanceTypeRequest::setProductType(const std::string &productType) {
+  productType_ = productType;
+  setParameter(std::string("ProductType"), productType);
+}
+
+int ListNodeInstanceTypeRequest::getPageSize() const {
+  return pageSize_;
+}
+
+void ListNodeInstanceTypeRequest::setPageSize(int pageSize) {
+  pageSize_ = pageSize;
+  setParameter(std::string("PageSize"), std::to_string(pageSize));
+}
+

+ 96 - 0
appstream-center/src/model/ListNodeInstanceTypeResult.cc

@@ -0,0 +1,96 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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/appstream-center/model/ListNodeInstanceTypeResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Appstream_center;
+using namespace AlibabaCloud::Appstream_center::Model;
+
+ListNodeInstanceTypeResult::ListNodeInstanceTypeResult() :
+	ServiceResult()
+{}
+
+ListNodeInstanceTypeResult::ListNodeInstanceTypeResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+ListNodeInstanceTypeResult::~ListNodeInstanceTypeResult()
+{}
+
+void ListNodeInstanceTypeResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allNodeInstanceTypeModelsNode = value["NodeInstanceTypeModels"]["node"];
+	for (auto valueNodeInstanceTypeModelsnode : allNodeInstanceTypeModelsNode)
+	{
+		Node nodeInstanceTypeModelsObject;
+		if(!valueNodeInstanceTypeModelsnode["NodeInstanceType"].isNull())
+			nodeInstanceTypeModelsObject.nodeInstanceType = valueNodeInstanceTypeModelsnode["NodeInstanceType"].asString();
+		if(!valueNodeInstanceTypeModelsnode["NodeInstanceTypeFamily"].isNull())
+			nodeInstanceTypeModelsObject.nodeInstanceTypeFamily = valueNodeInstanceTypeModelsnode["NodeInstanceTypeFamily"].asString();
+		if(!valueNodeInstanceTypeModelsnode["Cpu"].isNull())
+			nodeInstanceTypeModelsObject.cpu = valueNodeInstanceTypeModelsnode["Cpu"].asString();
+		if(!valueNodeInstanceTypeModelsnode["Gpu"].isNull())
+			nodeInstanceTypeModelsObject.gpu = valueNodeInstanceTypeModelsnode["Gpu"].asString();
+		if(!valueNodeInstanceTypeModelsnode["Memory"].isNull())
+			nodeInstanceTypeModelsObject.memory = std::stol(valueNodeInstanceTypeModelsnode["Memory"].asString());
+		if(!valueNodeInstanceTypeModelsnode["SystemDiskSize"].isNull())
+			nodeInstanceTypeModelsObject.systemDiskSize = std::stol(valueNodeInstanceTypeModelsnode["SystemDiskSize"].asString());
+		if(!valueNodeInstanceTypeModelsnode["DataDiskSize"].isNull())
+			nodeInstanceTypeModelsObject.dataDiskSize = std::stol(valueNodeInstanceTypeModelsnode["DataDiskSize"].asString());
+		if(!valueNodeInstanceTypeModelsnode["GpuMemory"].isNull())
+			nodeInstanceTypeModelsObject.gpuMemory = std::stol(valueNodeInstanceTypeModelsnode["GpuMemory"].asString());
+		if(!valueNodeInstanceTypeModelsnode["MaxCapacity"].isNull())
+			nodeInstanceTypeModelsObject.maxCapacity = std::stoi(valueNodeInstanceTypeModelsnode["MaxCapacity"].asString());
+		if(!valueNodeInstanceTypeModelsnode["NodeTypeName"].isNull())
+			nodeInstanceTypeModelsObject.nodeTypeName = valueNodeInstanceTypeModelsnode["NodeTypeName"].asString();
+		nodeInstanceTypeModels_.push_back(nodeInstanceTypeModelsObject);
+	}
+	if(!value["TotalCount"].isNull())
+		totalCount_ = std::stoi(value["TotalCount"].asString());
+	if(!value["PageSize"].isNull())
+		pageSize_ = std::stoi(value["PageSize"].asString());
+	if(!value["PageNumber"].isNull())
+		pageNumber_ = std::stoi(value["PageNumber"].asString());
+
+}
+
+std::vector<ListNodeInstanceTypeResult::Node> ListNodeInstanceTypeResult::getNodeInstanceTypeModels()const
+{
+	return nodeInstanceTypeModels_;
+}
+
+int ListNodeInstanceTypeResult::getTotalCount()const
+{
+	return totalCount_;
+}
+
+int ListNodeInstanceTypeResult::getPageSize()const
+{
+	return pageSize_;
+}
+
+int ListNodeInstanceTypeResult::getPageNumber()const
+{
+	return pageNumber_;
+}
+

+ 63 - 0
appstream-center/src/model/ListOtaTaskRequest.cc

@@ -0,0 +1,63 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/appstream-center/model/ListOtaTaskRequest.h>
+
+using AlibabaCloud::Appstream_center::Model::ListOtaTaskRequest;
+
+ListOtaTaskRequest::ListOtaTaskRequest()
+    : RpcServiceRequest("appstream-center", "2021-09-01", "ListOtaTask") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+ListOtaTaskRequest::~ListOtaTaskRequest() {}
+
+std::string ListOtaTaskRequest::getOtaType() const {
+  return otaType_;
+}
+
+void ListOtaTaskRequest::setOtaType(const std::string &otaType) {
+  otaType_ = otaType;
+  setBodyParameter(std::string("OtaType"), otaType);
+}
+
+int ListOtaTaskRequest::getPageNumber() const {
+  return pageNumber_;
+}
+
+void ListOtaTaskRequest::setPageNumber(int pageNumber) {
+  pageNumber_ = pageNumber;
+  setBodyParameter(std::string("PageNumber"), std::to_string(pageNumber));
+}
+
+std::string ListOtaTaskRequest::getAppInstanceGroupId() const {
+  return appInstanceGroupId_;
+}
+
+void ListOtaTaskRequest::setAppInstanceGroupId(const std::string &appInstanceGroupId) {
+  appInstanceGroupId_ = appInstanceGroupId;
+  setBodyParameter(std::string("AppInstanceGroupId"), appInstanceGroupId);
+}
+
+int ListOtaTaskRequest::getPageSize() const {
+  return pageSize_;
+}
+
+void ListOtaTaskRequest::setPageSize(int pageSize) {
+  pageSize_ = pageSize;
+  setBodyParameter(std::string("PageSize"), std::to_string(pageSize));
+}
+

+ 84 - 0
appstream-center/src/model/ListOtaTaskResult.cc

@@ -0,0 +1,84 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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/appstream-center/model/ListOtaTaskResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Appstream_center;
+using namespace AlibabaCloud::Appstream_center::Model;
+
+ListOtaTaskResult::ListOtaTaskResult() :
+	ServiceResult()
+{}
+
+ListOtaTaskResult::ListOtaTaskResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+ListOtaTaskResult::~ListOtaTaskResult()
+{}
+
+void ListOtaTaskResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allTaskListNode = value["TaskList"]["data"];
+	for (auto valueTaskListdata : allTaskListNode)
+	{
+		Data taskListObject;
+		if(!valueTaskListdata["OtaVersion"].isNull())
+			taskListObject.otaVersion = valueTaskListdata["OtaVersion"].asString();
+		if(!valueTaskListdata["TaskDisplayStatus"].isNull())
+			taskListObject.taskDisplayStatus = valueTaskListdata["TaskDisplayStatus"].asString();
+		if(!valueTaskListdata["TaskStartTime"].isNull())
+			taskListObject.taskStartTime = valueTaskListdata["TaskStartTime"].asString();
+		if(!valueTaskListdata["TaskId"].isNull())
+			taskListObject.taskId = valueTaskListdata["TaskId"].asString();
+		taskList_.push_back(taskListObject);
+	}
+	if(!value["TotalCount"].isNull())
+		totalCount_ = std::stoi(value["TotalCount"].asString());
+	if(!value["PageSize"].isNull())
+		pageSize_ = std::stoi(value["PageSize"].asString());
+	if(!value["PageNumber"].isNull())
+		pageNumber_ = std::stoi(value["PageNumber"].asString());
+
+}
+
+int ListOtaTaskResult::getTotalCount()const
+{
+	return totalCount_;
+}
+
+int ListOtaTaskResult::getPageSize()const
+{
+	return pageSize_;
+}
+
+int ListOtaTaskResult::getPageNumber()const
+{
+	return pageNumber_;
+}
+
+std::vector<ListOtaTaskResult::Data> ListOtaTaskResult::getTaskList()const
+{
+	return taskList_;
+}
+

+ 27 - 0
appstream-center/src/model/ListRegionsRequest.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/appstream-center/model/ListRegionsRequest.h>
+
+using AlibabaCloud::Appstream_center::Model::ListRegionsRequest;
+
+ListRegionsRequest::ListRegionsRequest()
+    : RpcServiceRequest("appstream-center", "2021-09-01", "ListRegions") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+ListRegionsRequest::~ListRegionsRequest() {}
+

+ 57 - 0
appstream-center/src/model/ListRegionsResult.cc

@@ -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.
+ */
+
+#include <alibabacloud/appstream-center/model/ListRegionsResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Appstream_center;
+using namespace AlibabaCloud::Appstream_center::Model;
+
+ListRegionsResult::ListRegionsResult() :
+	ServiceResult()
+{}
+
+ListRegionsResult::ListRegionsResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+ListRegionsResult::~ListRegionsResult()
+{}
+
+void ListRegionsResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allRegionModelsNode = value["RegionModels"]["regionModelsItem"];
+	for (auto valueRegionModelsregionModelsItem : allRegionModelsNode)
+	{
+		RegionModelsItem regionModelsObject;
+		if(!valueRegionModelsregionModelsItem["regionId"].isNull())
+			regionModelsObject.regionId = valueRegionModelsregionModelsItem["regionId"].asString();
+		regionModels_.push_back(regionModelsObject);
+	}
+
+}
+
+std::vector<ListRegionsResult::RegionModelsItem> ListRegionsResult::getRegionModels()const
+{
+	return regionModels_;
+}
+

+ 27 - 0
appstream-center/src/model/ListTenantConfigRequest.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/appstream-center/model/ListTenantConfigRequest.h>
+
+using AlibabaCloud::Appstream_center::Model::ListTenantConfigRequest;
+
+ListTenantConfigRequest::ListTenantConfigRequest()
+    : RpcServiceRequest("appstream-center", "2021-09-01", "ListTenantConfig") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+ListTenantConfigRequest::~ListTenantConfigRequest() {}
+

+ 52 - 0
appstream-center/src/model/ListTenantConfigResult.cc

@@ -0,0 +1,52 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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/appstream-center/model/ListTenantConfigResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Appstream_center;
+using namespace AlibabaCloud::Appstream_center::Model;
+
+ListTenantConfigResult::ListTenantConfigResult() :
+	ServiceResult()
+{}
+
+ListTenantConfigResult::ListTenantConfigResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+ListTenantConfigResult::~ListTenantConfigResult()
+{}
+
+void ListTenantConfigResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto tenantConfigModelNode = value["TenantConfigModel"];
+	if(!tenantConfigModelNode["AppInstanceGroupExpireRemind"].isNull())
+		tenantConfigModel_.appInstanceGroupExpireRemind = tenantConfigModelNode["AppInstanceGroupExpireRemind"].asString() == "true";
+
+}
+
+ListTenantConfigResult::TenantConfigModel ListTenantConfigResult::getTenantConfigModel()const
+{
+	return tenantConfigModel_;
+}
+

+ 45 - 0
appstream-center/src/model/LogOffAllSessionsInAppInstanceGroupRequest.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/appstream-center/model/LogOffAllSessionsInAppInstanceGroupRequest.h>
+
+using AlibabaCloud::Appstream_center::Model::LogOffAllSessionsInAppInstanceGroupRequest;
+
+LogOffAllSessionsInAppInstanceGroupRequest::LogOffAllSessionsInAppInstanceGroupRequest()
+    : RpcServiceRequest("appstream-center", "2021-09-01", "LogOffAllSessionsInAppInstanceGroup") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+LogOffAllSessionsInAppInstanceGroupRequest::~LogOffAllSessionsInAppInstanceGroupRequest() {}
+
+std::string LogOffAllSessionsInAppInstanceGroupRequest::getProductType() const {
+  return productType_;
+}
+
+void LogOffAllSessionsInAppInstanceGroupRequest::setProductType(const std::string &productType) {
+  productType_ = productType;
+  setBodyParameter(std::string("ProductType"), productType);
+}
+
+std::string LogOffAllSessionsInAppInstanceGroupRequest::getAppInstanceGroupId() const {
+  return appInstanceGroupId_;
+}
+
+void LogOffAllSessionsInAppInstanceGroupRequest::setAppInstanceGroupId(const std::string &appInstanceGroupId) {
+  appInstanceGroupId_ = appInstanceGroupId;
+  setBodyParameter(std::string("AppInstanceGroupId"), appInstanceGroupId);
+}
+

+ 58 - 0
appstream-center/src/model/LogOffAllSessionsInAppInstanceGroupResult.cc

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

+ 73 - 0
appstream-center/src/model/ModifyAppInstanceGroupAttributeRequest.cc

@@ -0,0 +1,73 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/appstream-center/model/ModifyAppInstanceGroupAttributeRequest.h>
+
+using AlibabaCloud::Appstream_center::Model::ModifyAppInstanceGroupAttributeRequest;
+
+ModifyAppInstanceGroupAttributeRequest::ModifyAppInstanceGroupAttributeRequest()
+    : RpcServiceRequest("appstream-center", "2021-09-01", "ModifyAppInstanceGroupAttribute") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+ModifyAppInstanceGroupAttributeRequest::~ModifyAppInstanceGroupAttributeRequest() {}
+
+ModifyAppInstanceGroupAttributeRequest::NodePool ModifyAppInstanceGroupAttributeRequest::getNodePool() const {
+  return nodePool_;
+}
+
+void ModifyAppInstanceGroupAttributeRequest::setNodePool(const ModifyAppInstanceGroupAttributeRequest::NodePool &nodePool) {
+  nodePool_ = nodePool;
+  setParameter(std::string("NodePool") + ".NodePoolId", nodePool.nodePoolId);
+  setParameter(std::string("NodePool") + ".NodeCapacity", std::to_string(nodePool.nodeCapacity));
+}
+
+std::string ModifyAppInstanceGroupAttributeRequest::getProductType() const {
+  return productType_;
+}
+
+void ModifyAppInstanceGroupAttributeRequest::setProductType(const std::string &productType) {
+  productType_ = productType;
+  setParameter(std::string("ProductType"), productType);
+}
+
+std::string ModifyAppInstanceGroupAttributeRequest::getAppInstanceGroupName() const {
+  return appInstanceGroupName_;
+}
+
+void ModifyAppInstanceGroupAttributeRequest::setAppInstanceGroupName(const std::string &appInstanceGroupName) {
+  appInstanceGroupName_ = appInstanceGroupName;
+  setParameter(std::string("AppInstanceGroupName"), appInstanceGroupName);
+}
+
+int ModifyAppInstanceGroupAttributeRequest::getSessionTimeout() const {
+  return sessionTimeout_;
+}
+
+void ModifyAppInstanceGroupAttributeRequest::setSessionTimeout(int sessionTimeout) {
+  sessionTimeout_ = sessionTimeout;
+  setParameter(std::string("SessionTimeout"), std::to_string(sessionTimeout));
+}
+
+std::string ModifyAppInstanceGroupAttributeRequest::getAppInstanceGroupId() const {
+  return appInstanceGroupId_;
+}
+
+void ModifyAppInstanceGroupAttributeRequest::setAppInstanceGroupId(const std::string &appInstanceGroupId) {
+  appInstanceGroupId_ = appInstanceGroupId;
+  setParameter(std::string("AppInstanceGroupId"), appInstanceGroupId);
+}
+

+ 58 - 0
appstream-center/src/model/ModifyAppInstanceGroupAttributeResult.cc

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

+ 90 - 0
appstream-center/src/model/ModifyNodePoolAttributeRequest.cc

@@ -0,0 +1,90 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/appstream-center/model/ModifyNodePoolAttributeRequest.h>
+
+using AlibabaCloud::Appstream_center::Model::ModifyNodePoolAttributeRequest;
+
+ModifyNodePoolAttributeRequest::ModifyNodePoolAttributeRequest()
+    : RpcServiceRequest("appstream-center", "2021-09-01", "ModifyNodePoolAttribute") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+ModifyNodePoolAttributeRequest::~ModifyNodePoolAttributeRequest() {}
+
+std::string ModifyNodePoolAttributeRequest::getBizRegionId() const {
+  return bizRegionId_;
+}
+
+void ModifyNodePoolAttributeRequest::setBizRegionId(const std::string &bizRegionId) {
+  bizRegionId_ = bizRegionId;
+  setBodyParameter(std::string("BizRegionId"), bizRegionId);
+}
+
+std::string ModifyNodePoolAttributeRequest::getProductType() const {
+  return productType_;
+}
+
+void ModifyNodePoolAttributeRequest::setProductType(const std::string &productType) {
+  productType_ = productType;
+  setBodyParameter(std::string("ProductType"), productType);
+}
+
+std::string ModifyNodePoolAttributeRequest::getPoolId() const {
+  return poolId_;
+}
+
+void ModifyNodePoolAttributeRequest::setPoolId(const std::string &poolId) {
+  poolId_ = poolId;
+  setBodyParameter(std::string("PoolId"), poolId);
+}
+
+ModifyNodePoolAttributeRequest::NodePoolStrategy ModifyNodePoolAttributeRequest::getNodePoolStrategy() const {
+  return nodePoolStrategy_;
+}
+
+void ModifyNodePoolAttributeRequest::setNodePoolStrategy(const ModifyNodePoolAttributeRequest::NodePoolStrategy &nodePoolStrategy) {
+  nodePoolStrategy_ = nodePoolStrategy;
+  for(int dep1 = 0; dep1 != nodePoolStrategy.recurrenceSchedules.size(); dep1++) {
+    for(int dep2 = 0; dep2 != nodePoolStrategy.recurrenceSchedules[dep1].recurrenceValues.size(); dep2++) {
+      setBodyParameter(std::string("NodePoolStrategy") + ".RecurrenceSchedules." + std::to_string(dep1 + 1) + ".RecurrenceValues." + std::to_string(dep2 + 1), std::to_string(nodePoolStrategy.recurrenceSchedules[dep1].recurrenceValues[dep2]));
+    }
+    setBodyParameter(std::string("NodePoolStrategy") + ".RecurrenceSchedules." + std::to_string(dep1 + 1) + ".RecurrenceType", nodePoolStrategy.recurrenceSchedules[dep1].recurrenceType);
+    for(int dep2 = 0; dep2 != nodePoolStrategy.recurrenceSchedules[dep1].timerPeriods.size(); dep2++) {
+      setBodyParameter(std::string("NodePoolStrategy") + ".RecurrenceSchedules." + std::to_string(dep1 + 1) + ".TimerPeriods." + std::to_string(dep2 + 1) + ".Amount", std::to_string(nodePoolStrategy.recurrenceSchedules[dep1].timerPeriods[dep2].amount));
+      setBodyParameter(std::string("NodePoolStrategy") + ".RecurrenceSchedules." + std::to_string(dep1 + 1) + ".TimerPeriods." + std::to_string(dep2 + 1) + ".EndTime", nodePoolStrategy.recurrenceSchedules[dep1].timerPeriods[dep2].endTime);
+      setBodyParameter(std::string("NodePoolStrategy") + ".RecurrenceSchedules." + std::to_string(dep1 + 1) + ".TimerPeriods." + std::to_string(dep2 + 1) + ".StartTime", nodePoolStrategy.recurrenceSchedules[dep1].timerPeriods[dep2].startTime);
+    }
+  }
+  setBodyParameter(std::string("NodePoolStrategy") + ".ScalingStep", std::to_string(nodePoolStrategy.scalingStep));
+  setBodyParameter(std::string("NodePoolStrategy") + ".StrategyDisableDate", nodePoolStrategy.strategyDisableDate);
+  setBodyParameter(std::string("NodePoolStrategy") + ".ScalingDownAfterIdleMinutes", std::to_string(nodePoolStrategy.scalingDownAfterIdleMinutes));
+  setBodyParameter(std::string("NodePoolStrategy") + ".StrategyType", nodePoolStrategy.strategyType);
+  setBodyParameter(std::string("NodePoolStrategy") + ".MaxScalingAmount", std::to_string(nodePoolStrategy.maxScalingAmount));
+  setBodyParameter(std::string("NodePoolStrategy") + ".WarmUp", nodePoolStrategy.warmUp ? "true" : "false");
+  setBodyParameter(std::string("NodePoolStrategy") + ".ScalingUsageThreshold", nodePoolStrategy.scalingUsageThreshold);
+  setBodyParameter(std::string("NodePoolStrategy") + ".StrategyEnableDate", nodePoolStrategy.strategyEnableDate);
+}
+
+int ModifyNodePoolAttributeRequest::getNodeCapacity() const {
+  return nodeCapacity_;
+}
+
+void ModifyNodePoolAttributeRequest::setNodeCapacity(int nodeCapacity) {
+  nodeCapacity_ = nodeCapacity;
+  setBodyParameter(std::string("NodeCapacity"), std::to_string(nodeCapacity));
+}
+

+ 58 - 0
appstream-center/src/model/ModifyNodePoolAttributeResult.cc

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

+ 36 - 0
appstream-center/src/model/ModifyTenantConfigRequest.cc

@@ -0,0 +1,36 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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/appstream-center/model/ModifyTenantConfigRequest.h>
+
+using AlibabaCloud::Appstream_center::Model::ModifyTenantConfigRequest;
+
+ModifyTenantConfigRequest::ModifyTenantConfigRequest()
+    : RpcServiceRequest("appstream-center", "2021-09-01", "ModifyTenantConfig") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+ModifyTenantConfigRequest::~ModifyTenantConfigRequest() {}
+
+bool ModifyTenantConfigRequest::getAppInstanceGroupExpireRemind() const {
+  return appInstanceGroupExpireRemind_;
+}
+
+void ModifyTenantConfigRequest::setAppInstanceGroupExpireRemind(bool appInstanceGroupExpireRemind) {
+  appInstanceGroupExpireRemind_ = appInstanceGroupExpireRemind;
+  setBodyParameter(std::string("AppInstanceGroupExpireRemind"), appInstanceGroupExpireRemind ? "true" : "false");
+}
+

+ 44 - 0
appstream-center/src/model/ModifyTenantConfigResult.cc

@@ -0,0 +1,44 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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/appstream-center/model/ModifyTenantConfigResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Appstream_center;
+using namespace AlibabaCloud::Appstream_center::Model;
+
+ModifyTenantConfigResult::ModifyTenantConfigResult() :
+	ServiceResult()
+{}
+
+ModifyTenantConfigResult::ModifyTenantConfigResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+ModifyTenantConfigResult::~ModifyTenantConfigResult()
+{}
+
+void ModifyTenantConfigResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+
+}
+

+ 63 - 0
appstream-center/src/model/PageListAppInstanceGroupUserRequest.cc

@@ -0,0 +1,63 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/appstream-center/model/PageListAppInstanceGroupUserRequest.h>
+
+using AlibabaCloud::Appstream_center::Model::PageListAppInstanceGroupUserRequest;
+
+PageListAppInstanceGroupUserRequest::PageListAppInstanceGroupUserRequest()
+    : RpcServiceRequest("appstream-center", "2021-09-01", "PageListAppInstanceGroupUser") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+PageListAppInstanceGroupUserRequest::~PageListAppInstanceGroupUserRequest() {}
+
+int PageListAppInstanceGroupUserRequest::getPageNumber() const {
+  return pageNumber_;
+}
+
+void PageListAppInstanceGroupUserRequest::setPageNumber(int pageNumber) {
+  pageNumber_ = pageNumber;
+  setBodyParameter(std::string("PageNumber"), std::to_string(pageNumber));
+}
+
+std::string PageListAppInstanceGroupUserRequest::getProductType() const {
+  return productType_;
+}
+
+void PageListAppInstanceGroupUserRequest::setProductType(const std::string &productType) {
+  productType_ = productType;
+  setBodyParameter(std::string("ProductType"), productType);
+}
+
+std::string PageListAppInstanceGroupUserRequest::getAppInstanceGroupId() const {
+  return appInstanceGroupId_;
+}
+
+void PageListAppInstanceGroupUserRequest::setAppInstanceGroupId(const std::string &appInstanceGroupId) {
+  appInstanceGroupId_ = appInstanceGroupId;
+  setBodyParameter(std::string("AppInstanceGroupId"), appInstanceGroupId);
+}
+
+int PageListAppInstanceGroupUserRequest::getPageSize() const {
+  return pageSize_;
+}
+
+void PageListAppInstanceGroupUserRequest::setPageSize(int pageSize) {
+  pageSize_ = pageSize;
+  setBodyParameter(std::string("PageSize"), std::to_string(pageSize));
+}
+

+ 52 - 0
appstream-center/src/model/PageListAppInstanceGroupUserResult.cc

@@ -0,0 +1,52 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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/appstream-center/model/PageListAppInstanceGroupUserResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Appstream_center;
+using namespace AlibabaCloud::Appstream_center::Model;
+
+PageListAppInstanceGroupUserResult::PageListAppInstanceGroupUserResult() :
+	ServiceResult()
+{}
+
+PageListAppInstanceGroupUserResult::PageListAppInstanceGroupUserResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+PageListAppInstanceGroupUserResult::~PageListAppInstanceGroupUserResult()
+{}
+
+void PageListAppInstanceGroupUserResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allUsers = value["Users"]["users"];
+	for (const auto &item : allUsers)
+		users_.push_back(item.asString());
+
+}
+
+std::vector<std::string> PageListAppInstanceGroupUserResult::getUsers()const
+{
+	return users_;
+}
+

+ 81 - 0
appstream-center/src/model/RenewAppInstanceGroupRequest.cc

@@ -0,0 +1,81 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/appstream-center/model/RenewAppInstanceGroupRequest.h>
+
+using AlibabaCloud::Appstream_center::Model::RenewAppInstanceGroupRequest;
+
+RenewAppInstanceGroupRequest::RenewAppInstanceGroupRequest()
+    : RpcServiceRequest("appstream-center", "2021-09-01", "RenewAppInstanceGroup") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+RenewAppInstanceGroupRequest::~RenewAppInstanceGroupRequest() {}
+
+int RenewAppInstanceGroupRequest::getPeriod() const {
+  return period_;
+}
+
+void RenewAppInstanceGroupRequest::setPeriod(int period) {
+  period_ = period;
+  setParameter(std::string("Period"), std::to_string(period));
+}
+
+bool RenewAppInstanceGroupRequest::getAutoPay() const {
+  return autoPay_;
+}
+
+void RenewAppInstanceGroupRequest::setAutoPay(bool autoPay) {
+  autoPay_ = autoPay;
+  setParameter(std::string("AutoPay"), autoPay ? "true" : "false");
+}
+
+std::string RenewAppInstanceGroupRequest::getPromotionId() const {
+  return promotionId_;
+}
+
+void RenewAppInstanceGroupRequest::setPromotionId(const std::string &promotionId) {
+  promotionId_ = promotionId;
+  setParameter(std::string("PromotionId"), promotionId);
+}
+
+std::string RenewAppInstanceGroupRequest::getProductType() const {
+  return productType_;
+}
+
+void RenewAppInstanceGroupRequest::setProductType(const std::string &productType) {
+  productType_ = productType;
+  setParameter(std::string("ProductType"), productType);
+}
+
+std::string RenewAppInstanceGroupRequest::getPeriodUnit() const {
+  return periodUnit_;
+}
+
+void RenewAppInstanceGroupRequest::setPeriodUnit(const std::string &periodUnit) {
+  periodUnit_ = periodUnit;
+  setParameter(std::string("PeriodUnit"), periodUnit);
+}
+
+std::string RenewAppInstanceGroupRequest::getAppInstanceGroupId() const {
+  return appInstanceGroupId_;
+}
+
+void RenewAppInstanceGroupRequest::setAppInstanceGroupId(const std::string &appInstanceGroupId) {
+  appInstanceGroupId_ = appInstanceGroupId;
+  setParameter(std::string("AppInstanceGroupId"), appInstanceGroupId);
+}
+

Některé soubory nejsou zobrazeny, neboť je v těchto rozdílových datech změněno mnoho souborů