Browse Source

由厚勇发起的ECS SDK自动发布, 版本号:1.8.0

Signed-off-by: haowei.yao <haowei.yao@alibaba-inc.com>
haowei.yao 8 years ago
parent
commit
1911aed209

+ 4 - 0
CHANGELOG

@@ -1,3 +1,7 @@
+2018-05-02 Version: 1.8.0
+1, Add new interface InstallCloudAssistant, support Cloud Assistant client installation.
+2, Add new interface DescribeCloudAssistantStatus, support Cloud Assistant client status detection.
+
 2018-04-28 Version: 1.7.3
 2018-04-28 Version: 1.7.3
 1, Add dcdn domain interface,Support add、modify、delete、query dcdn domain.
 1, Add dcdn domain interface,Support add、modify、delete、query dcdn domain.
 2, Add dcdn config interface,Support set、delete、query domain config.
 2, Add dcdn config interface,Support set、delete、query domain config.

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.7.3
+1.8.0

+ 8 - 0
ecs/CMakeLists.txt

@@ -439,6 +439,8 @@ set(ecs_public_header_model
 	include/alibabacloud/ecs/model/DeleteRouteEntryResult.h
 	include/alibabacloud/ecs/model/DeleteRouteEntryResult.h
 	include/alibabacloud/ecs/model/DeleteVirtualBorderRouterRequest.h
 	include/alibabacloud/ecs/model/DeleteVirtualBorderRouterRequest.h
 	include/alibabacloud/ecs/model/DeleteVirtualBorderRouterResult.h
 	include/alibabacloud/ecs/model/DeleteVirtualBorderRouterResult.h
+	include/alibabacloud/ecs/model/DescribeCloudAssistantStatusRequest.h
+	include/alibabacloud/ecs/model/DescribeCloudAssistantStatusResult.h
 	include/alibabacloud/ecs/model/DescribeInstancePhysicalAttributeRequest.h
 	include/alibabacloud/ecs/model/DescribeInstancePhysicalAttributeRequest.h
 	include/alibabacloud/ecs/model/DescribeInstancePhysicalAttributeResult.h
 	include/alibabacloud/ecs/model/DescribeInstancePhysicalAttributeResult.h
 	include/alibabacloud/ecs/model/TerminatePhysicalConnectionRequest.h
 	include/alibabacloud/ecs/model/TerminatePhysicalConnectionRequest.h
@@ -507,6 +509,8 @@ set(ecs_public_header_model
 	include/alibabacloud/ecs/model/GetInstanceScreenshotResult.h
 	include/alibabacloud/ecs/model/GetInstanceScreenshotResult.h
 	include/alibabacloud/ecs/model/AttachInstanceRamRoleRequest.h
 	include/alibabacloud/ecs/model/AttachInstanceRamRoleRequest.h
 	include/alibabacloud/ecs/model/AttachInstanceRamRoleResult.h
 	include/alibabacloud/ecs/model/AttachInstanceRamRoleResult.h
+	include/alibabacloud/ecs/model/InstallCloudAssistantRequest.h
+	include/alibabacloud/ecs/model/InstallCloudAssistantResult.h
 	include/alibabacloud/ecs/model/ModifyVRouterAttributeRequest.h
 	include/alibabacloud/ecs/model/ModifyVRouterAttributeRequest.h
 	include/alibabacloud/ecs/model/ModifyVRouterAttributeResult.h )
 	include/alibabacloud/ecs/model/ModifyVRouterAttributeResult.h )
 
 
@@ -930,6 +934,8 @@ set(ecs_src
 	src/model/DeleteRouteEntryResult.cc
 	src/model/DeleteRouteEntryResult.cc
 	src/model/DeleteVirtualBorderRouterRequest.cc
 	src/model/DeleteVirtualBorderRouterRequest.cc
 	src/model/DeleteVirtualBorderRouterResult.cc
 	src/model/DeleteVirtualBorderRouterResult.cc
+	src/model/DescribeCloudAssistantStatusRequest.cc
+	src/model/DescribeCloudAssistantStatusResult.cc
 	src/model/DescribeInstancePhysicalAttributeRequest.cc
 	src/model/DescribeInstancePhysicalAttributeRequest.cc
 	src/model/DescribeInstancePhysicalAttributeResult.cc
 	src/model/DescribeInstancePhysicalAttributeResult.cc
 	src/model/TerminatePhysicalConnectionRequest.cc
 	src/model/TerminatePhysicalConnectionRequest.cc
@@ -998,6 +1004,8 @@ set(ecs_src
 	src/model/GetInstanceScreenshotResult.cc
 	src/model/GetInstanceScreenshotResult.cc
 	src/model/AttachInstanceRamRoleRequest.cc
 	src/model/AttachInstanceRamRoleRequest.cc
 	src/model/AttachInstanceRamRoleResult.cc
 	src/model/AttachInstanceRamRoleResult.cc
+	src/model/InstallCloudAssistantRequest.cc
+	src/model/InstallCloudAssistantResult.cc
 	src/model/ModifyVRouterAttributeRequest.cc
 	src/model/ModifyVRouterAttributeRequest.cc
 	src/model/ModifyVRouterAttributeResult.cc )
 	src/model/ModifyVRouterAttributeResult.cc )
 
 

+ 16 - 0
ecs/include/alibabacloud/ecs/EcsClient.h

@@ -440,6 +440,8 @@
 #include "model/DeleteRouteEntryResult.h"
 #include "model/DeleteRouteEntryResult.h"
 #include "model/DeleteVirtualBorderRouterRequest.h"
 #include "model/DeleteVirtualBorderRouterRequest.h"
 #include "model/DeleteVirtualBorderRouterResult.h"
 #include "model/DeleteVirtualBorderRouterResult.h"
+#include "model/DescribeCloudAssistantStatusRequest.h"
+#include "model/DescribeCloudAssistantStatusResult.h"
 #include "model/DescribeInstancePhysicalAttributeRequest.h"
 #include "model/DescribeInstancePhysicalAttributeRequest.h"
 #include "model/DescribeInstancePhysicalAttributeResult.h"
 #include "model/DescribeInstancePhysicalAttributeResult.h"
 #include "model/TerminatePhysicalConnectionRequest.h"
 #include "model/TerminatePhysicalConnectionRequest.h"
@@ -508,6 +510,8 @@
 #include "model/GetInstanceScreenshotResult.h"
 #include "model/GetInstanceScreenshotResult.h"
 #include "model/AttachInstanceRamRoleRequest.h"
 #include "model/AttachInstanceRamRoleRequest.h"
 #include "model/AttachInstanceRamRoleResult.h"
 #include "model/AttachInstanceRamRoleResult.h"
+#include "model/InstallCloudAssistantRequest.h"
+#include "model/InstallCloudAssistantResult.h"
 #include "model/ModifyVRouterAttributeRequest.h"
 #include "model/ModifyVRouterAttributeRequest.h"
 #include "model/ModifyVRouterAttributeResult.h"
 #include "model/ModifyVRouterAttributeResult.h"
 
 
@@ -1146,6 +1150,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::DeleteVirtualBorderRouterResult> DeleteVirtualBorderRouterOutcome;
 			typedef Outcome<Error, Model::DeleteVirtualBorderRouterResult> DeleteVirtualBorderRouterOutcome;
 			typedef std::future<DeleteVirtualBorderRouterOutcome> DeleteVirtualBorderRouterOutcomeCallable;
 			typedef std::future<DeleteVirtualBorderRouterOutcome> DeleteVirtualBorderRouterOutcomeCallable;
 			typedef std::function<void(const EcsClient*, const Model::DeleteVirtualBorderRouterRequest&, const DeleteVirtualBorderRouterOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteVirtualBorderRouterAsyncHandler;
 			typedef std::function<void(const EcsClient*, const Model::DeleteVirtualBorderRouterRequest&, const DeleteVirtualBorderRouterOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteVirtualBorderRouterAsyncHandler;
+			typedef Outcome<Error, Model::DescribeCloudAssistantStatusResult> DescribeCloudAssistantStatusOutcome;
+			typedef std::future<DescribeCloudAssistantStatusOutcome> DescribeCloudAssistantStatusOutcomeCallable;
+			typedef std::function<void(const EcsClient*, const Model::DescribeCloudAssistantStatusRequest&, const DescribeCloudAssistantStatusOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeCloudAssistantStatusAsyncHandler;
 			typedef Outcome<Error, Model::DescribeInstancePhysicalAttributeResult> DescribeInstancePhysicalAttributeOutcome;
 			typedef Outcome<Error, Model::DescribeInstancePhysicalAttributeResult> DescribeInstancePhysicalAttributeOutcome;
 			typedef std::future<DescribeInstancePhysicalAttributeOutcome> DescribeInstancePhysicalAttributeOutcomeCallable;
 			typedef std::future<DescribeInstancePhysicalAttributeOutcome> DescribeInstancePhysicalAttributeOutcomeCallable;
 			typedef std::function<void(const EcsClient*, const Model::DescribeInstancePhysicalAttributeRequest&, const DescribeInstancePhysicalAttributeOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeInstancePhysicalAttributeAsyncHandler;
 			typedef std::function<void(const EcsClient*, const Model::DescribeInstancePhysicalAttributeRequest&, const DescribeInstancePhysicalAttributeOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeInstancePhysicalAttributeAsyncHandler;
@@ -1248,6 +1255,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::AttachInstanceRamRoleResult> AttachInstanceRamRoleOutcome;
 			typedef Outcome<Error, Model::AttachInstanceRamRoleResult> AttachInstanceRamRoleOutcome;
 			typedef std::future<AttachInstanceRamRoleOutcome> AttachInstanceRamRoleOutcomeCallable;
 			typedef std::future<AttachInstanceRamRoleOutcome> AttachInstanceRamRoleOutcomeCallable;
 			typedef std::function<void(const EcsClient*, const Model::AttachInstanceRamRoleRequest&, const AttachInstanceRamRoleOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AttachInstanceRamRoleAsyncHandler;
 			typedef std::function<void(const EcsClient*, const Model::AttachInstanceRamRoleRequest&, const AttachInstanceRamRoleOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AttachInstanceRamRoleAsyncHandler;
+			typedef Outcome<Error, Model::InstallCloudAssistantResult> InstallCloudAssistantOutcome;
+			typedef std::future<InstallCloudAssistantOutcome> InstallCloudAssistantOutcomeCallable;
+			typedef std::function<void(const EcsClient*, const Model::InstallCloudAssistantRequest&, const InstallCloudAssistantOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> InstallCloudAssistantAsyncHandler;
 			typedef Outcome<Error, Model::ModifyVRouterAttributeResult> ModifyVRouterAttributeOutcome;
 			typedef Outcome<Error, Model::ModifyVRouterAttributeResult> ModifyVRouterAttributeOutcome;
 			typedef std::future<ModifyVRouterAttributeOutcome> ModifyVRouterAttributeOutcomeCallable;
 			typedef std::future<ModifyVRouterAttributeOutcome> ModifyVRouterAttributeOutcomeCallable;
 			typedef std::function<void(const EcsClient*, const Model::ModifyVRouterAttributeRequest&, const ModifyVRouterAttributeOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyVRouterAttributeAsyncHandler;
 			typedef std::function<void(const EcsClient*, const Model::ModifyVRouterAttributeRequest&, const ModifyVRouterAttributeOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyVRouterAttributeAsyncHandler;
@@ -1883,6 +1893,9 @@ namespace AlibabaCloud
 			DeleteVirtualBorderRouterOutcome deleteVirtualBorderRouter(const Model::DeleteVirtualBorderRouterRequest &request)const;
 			DeleteVirtualBorderRouterOutcome deleteVirtualBorderRouter(const Model::DeleteVirtualBorderRouterRequest &request)const;
 			void deleteVirtualBorderRouterAsync(const Model::DeleteVirtualBorderRouterRequest& request, const DeleteVirtualBorderRouterAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			void deleteVirtualBorderRouterAsync(const Model::DeleteVirtualBorderRouterRequest& request, const DeleteVirtualBorderRouterAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DeleteVirtualBorderRouterOutcomeCallable deleteVirtualBorderRouterCallable(const Model::DeleteVirtualBorderRouterRequest& request) const;
 			DeleteVirtualBorderRouterOutcomeCallable deleteVirtualBorderRouterCallable(const Model::DeleteVirtualBorderRouterRequest& request) const;
+			DescribeCloudAssistantStatusOutcome describeCloudAssistantStatus(const Model::DescribeCloudAssistantStatusRequest &request)const;
+			void describeCloudAssistantStatusAsync(const Model::DescribeCloudAssistantStatusRequest& request, const DescribeCloudAssistantStatusAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeCloudAssistantStatusOutcomeCallable describeCloudAssistantStatusCallable(const Model::DescribeCloudAssistantStatusRequest& request) const;
 			DescribeInstancePhysicalAttributeOutcome describeInstancePhysicalAttribute(const Model::DescribeInstancePhysicalAttributeRequest &request)const;
 			DescribeInstancePhysicalAttributeOutcome describeInstancePhysicalAttribute(const Model::DescribeInstancePhysicalAttributeRequest &request)const;
 			void describeInstancePhysicalAttributeAsync(const Model::DescribeInstancePhysicalAttributeRequest& request, const DescribeInstancePhysicalAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			void describeInstancePhysicalAttributeAsync(const Model::DescribeInstancePhysicalAttributeRequest& request, const DescribeInstancePhysicalAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DescribeInstancePhysicalAttributeOutcomeCallable describeInstancePhysicalAttributeCallable(const Model::DescribeInstancePhysicalAttributeRequest& request) const;
 			DescribeInstancePhysicalAttributeOutcomeCallable describeInstancePhysicalAttributeCallable(const Model::DescribeInstancePhysicalAttributeRequest& request) const;
@@ -1985,6 +1998,9 @@ namespace AlibabaCloud
 			AttachInstanceRamRoleOutcome attachInstanceRamRole(const Model::AttachInstanceRamRoleRequest &request)const;
 			AttachInstanceRamRoleOutcome attachInstanceRamRole(const Model::AttachInstanceRamRoleRequest &request)const;
 			void attachInstanceRamRoleAsync(const Model::AttachInstanceRamRoleRequest& request, const AttachInstanceRamRoleAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			void attachInstanceRamRoleAsync(const Model::AttachInstanceRamRoleRequest& request, const AttachInstanceRamRoleAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			AttachInstanceRamRoleOutcomeCallable attachInstanceRamRoleCallable(const Model::AttachInstanceRamRoleRequest& request) const;
 			AttachInstanceRamRoleOutcomeCallable attachInstanceRamRoleCallable(const Model::AttachInstanceRamRoleRequest& request) const;
+			InstallCloudAssistantOutcome installCloudAssistant(const Model::InstallCloudAssistantRequest &request)const;
+			void installCloudAssistantAsync(const Model::InstallCloudAssistantRequest& request, const InstallCloudAssistantAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			InstallCloudAssistantOutcomeCallable installCloudAssistantCallable(const Model::InstallCloudAssistantRequest& request) const;
 			ModifyVRouterAttributeOutcome modifyVRouterAttribute(const Model::ModifyVRouterAttributeRequest &request)const;
 			ModifyVRouterAttributeOutcome modifyVRouterAttribute(const Model::ModifyVRouterAttributeRequest &request)const;
 			void modifyVRouterAttributeAsync(const Model::ModifyVRouterAttributeRequest& request, const ModifyVRouterAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			void modifyVRouterAttributeAsync(const Model::ModifyVRouterAttributeRequest& request, const ModifyVRouterAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ModifyVRouterAttributeOutcomeCallable modifyVRouterAttributeCallable(const Model::ModifyVRouterAttributeRequest& request) const;
 			ModifyVRouterAttributeOutcomeCallable modifyVRouterAttributeCallable(const Model::ModifyVRouterAttributeRequest& request) const;

+ 120 - 0
ecs/include/alibabacloud/ecs/model/DescribeCloudAssistantStatusRequest.h

@@ -0,0 +1,120 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_ECS_MODEL_DESCRIBECLOUDASSISTANTSTATUSREQUEST_H_
+#define ALIBABACLOUD_ECS_MODEL_DESCRIBECLOUDASSISTANTSTATUSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/ecs/EcsExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Ecs
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_ECS_EXPORT DescribeCloudAssistantStatusRequest : public RpcServiceRequest
+			{
+
+			public:
+				DescribeCloudAssistantStatusRequest();
+				~DescribeCloudAssistantStatusRequest();
+
+				long getResourceOwnerId()const;
+				void setResourceOwnerId(long resourceOwnerId);
+				long getCallerParentId()const;
+				void setCallerParentId(long callerParentId);
+				bool getProxy_original_security_transport()const;
+				void setProxy_original_security_transport(bool proxy_original_security_transport);
+				std::string getProxy_original_source_ip()const;
+				void setProxy_original_source_ip(const std::string& proxy_original_source_ip);
+				std::string getOwnerIdLoginEmail()const;
+				void setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail);
+				std::string getCallerType()const;
+				void setCallerType(const std::string& callerType);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				std::string getResourceGroupId()const;
+				void setResourceGroupId(const std::string& resourceGroupId);
+				std::string getSecurityToken()const;
+				void setSecurityToken(const std::string& securityToken);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				bool getEnable()const;
+				void setEnable(bool enable);
+				std::string getRequestContent()const;
+				void setRequestContent(const std::string& requestContent);
+				std::string getCallerBidEmail()const;
+				void setCallerBidEmail(const std::string& callerBidEmail);
+				std::string getCallerUidEmail()const;
+				void setCallerUidEmail(const std::string& callerUidEmail);
+				long getCallerUid()const;
+				void setCallerUid(long callerUid);
+				std::string getApp_ip()const;
+				void setApp_ip(const std::string& app_ip);
+				std::string getResourceOwnerAccount()const;
+				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
+				std::string getOwnerAccount()const;
+				void setOwnerAccount(const std::string& ownerAccount);
+				std::string getCallerBid()const;
+				void setCallerBid(const std::string& callerBid);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				bool getProxy_trust_transport_info()const;
+				void setProxy_trust_transport_info(bool proxy_trust_transport_info);
+				bool getAk_mfa_present()const;
+				void setAk_mfa_present(bool ak_mfa_present);
+				bool getSecurity_transport()const;
+				void setSecurity_transport(bool security_transport);
+				std::vector<std::string> getInstanceId()const;
+				void setInstanceId(const std::vector<std::string>& instanceId);
+				std::string getRequestId()const;
+				void setRequestId(const std::string& requestId);
+
+            private:
+				long resourceOwnerId_;
+				long callerParentId_;
+				bool proxy_original_security_transport_;
+				std::string proxy_original_source_ip_;
+				std::string ownerIdLoginEmail_;
+				std::string callerType_;
+				std::string accessKeyId_;
+				std::string resourceGroupId_;
+				std::string securityToken_;
+				std::string regionId_;
+				bool enable_;
+				std::string requestContent_;
+				std::string callerBidEmail_;
+				std::string callerUidEmail_;
+				long callerUid_;
+				std::string app_ip_;
+				std::string resourceOwnerAccount_;
+				std::string ownerAccount_;
+				std::string callerBid_;
+				long ownerId_;
+				bool proxy_trust_transport_info_;
+				bool ak_mfa_present_;
+				bool security_transport_;
+				std::vector<std::string> instanceId_;
+				std::string requestId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_ECS_MODEL_DESCRIBECLOUDASSISTANTSTATUSREQUEST_H_

+ 56 - 0
ecs/include/alibabacloud/ecs/model/DescribeCloudAssistantStatusResult.h

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

+ 2 - 0
ecs/include/alibabacloud/ecs/model/DescribeInstanceMonitorDataResult.h

@@ -41,10 +41,12 @@ namespace AlibabaCloud
 					std::string instanceId;
 					std::string instanceId;
 					int intranetTX;
 					int intranetTX;
 					int cPU;
 					int cPU;
+					float cPUAdvanceCreditBalance;
 					int bPSRead;
 					int bPSRead;
 					int intranetRX;
 					int intranetRX;
 					std::string timeStamp;
 					std::string timeStamp;
 					int internetBandwidth;
 					int internetBandwidth;
+					float cPUNotpaidSurplusCreditUsage;
 					float cPUCreditBalance;
 					float cPUCreditBalance;
 					int internetTX;
 					int internetTX;
 					int internetRX;
 					int internetRX;

+ 120 - 0
ecs/include/alibabacloud/ecs/model/InstallCloudAssistantRequest.h

@@ -0,0 +1,120 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_ECS_MODEL_INSTALLCLOUDASSISTANTREQUEST_H_
+#define ALIBABACLOUD_ECS_MODEL_INSTALLCLOUDASSISTANTREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/ecs/EcsExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Ecs
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_ECS_EXPORT InstallCloudAssistantRequest : public RpcServiceRequest
+			{
+
+			public:
+				InstallCloudAssistantRequest();
+				~InstallCloudAssistantRequest();
+
+				long getResourceOwnerId()const;
+				void setResourceOwnerId(long resourceOwnerId);
+				long getCallerParentId()const;
+				void setCallerParentId(long callerParentId);
+				bool getProxy_original_security_transport()const;
+				void setProxy_original_security_transport(bool proxy_original_security_transport);
+				std::string getProxy_original_source_ip()const;
+				void setProxy_original_source_ip(const std::string& proxy_original_source_ip);
+				std::string getOwnerIdLoginEmail()const;
+				void setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail);
+				std::string getCallerType()const;
+				void setCallerType(const std::string& callerType);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+				std::string getResourceGroupId()const;
+				void setResourceGroupId(const std::string& resourceGroupId);
+				std::string getSecurityToken()const;
+				void setSecurityToken(const std::string& securityToken);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				bool getEnable()const;
+				void setEnable(bool enable);
+				std::string getRequestContent()const;
+				void setRequestContent(const std::string& requestContent);
+				std::string getCallerBidEmail()const;
+				void setCallerBidEmail(const std::string& callerBidEmail);
+				std::string getCallerUidEmail()const;
+				void setCallerUidEmail(const std::string& callerUidEmail);
+				long getCallerUid()const;
+				void setCallerUid(long callerUid);
+				std::string getApp_ip()const;
+				void setApp_ip(const std::string& app_ip);
+				std::string getResourceOwnerAccount()const;
+				void setResourceOwnerAccount(const std::string& resourceOwnerAccount);
+				std::string getOwnerAccount()const;
+				void setOwnerAccount(const std::string& ownerAccount);
+				std::string getCallerBid()const;
+				void setCallerBid(const std::string& callerBid);
+				long getOwnerId()const;
+				void setOwnerId(long ownerId);
+				bool getProxy_trust_transport_info()const;
+				void setProxy_trust_transport_info(bool proxy_trust_transport_info);
+				bool getAk_mfa_present()const;
+				void setAk_mfa_present(bool ak_mfa_present);
+				bool getSecurity_transport()const;
+				void setSecurity_transport(bool security_transport);
+				std::vector<std::string> getInstanceId()const;
+				void setInstanceId(const std::vector<std::string>& instanceId);
+				std::string getRequestId()const;
+				void setRequestId(const std::string& requestId);
+
+            private:
+				long resourceOwnerId_;
+				long callerParentId_;
+				bool proxy_original_security_transport_;
+				std::string proxy_original_source_ip_;
+				std::string ownerIdLoginEmail_;
+				std::string callerType_;
+				std::string accessKeyId_;
+				std::string resourceGroupId_;
+				std::string securityToken_;
+				std::string regionId_;
+				bool enable_;
+				std::string requestContent_;
+				std::string callerBidEmail_;
+				std::string callerUidEmail_;
+				long callerUid_;
+				std::string app_ip_;
+				std::string resourceOwnerAccount_;
+				std::string ownerAccount_;
+				std::string callerBid_;
+				long ownerId_;
+				bool proxy_trust_transport_info_;
+				bool ak_mfa_present_;
+				bool security_transport_;
+				std::vector<std::string> instanceId_;
+				std::string requestId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_ECS_MODEL_INSTALLCLOUDASSISTANTREQUEST_H_

+ 49 - 0
ecs/include/alibabacloud/ecs/model/InstallCloudAssistantResult.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_ECS_MODEL_INSTALLCLOUDASSISTANTRESULT_H_
+#define ALIBABACLOUD_ECS_MODEL_INSTALLCLOUDASSISTANTRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/ecs/EcsExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Ecs
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_ECS_EXPORT InstallCloudAssistantResult : public ServiceResult
+			{
+			public:
+
+
+				InstallCloudAssistantResult();
+				explicit InstallCloudAssistantResult(const std::string &payload);
+				~InstallCloudAssistantResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_ECS_MODEL_INSTALLCLOUDASSISTANTRESULT_H_

+ 72 - 0
ecs/src/EcsClient.cc

@@ -7575,6 +7575,42 @@ EcsClient::DeleteVirtualBorderRouterOutcomeCallable EcsClient::deleteVirtualBord
 	return task->get_future();
 	return task->get_future();
 }
 }
 
 
+EcsClient::DescribeCloudAssistantStatusOutcome EcsClient::describeCloudAssistantStatus(const DescribeCloudAssistantStatusRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeCloudAssistantStatusOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeCloudAssistantStatusOutcome(DescribeCloudAssistantStatusResult(outcome.result()));
+	else
+		return DescribeCloudAssistantStatusOutcome(outcome.error());
+}
+
+void EcsClient::describeCloudAssistantStatusAsync(const DescribeCloudAssistantStatusRequest& request, const DescribeCloudAssistantStatusAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeCloudAssistantStatus(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+EcsClient::DescribeCloudAssistantStatusOutcomeCallable EcsClient::describeCloudAssistantStatusCallable(const DescribeCloudAssistantStatusRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeCloudAssistantStatusOutcome()>>(
+			[this, request]()
+			{
+			return this->describeCloudAssistantStatus(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 EcsClient::DescribeInstancePhysicalAttributeOutcome EcsClient::describeInstancePhysicalAttribute(const DescribeInstancePhysicalAttributeRequest &request) const
 EcsClient::DescribeInstancePhysicalAttributeOutcome EcsClient::describeInstancePhysicalAttribute(const DescribeInstancePhysicalAttributeRequest &request) const
 {
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -8799,6 +8835,42 @@ EcsClient::AttachInstanceRamRoleOutcomeCallable EcsClient::attachInstanceRamRole
 	return task->get_future();
 	return task->get_future();
 }
 }
 
 
+EcsClient::InstallCloudAssistantOutcome EcsClient::installCloudAssistant(const InstallCloudAssistantRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return InstallCloudAssistantOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return InstallCloudAssistantOutcome(InstallCloudAssistantResult(outcome.result()));
+	else
+		return InstallCloudAssistantOutcome(outcome.error());
+}
+
+void EcsClient::installCloudAssistantAsync(const InstallCloudAssistantRequest& request, const InstallCloudAssistantAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, installCloudAssistant(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+EcsClient::InstallCloudAssistantOutcomeCallable EcsClient::installCloudAssistantCallable(const InstallCloudAssistantRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<InstallCloudAssistantOutcome()>>(
+			[this, request]()
+			{
+			return this->installCloudAssistant(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 EcsClient::ModifyVRouterAttributeOutcome EcsClient::modifyVRouterAttribute(const ModifyVRouterAttributeRequest &request) const
 EcsClient::ModifyVRouterAttributeOutcome EcsClient::modifyVRouterAttribute(const ModifyVRouterAttributeRequest &request) const
 {
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
 	auto endpointOutcome = endpointProvider_->getEndpoint();

+ 303 - 0
ecs/src/model/DescribeCloudAssistantStatusRequest.cc

@@ -0,0 +1,303 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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/ecs/model/DescribeCloudAssistantStatusRequest.h>
+
+using AlibabaCloud::Ecs::Model::DescribeCloudAssistantStatusRequest;
+
+DescribeCloudAssistantStatusRequest::DescribeCloudAssistantStatusRequest() :
+	RpcServiceRequest("ecs", "2014-05-26", "DescribeCloudAssistantStatus")
+{}
+
+DescribeCloudAssistantStatusRequest::~DescribeCloudAssistantStatusRequest()
+{}
+
+long DescribeCloudAssistantStatusRequest::getResourceOwnerId()const
+{
+	return resourceOwnerId_;
+}
+
+void DescribeCloudAssistantStatusRequest::setResourceOwnerId(long resourceOwnerId)
+{
+	resourceOwnerId_ = resourceOwnerId;
+	setParameter("ResourceOwnerId", std::to_string(resourceOwnerId));
+}
+
+long DescribeCloudAssistantStatusRequest::getCallerParentId()const
+{
+	return callerParentId_;
+}
+
+void DescribeCloudAssistantStatusRequest::setCallerParentId(long callerParentId)
+{
+	callerParentId_ = callerParentId;
+	setParameter("CallerParentId", std::to_string(callerParentId));
+}
+
+bool DescribeCloudAssistantStatusRequest::getProxy_original_security_transport()const
+{
+	return proxy_original_security_transport_;
+}
+
+void DescribeCloudAssistantStatusRequest::setProxy_original_security_transport(bool proxy_original_security_transport)
+{
+	proxy_original_security_transport_ = proxy_original_security_transport;
+	setParameter("Proxy_original_security_transport", std::to_string(proxy_original_security_transport));
+}
+
+std::string DescribeCloudAssistantStatusRequest::getProxy_original_source_ip()const
+{
+	return proxy_original_source_ip_;
+}
+
+void DescribeCloudAssistantStatusRequest::setProxy_original_source_ip(const std::string& proxy_original_source_ip)
+{
+	proxy_original_source_ip_ = proxy_original_source_ip;
+	setParameter("Proxy_original_source_ip", proxy_original_source_ip);
+}
+
+std::string DescribeCloudAssistantStatusRequest::getOwnerIdLoginEmail()const
+{
+	return ownerIdLoginEmail_;
+}
+
+void DescribeCloudAssistantStatusRequest::setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail)
+{
+	ownerIdLoginEmail_ = ownerIdLoginEmail;
+	setParameter("OwnerIdLoginEmail", ownerIdLoginEmail);
+}
+
+std::string DescribeCloudAssistantStatusRequest::getCallerType()const
+{
+	return callerType_;
+}
+
+void DescribeCloudAssistantStatusRequest::setCallerType(const std::string& callerType)
+{
+	callerType_ = callerType;
+	setParameter("CallerType", callerType);
+}
+
+std::string DescribeCloudAssistantStatusRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void DescribeCloudAssistantStatusRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+std::string DescribeCloudAssistantStatusRequest::getResourceGroupId()const
+{
+	return resourceGroupId_;
+}
+
+void DescribeCloudAssistantStatusRequest::setResourceGroupId(const std::string& resourceGroupId)
+{
+	resourceGroupId_ = resourceGroupId;
+	setParameter("ResourceGroupId", resourceGroupId);
+}
+
+std::string DescribeCloudAssistantStatusRequest::getSecurityToken()const
+{
+	return securityToken_;
+}
+
+void DescribeCloudAssistantStatusRequest::setSecurityToken(const std::string& securityToken)
+{
+	securityToken_ = securityToken;
+	setParameter("SecurityToken", securityToken);
+}
+
+std::string DescribeCloudAssistantStatusRequest::getRegionId()const
+{
+	return regionId_;
+}
+
+void DescribeCloudAssistantStatusRequest::setRegionId(const std::string& regionId)
+{
+	regionId_ = regionId;
+	setParameter("RegionId", regionId);
+}
+
+bool DescribeCloudAssistantStatusRequest::getEnable()const
+{
+	return enable_;
+}
+
+void DescribeCloudAssistantStatusRequest::setEnable(bool enable)
+{
+	enable_ = enable;
+	setParameter("Enable", std::to_string(enable));
+}
+
+std::string DescribeCloudAssistantStatusRequest::getRequestContent()const
+{
+	return requestContent_;
+}
+
+void DescribeCloudAssistantStatusRequest::setRequestContent(const std::string& requestContent)
+{
+	requestContent_ = requestContent;
+	setParameter("RequestContent", requestContent);
+}
+
+std::string DescribeCloudAssistantStatusRequest::getCallerBidEmail()const
+{
+	return callerBidEmail_;
+}
+
+void DescribeCloudAssistantStatusRequest::setCallerBidEmail(const std::string& callerBidEmail)
+{
+	callerBidEmail_ = callerBidEmail;
+	setParameter("CallerBidEmail", callerBidEmail);
+}
+
+std::string DescribeCloudAssistantStatusRequest::getCallerUidEmail()const
+{
+	return callerUidEmail_;
+}
+
+void DescribeCloudAssistantStatusRequest::setCallerUidEmail(const std::string& callerUidEmail)
+{
+	callerUidEmail_ = callerUidEmail;
+	setParameter("CallerUidEmail", callerUidEmail);
+}
+
+long DescribeCloudAssistantStatusRequest::getCallerUid()const
+{
+	return callerUid_;
+}
+
+void DescribeCloudAssistantStatusRequest::setCallerUid(long callerUid)
+{
+	callerUid_ = callerUid;
+	setParameter("CallerUid", std::to_string(callerUid));
+}
+
+std::string DescribeCloudAssistantStatusRequest::getApp_ip()const
+{
+	return app_ip_;
+}
+
+void DescribeCloudAssistantStatusRequest::setApp_ip(const std::string& app_ip)
+{
+	app_ip_ = app_ip;
+	setParameter("App_ip", app_ip);
+}
+
+std::string DescribeCloudAssistantStatusRequest::getResourceOwnerAccount()const
+{
+	return resourceOwnerAccount_;
+}
+
+void DescribeCloudAssistantStatusRequest::setResourceOwnerAccount(const std::string& resourceOwnerAccount)
+{
+	resourceOwnerAccount_ = resourceOwnerAccount;
+	setParameter("ResourceOwnerAccount", resourceOwnerAccount);
+}
+
+std::string DescribeCloudAssistantStatusRequest::getOwnerAccount()const
+{
+	return ownerAccount_;
+}
+
+void DescribeCloudAssistantStatusRequest::setOwnerAccount(const std::string& ownerAccount)
+{
+	ownerAccount_ = ownerAccount;
+	setParameter("OwnerAccount", ownerAccount);
+}
+
+std::string DescribeCloudAssistantStatusRequest::getCallerBid()const
+{
+	return callerBid_;
+}
+
+void DescribeCloudAssistantStatusRequest::setCallerBid(const std::string& callerBid)
+{
+	callerBid_ = callerBid;
+	setParameter("CallerBid", callerBid);
+}
+
+long DescribeCloudAssistantStatusRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void DescribeCloudAssistantStatusRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+bool DescribeCloudAssistantStatusRequest::getProxy_trust_transport_info()const
+{
+	return proxy_trust_transport_info_;
+}
+
+void DescribeCloudAssistantStatusRequest::setProxy_trust_transport_info(bool proxy_trust_transport_info)
+{
+	proxy_trust_transport_info_ = proxy_trust_transport_info;
+	setParameter("Proxy_trust_transport_info", std::to_string(proxy_trust_transport_info));
+}
+
+bool DescribeCloudAssistantStatusRequest::getAk_mfa_present()const
+{
+	return ak_mfa_present_;
+}
+
+void DescribeCloudAssistantStatusRequest::setAk_mfa_present(bool ak_mfa_present)
+{
+	ak_mfa_present_ = ak_mfa_present;
+	setParameter("Ak_mfa_present", std::to_string(ak_mfa_present));
+}
+
+bool DescribeCloudAssistantStatusRequest::getSecurity_transport()const
+{
+	return security_transport_;
+}
+
+void DescribeCloudAssistantStatusRequest::setSecurity_transport(bool security_transport)
+{
+	security_transport_ = security_transport;
+	setParameter("Security_transport", std::to_string(security_transport));
+}
+
+std::vector<std::string> DescribeCloudAssistantStatusRequest::getInstanceId()const
+{
+	return instanceId_;
+}
+
+void DescribeCloudAssistantStatusRequest::setInstanceId(const std::vector<std::string>& instanceId)
+{
+	instanceId_ = instanceId;
+	for(int i = 0; i!= instanceId.size(); i++)
+		setParameter("InstanceId."+ std::to_string(i), instanceId.at(i));
+}
+
+std::string DescribeCloudAssistantStatusRequest::getRequestId()const
+{
+	return requestId_;
+}
+
+void DescribeCloudAssistantStatusRequest::setRequestId(const std::string& requestId)
+{
+	requestId_ = requestId;
+	setParameter("RequestId", requestId);
+}
+

+ 60 - 0
ecs/src/model/DescribeCloudAssistantStatusResult.cc

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

+ 4 - 0
ecs/src/model/DescribeInstanceMonitorDataResult.cc

@@ -72,6 +72,10 @@ void DescribeInstanceMonitorDataResult::parse(const std::string &payload)
 			monitorDataObject.cPUCreditUsage = std::stof(value["CPUCreditUsage"].asString());
 			monitorDataObject.cPUCreditUsage = std::stof(value["CPUCreditUsage"].asString());
 		if(!value["CPUCreditBalance"].isNull())
 		if(!value["CPUCreditBalance"].isNull())
 			monitorDataObject.cPUCreditBalance = std::stof(value["CPUCreditBalance"].asString());
 			monitorDataObject.cPUCreditBalance = std::stof(value["CPUCreditBalance"].asString());
+		if(!value["CPUAdvanceCreditBalance"].isNull())
+			monitorDataObject.cPUAdvanceCreditBalance = std::stof(value["CPUAdvanceCreditBalance"].asString());
+		if(!value["CPUNotpaidSurplusCreditUsage"].isNull())
+			monitorDataObject.cPUNotpaidSurplusCreditUsage = std::stof(value["CPUNotpaidSurplusCreditUsage"].asString());
 		if(!value["TimeStamp"].isNull())
 		if(!value["TimeStamp"].isNull())
 			monitorDataObject.timeStamp = value["TimeStamp"].asString();
 			monitorDataObject.timeStamp = value["TimeStamp"].asString();
 		monitorData_.push_back(monitorDataObject);
 		monitorData_.push_back(monitorDataObject);

+ 303 - 0
ecs/src/model/InstallCloudAssistantRequest.cc

@@ -0,0 +1,303 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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/ecs/model/InstallCloudAssistantRequest.h>
+
+using AlibabaCloud::Ecs::Model::InstallCloudAssistantRequest;
+
+InstallCloudAssistantRequest::InstallCloudAssistantRequest() :
+	RpcServiceRequest("ecs", "2014-05-26", "InstallCloudAssistant")
+{}
+
+InstallCloudAssistantRequest::~InstallCloudAssistantRequest()
+{}
+
+long InstallCloudAssistantRequest::getResourceOwnerId()const
+{
+	return resourceOwnerId_;
+}
+
+void InstallCloudAssistantRequest::setResourceOwnerId(long resourceOwnerId)
+{
+	resourceOwnerId_ = resourceOwnerId;
+	setParameter("ResourceOwnerId", std::to_string(resourceOwnerId));
+}
+
+long InstallCloudAssistantRequest::getCallerParentId()const
+{
+	return callerParentId_;
+}
+
+void InstallCloudAssistantRequest::setCallerParentId(long callerParentId)
+{
+	callerParentId_ = callerParentId;
+	setParameter("CallerParentId", std::to_string(callerParentId));
+}
+
+bool InstallCloudAssistantRequest::getProxy_original_security_transport()const
+{
+	return proxy_original_security_transport_;
+}
+
+void InstallCloudAssistantRequest::setProxy_original_security_transport(bool proxy_original_security_transport)
+{
+	proxy_original_security_transport_ = proxy_original_security_transport;
+	setParameter("Proxy_original_security_transport", std::to_string(proxy_original_security_transport));
+}
+
+std::string InstallCloudAssistantRequest::getProxy_original_source_ip()const
+{
+	return proxy_original_source_ip_;
+}
+
+void InstallCloudAssistantRequest::setProxy_original_source_ip(const std::string& proxy_original_source_ip)
+{
+	proxy_original_source_ip_ = proxy_original_source_ip;
+	setParameter("Proxy_original_source_ip", proxy_original_source_ip);
+}
+
+std::string InstallCloudAssistantRequest::getOwnerIdLoginEmail()const
+{
+	return ownerIdLoginEmail_;
+}
+
+void InstallCloudAssistantRequest::setOwnerIdLoginEmail(const std::string& ownerIdLoginEmail)
+{
+	ownerIdLoginEmail_ = ownerIdLoginEmail;
+	setParameter("OwnerIdLoginEmail", ownerIdLoginEmail);
+}
+
+std::string InstallCloudAssistantRequest::getCallerType()const
+{
+	return callerType_;
+}
+
+void InstallCloudAssistantRequest::setCallerType(const std::string& callerType)
+{
+	callerType_ = callerType;
+	setParameter("CallerType", callerType);
+}
+
+std::string InstallCloudAssistantRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void InstallCloudAssistantRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+
+std::string InstallCloudAssistantRequest::getResourceGroupId()const
+{
+	return resourceGroupId_;
+}
+
+void InstallCloudAssistantRequest::setResourceGroupId(const std::string& resourceGroupId)
+{
+	resourceGroupId_ = resourceGroupId;
+	setParameter("ResourceGroupId", resourceGroupId);
+}
+
+std::string InstallCloudAssistantRequest::getSecurityToken()const
+{
+	return securityToken_;
+}
+
+void InstallCloudAssistantRequest::setSecurityToken(const std::string& securityToken)
+{
+	securityToken_ = securityToken;
+	setParameter("SecurityToken", securityToken);
+}
+
+std::string InstallCloudAssistantRequest::getRegionId()const
+{
+	return regionId_;
+}
+
+void InstallCloudAssistantRequest::setRegionId(const std::string& regionId)
+{
+	regionId_ = regionId;
+	setParameter("RegionId", regionId);
+}
+
+bool InstallCloudAssistantRequest::getEnable()const
+{
+	return enable_;
+}
+
+void InstallCloudAssistantRequest::setEnable(bool enable)
+{
+	enable_ = enable;
+	setParameter("Enable", std::to_string(enable));
+}
+
+std::string InstallCloudAssistantRequest::getRequestContent()const
+{
+	return requestContent_;
+}
+
+void InstallCloudAssistantRequest::setRequestContent(const std::string& requestContent)
+{
+	requestContent_ = requestContent;
+	setParameter("RequestContent", requestContent);
+}
+
+std::string InstallCloudAssistantRequest::getCallerBidEmail()const
+{
+	return callerBidEmail_;
+}
+
+void InstallCloudAssistantRequest::setCallerBidEmail(const std::string& callerBidEmail)
+{
+	callerBidEmail_ = callerBidEmail;
+	setParameter("CallerBidEmail", callerBidEmail);
+}
+
+std::string InstallCloudAssistantRequest::getCallerUidEmail()const
+{
+	return callerUidEmail_;
+}
+
+void InstallCloudAssistantRequest::setCallerUidEmail(const std::string& callerUidEmail)
+{
+	callerUidEmail_ = callerUidEmail;
+	setParameter("CallerUidEmail", callerUidEmail);
+}
+
+long InstallCloudAssistantRequest::getCallerUid()const
+{
+	return callerUid_;
+}
+
+void InstallCloudAssistantRequest::setCallerUid(long callerUid)
+{
+	callerUid_ = callerUid;
+	setParameter("CallerUid", std::to_string(callerUid));
+}
+
+std::string InstallCloudAssistantRequest::getApp_ip()const
+{
+	return app_ip_;
+}
+
+void InstallCloudAssistantRequest::setApp_ip(const std::string& app_ip)
+{
+	app_ip_ = app_ip;
+	setParameter("App_ip", app_ip);
+}
+
+std::string InstallCloudAssistantRequest::getResourceOwnerAccount()const
+{
+	return resourceOwnerAccount_;
+}
+
+void InstallCloudAssistantRequest::setResourceOwnerAccount(const std::string& resourceOwnerAccount)
+{
+	resourceOwnerAccount_ = resourceOwnerAccount;
+	setParameter("ResourceOwnerAccount", resourceOwnerAccount);
+}
+
+std::string InstallCloudAssistantRequest::getOwnerAccount()const
+{
+	return ownerAccount_;
+}
+
+void InstallCloudAssistantRequest::setOwnerAccount(const std::string& ownerAccount)
+{
+	ownerAccount_ = ownerAccount;
+	setParameter("OwnerAccount", ownerAccount);
+}
+
+std::string InstallCloudAssistantRequest::getCallerBid()const
+{
+	return callerBid_;
+}
+
+void InstallCloudAssistantRequest::setCallerBid(const std::string& callerBid)
+{
+	callerBid_ = callerBid;
+	setParameter("CallerBid", callerBid);
+}
+
+long InstallCloudAssistantRequest::getOwnerId()const
+{
+	return ownerId_;
+}
+
+void InstallCloudAssistantRequest::setOwnerId(long ownerId)
+{
+	ownerId_ = ownerId;
+	setParameter("OwnerId", std::to_string(ownerId));
+}
+
+bool InstallCloudAssistantRequest::getProxy_trust_transport_info()const
+{
+	return proxy_trust_transport_info_;
+}
+
+void InstallCloudAssistantRequest::setProxy_trust_transport_info(bool proxy_trust_transport_info)
+{
+	proxy_trust_transport_info_ = proxy_trust_transport_info;
+	setParameter("Proxy_trust_transport_info", std::to_string(proxy_trust_transport_info));
+}
+
+bool InstallCloudAssistantRequest::getAk_mfa_present()const
+{
+	return ak_mfa_present_;
+}
+
+void InstallCloudAssistantRequest::setAk_mfa_present(bool ak_mfa_present)
+{
+	ak_mfa_present_ = ak_mfa_present;
+	setParameter("Ak_mfa_present", std::to_string(ak_mfa_present));
+}
+
+bool InstallCloudAssistantRequest::getSecurity_transport()const
+{
+	return security_transport_;
+}
+
+void InstallCloudAssistantRequest::setSecurity_transport(bool security_transport)
+{
+	security_transport_ = security_transport;
+	setParameter("Security_transport", std::to_string(security_transport));
+}
+
+std::vector<std::string> InstallCloudAssistantRequest::getInstanceId()const
+{
+	return instanceId_;
+}
+
+void InstallCloudAssistantRequest::setInstanceId(const std::vector<std::string>& instanceId)
+{
+	instanceId_ = instanceId;
+	for(int i = 0; i!= instanceId.size(); i++)
+		setParameter("InstanceId."+ std::to_string(i), instanceId.at(i));
+}
+
+std::string InstallCloudAssistantRequest::getRequestId()const
+{
+	return requestId_;
+}
+
+void InstallCloudAssistantRequest::setRequestId(const std::string& requestId)
+{
+	requestId_ = requestId;
+	setParameter("RequestId", requestId);
+}
+

+ 45 - 0
ecs/src/model/InstallCloudAssistantResult.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/ecs/model/InstallCloudAssistantResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Ecs;
+using namespace AlibabaCloud::Ecs::Model;
+
+InstallCloudAssistantResult::InstallCloudAssistantResult() :
+	ServiceResult()
+{}
+
+InstallCloudAssistantResult::InstallCloudAssistantResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+InstallCloudAssistantResult::~InstallCloudAssistantResult()
+{}
+
+void InstallCloudAssistantResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+
+}
+