Bläddra i källkod

EHPC SDK Auto Released By qianzheng.llc,Version:1.24.0

Signed-off-by: yixiong.jxy <yixiong.jxy@alibaba-inc.com>
yixiong.jxy 8 år sedan
förälder
incheckning
c960a34373
33 ändrade filer med 1011 tillägg och 23 borttagningar
  1. 4 0
      CHANGELOG
  2. 1 1
      VERSION
  3. 12 0
      ehpc/CMakeLists.txt
  4. 24 0
      ehpc/include/alibabacloud/ehpc/EHPCClient.h
  5. 1 1
      ehpc/include/alibabacloud/ehpc/model/AddUsersRequest.h
  6. 4 1
      ehpc/include/alibabacloud/ehpc/model/CreateClusterRequest.h
  7. 3 0
      ehpc/include/alibabacloud/ehpc/model/CreateHybridClusterRequest.h
  8. 0 3
      ehpc/include/alibabacloud/ehpc/model/GetCloudMetricLogsRequest.h
  9. 57 0
      ehpc/include/alibabacloud/ehpc/model/GetCloudMetricProfilingRequest.h
  10. 58 0
      ehpc/include/alibabacloud/ehpc/model/GetCloudMetricProfilingResult.h
  11. 60 0
      ehpc/include/alibabacloud/ehpc/model/ListCloudMetricProfilingsRequest.h
  12. 67 0
      ehpc/include/alibabacloud/ehpc/model/ListCloudMetricProfilingsResult.h
  13. 2 0
      ehpc/include/alibabacloud/ehpc/model/ListNodesNoPagingResult.h
  14. 2 0
      ehpc/include/alibabacloud/ehpc/model/ListNodesResult.h
  15. 1 1
      ehpc/include/alibabacloud/ehpc/model/ModifyImageGatewayConfigRequest.h
  16. 1 1
      ehpc/include/alibabacloud/ehpc/model/ModifyUserPasswordsRequest.h
  17. 66 0
      ehpc/include/alibabacloud/ehpc/model/RunCloudMetricProfilingRequest.h
  18. 49 0
      ehpc/include/alibabacloud/ehpc/model/RunCloudMetricProfilingResult.h
  19. 108 0
      ehpc/src/EHPCClient.cc
  20. 1 1
      ehpc/src/model/AddUsersRequest.cc
  21. 12 1
      ehpc/src/model/CreateClusterRequest.cc
  22. 11 0
      ehpc/src/model/CreateHybridClusterRequest.cc
  23. 0 11
      ehpc/src/model/GetCloudMetricLogsRequest.cc
  24. 71 0
      ehpc/src/model/GetCloudMetricProfilingRequest.cc
  25. 64 0
      ehpc/src/model/GetCloudMetricProfilingResult.cc
  26. 82 0
      ehpc/src/model/ListCloudMetricProfilingsRequest.cc
  27. 91 0
      ehpc/src/model/ListCloudMetricProfilingsResult.cc
  28. 4 0
      ehpc/src/model/ListNodesNoPagingResult.cc
  29. 4 0
      ehpc/src/model/ListNodesResult.cc
  30. 1 1
      ehpc/src/model/ModifyImageGatewayConfigRequest.cc
  31. 1 1
      ehpc/src/model/ModifyUserPasswordsRequest.cc
  32. 104 0
      ehpc/src/model/RunCloudMetricProfilingRequest.cc
  33. 45 0
      ehpc/src/model/RunCloudMetricProfilingResult.cc

+ 4 - 0
CHANGELOG

@@ -1,3 +1,7 @@
+2018-08-28 Version: 1.24.0
+1, Add new APIs for profiling application performance: GetCloudMetricProfiling, etc.
+2, Add new APIs to support Shifter container applications: AddContainerApp, etc.
+
 2018-08-28 Version: 1.23.4
 1, Add param for DescribeRegions,support AcceptLanguage,RegionEndpoint.
 

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.23.4
+1.24.0

+ 12 - 0
ehpc/CMakeLists.txt

@@ -51,6 +51,8 @@ set(ehpc_public_header_model
 	include/alibabacloud/ehpc/model/StopJobsResult.h
 	include/alibabacloud/ehpc/model/StartNodesRequest.h
 	include/alibabacloud/ehpc/model/StartNodesResult.h
+	include/alibabacloud/ehpc/model/GetCloudMetricProfilingRequest.h
+	include/alibabacloud/ehpc/model/GetCloudMetricProfilingResult.h
 	include/alibabacloud/ehpc/model/GetAutoScaleConfigRequest.h
 	include/alibabacloud/ehpc/model/GetAutoScaleConfigResult.h
 	include/alibabacloud/ehpc/model/ListNodesRequest.h
@@ -119,6 +121,8 @@ set(ehpc_public_header_model
 	include/alibabacloud/ehpc/model/ModifyImageGatewayConfigResult.h
 	include/alibabacloud/ehpc/model/ListContainerAppsRequest.h
 	include/alibabacloud/ehpc/model/ListContainerAppsResult.h
+	include/alibabacloud/ehpc/model/ListCloudMetricProfilingsRequest.h
+	include/alibabacloud/ehpc/model/ListCloudMetricProfilingsResult.h
 	include/alibabacloud/ehpc/model/SetJobUserRequest.h
 	include/alibabacloud/ehpc/model/SetJobUserResult.h
 	include/alibabacloud/ehpc/model/ListClustersRequest.h
@@ -129,6 +133,8 @@ set(ehpc_public_header_model
 	include/alibabacloud/ehpc/model/ListRegionsResult.h
 	include/alibabacloud/ehpc/model/DescribeAutoScaleConfigRequest.h
 	include/alibabacloud/ehpc/model/DescribeAutoScaleConfigResult.h
+	include/alibabacloud/ehpc/model/RunCloudMetricProfilingRequest.h
+	include/alibabacloud/ehpc/model/RunCloudMetricProfilingResult.h
 	include/alibabacloud/ehpc/model/RerunJobsRequest.h
 	include/alibabacloud/ehpc/model/RerunJobsResult.h
 	include/alibabacloud/ehpc/model/EditJobTemplateRequest.h
@@ -176,6 +182,8 @@ set(ehpc_src
 	src/model/StopJobsResult.cc
 	src/model/StartNodesRequest.cc
 	src/model/StartNodesResult.cc
+	src/model/GetCloudMetricProfilingRequest.cc
+	src/model/GetCloudMetricProfilingResult.cc
 	src/model/GetAutoScaleConfigRequest.cc
 	src/model/GetAutoScaleConfigResult.cc
 	src/model/ListNodesRequest.cc
@@ -244,6 +252,8 @@ set(ehpc_src
 	src/model/ModifyImageGatewayConfigResult.cc
 	src/model/ListContainerAppsRequest.cc
 	src/model/ListContainerAppsResult.cc
+	src/model/ListCloudMetricProfilingsRequest.cc
+	src/model/ListCloudMetricProfilingsResult.cc
 	src/model/SetJobUserRequest.cc
 	src/model/SetJobUserResult.cc
 	src/model/ListClustersRequest.cc
@@ -254,6 +264,8 @@ set(ehpc_src
 	src/model/ListRegionsResult.cc
 	src/model/DescribeAutoScaleConfigRequest.cc
 	src/model/DescribeAutoScaleConfigResult.cc
+	src/model/RunCloudMetricProfilingRequest.cc
+	src/model/RunCloudMetricProfilingResult.cc
 	src/model/RerunJobsRequest.cc
 	src/model/RerunJobsResult.cc
 	src/model/EditJobTemplateRequest.cc

+ 24 - 0
ehpc/include/alibabacloud/ehpc/EHPCClient.h

@@ -52,6 +52,8 @@
 #include "model/StopJobsResult.h"
 #include "model/StartNodesRequest.h"
 #include "model/StartNodesResult.h"
+#include "model/GetCloudMetricProfilingRequest.h"
+#include "model/GetCloudMetricProfilingResult.h"
 #include "model/GetAutoScaleConfigRequest.h"
 #include "model/GetAutoScaleConfigResult.h"
 #include "model/ListNodesRequest.h"
@@ -120,6 +122,8 @@
 #include "model/ModifyImageGatewayConfigResult.h"
 #include "model/ListContainerAppsRequest.h"
 #include "model/ListContainerAppsResult.h"
+#include "model/ListCloudMetricProfilingsRequest.h"
+#include "model/ListCloudMetricProfilingsResult.h"
 #include "model/SetJobUserRequest.h"
 #include "model/SetJobUserResult.h"
 #include "model/ListClustersRequest.h"
@@ -130,6 +134,8 @@
 #include "model/ListRegionsResult.h"
 #include "model/DescribeAutoScaleConfigRequest.h"
 #include "model/DescribeAutoScaleConfigResult.h"
+#include "model/RunCloudMetricProfilingRequest.h"
+#include "model/RunCloudMetricProfilingResult.h"
 #include "model/RerunJobsRequest.h"
 #include "model/RerunJobsResult.h"
 #include "model/EditJobTemplateRequest.h"
@@ -198,6 +204,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::StartNodesResult> StartNodesOutcome;
 			typedef std::future<StartNodesOutcome> StartNodesOutcomeCallable;
 			typedef std::function<void(const EHPCClient*, const Model::StartNodesRequest&, const StartNodesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> StartNodesAsyncHandler;
+			typedef Outcome<Error, Model::GetCloudMetricProfilingResult> GetCloudMetricProfilingOutcome;
+			typedef std::future<GetCloudMetricProfilingOutcome> GetCloudMetricProfilingOutcomeCallable;
+			typedef std::function<void(const EHPCClient*, const Model::GetCloudMetricProfilingRequest&, const GetCloudMetricProfilingOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetCloudMetricProfilingAsyncHandler;
 			typedef Outcome<Error, Model::GetAutoScaleConfigResult> GetAutoScaleConfigOutcome;
 			typedef std::future<GetAutoScaleConfigOutcome> GetAutoScaleConfigOutcomeCallable;
 			typedef std::function<void(const EHPCClient*, const Model::GetAutoScaleConfigRequest&, const GetAutoScaleConfigOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetAutoScaleConfigAsyncHandler;
@@ -300,6 +309,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::ListContainerAppsResult> ListContainerAppsOutcome;
 			typedef std::future<ListContainerAppsOutcome> ListContainerAppsOutcomeCallable;
 			typedef std::function<void(const EHPCClient*, const Model::ListContainerAppsRequest&, const ListContainerAppsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListContainerAppsAsyncHandler;
+			typedef Outcome<Error, Model::ListCloudMetricProfilingsResult> ListCloudMetricProfilingsOutcome;
+			typedef std::future<ListCloudMetricProfilingsOutcome> ListCloudMetricProfilingsOutcomeCallable;
+			typedef std::function<void(const EHPCClient*, const Model::ListCloudMetricProfilingsRequest&, const ListCloudMetricProfilingsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListCloudMetricProfilingsAsyncHandler;
 			typedef Outcome<Error, Model::SetJobUserResult> SetJobUserOutcome;
 			typedef std::future<SetJobUserOutcome> SetJobUserOutcomeCallable;
 			typedef std::function<void(const EHPCClient*, const Model::SetJobUserRequest&, const SetJobUserOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SetJobUserAsyncHandler;
@@ -315,6 +327,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::DescribeAutoScaleConfigResult> DescribeAutoScaleConfigOutcome;
 			typedef std::future<DescribeAutoScaleConfigOutcome> DescribeAutoScaleConfigOutcomeCallable;
 			typedef std::function<void(const EHPCClient*, const Model::DescribeAutoScaleConfigRequest&, const DescribeAutoScaleConfigOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeAutoScaleConfigAsyncHandler;
+			typedef Outcome<Error, Model::RunCloudMetricProfilingResult> RunCloudMetricProfilingOutcome;
+			typedef std::future<RunCloudMetricProfilingOutcome> RunCloudMetricProfilingOutcomeCallable;
+			typedef std::function<void(const EHPCClient*, const Model::RunCloudMetricProfilingRequest&, const RunCloudMetricProfilingOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RunCloudMetricProfilingAsyncHandler;
 			typedef Outcome<Error, Model::RerunJobsResult> RerunJobsOutcome;
 			typedef std::future<RerunJobsOutcome> RerunJobsOutcomeCallable;
 			typedef std::function<void(const EHPCClient*, const Model::RerunJobsRequest&, const RerunJobsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RerunJobsAsyncHandler;
@@ -386,6 +401,9 @@ namespace AlibabaCloud
 			StartNodesOutcome startNodes(const Model::StartNodesRequest &request)const;
 			void startNodesAsync(const Model::StartNodesRequest& request, const StartNodesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			StartNodesOutcomeCallable startNodesCallable(const Model::StartNodesRequest& request) const;
+			GetCloudMetricProfilingOutcome getCloudMetricProfiling(const Model::GetCloudMetricProfilingRequest &request)const;
+			void getCloudMetricProfilingAsync(const Model::GetCloudMetricProfilingRequest& request, const GetCloudMetricProfilingAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetCloudMetricProfilingOutcomeCallable getCloudMetricProfilingCallable(const Model::GetCloudMetricProfilingRequest& request) const;
 			GetAutoScaleConfigOutcome getAutoScaleConfig(const Model::GetAutoScaleConfigRequest &request)const;
 			void getAutoScaleConfigAsync(const Model::GetAutoScaleConfigRequest& request, const GetAutoScaleConfigAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			GetAutoScaleConfigOutcomeCallable getAutoScaleConfigCallable(const Model::GetAutoScaleConfigRequest& request) const;
@@ -488,6 +506,9 @@ namespace AlibabaCloud
 			ListContainerAppsOutcome listContainerApps(const Model::ListContainerAppsRequest &request)const;
 			void listContainerAppsAsync(const Model::ListContainerAppsRequest& request, const ListContainerAppsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListContainerAppsOutcomeCallable listContainerAppsCallable(const Model::ListContainerAppsRequest& request) const;
+			ListCloudMetricProfilingsOutcome listCloudMetricProfilings(const Model::ListCloudMetricProfilingsRequest &request)const;
+			void listCloudMetricProfilingsAsync(const Model::ListCloudMetricProfilingsRequest& request, const ListCloudMetricProfilingsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListCloudMetricProfilingsOutcomeCallable listCloudMetricProfilingsCallable(const Model::ListCloudMetricProfilingsRequest& request) const;
 			SetJobUserOutcome setJobUser(const Model::SetJobUserRequest &request)const;
 			void setJobUserAsync(const Model::SetJobUserRequest& request, const SetJobUserAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			SetJobUserOutcomeCallable setJobUserCallable(const Model::SetJobUserRequest& request) const;
@@ -503,6 +524,9 @@ namespace AlibabaCloud
 			DescribeAutoScaleConfigOutcome describeAutoScaleConfig(const Model::DescribeAutoScaleConfigRequest &request)const;
 			void describeAutoScaleConfigAsync(const Model::DescribeAutoScaleConfigRequest& request, const DescribeAutoScaleConfigAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DescribeAutoScaleConfigOutcomeCallable describeAutoScaleConfigCallable(const Model::DescribeAutoScaleConfigRequest& request) const;
+			RunCloudMetricProfilingOutcome runCloudMetricProfiling(const Model::RunCloudMetricProfilingRequest &request)const;
+			void runCloudMetricProfilingAsync(const Model::RunCloudMetricProfilingRequest& request, const RunCloudMetricProfilingAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			RunCloudMetricProfilingOutcomeCallable runCloudMetricProfilingCallable(const Model::RunCloudMetricProfilingRequest& request) const;
 			RerunJobsOutcome rerunJobs(const Model::RerunJobsRequest &request)const;
 			void rerunJobsAsync(const Model::RerunJobsRequest& request, const RerunJobsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			RerunJobsOutcomeCallable rerunJobsCallable(const Model::RerunJobsRequest& request) const;

+ 1 - 1
ehpc/include/alibabacloud/ehpc/model/AddUsersRequest.h

@@ -32,9 +32,9 @@ namespace AlibabaCloud
 			{
 				struct User
 				{
+					std::string password;
 					std::string name;
 					std::string group;
-					std::string password;
 				};
 
 			public:

+ 4 - 1
ehpc/include/alibabacloud/ehpc/model/CreateClusterRequest.h

@@ -32,8 +32,8 @@ namespace AlibabaCloud
 			{
 				struct PostInstallScript
 				{
-					std::string url;
 					std::string args;
+					std::string url;
 				};
 				struct Application
 				{
@@ -86,6 +86,8 @@ namespace AlibabaCloud
 				void setPeriod(int period);
 				std::string getVolumeProtocol()const;
 				void setVolumeProtocol(const std::string& volumeProtocol);
+				std::string getClientVersion()const;
+				void setClientVersion(const std::string& clientVersion);
 				std::string getOsTag()const;
 				void setOsTag(const std::string& osTag);
 				std::string getRemoteDirectory()const;
@@ -147,6 +149,7 @@ namespace AlibabaCloud
 				int autoRenewPeriod_;
 				int period_;
 				std::string volumeProtocol_;
+				std::string clientVersion_;
 				std::string osTag_;
 				std::string remoteDirectory_;
 				int ecsOrderComputeCount_;

+ 3 - 0
ehpc/include/alibabacloud/ehpc/model/CreateHybridClusterRequest.h

@@ -67,6 +67,8 @@ namespace AlibabaCloud
 				void setVolumeProtocol(const std::string& volumeProtocol);
 				std::string getOnPremiseVolumeLocalPath()const;
 				void setOnPremiseVolumeLocalPath(const std::string& onPremiseVolumeLocalPath);
+				std::string getClientVersion()const;
+				void setClientVersion(const std::string& clientVersion);
 				std::string getOsTag()const;
 				void setOsTag(const std::string& osTag);
 				std::string getRemoteDirectory()const;
@@ -107,6 +109,7 @@ namespace AlibabaCloud
 				std::string onPremiseVolumeProtocol_;
 				std::string volumeProtocol_;
 				std::string onPremiseVolumeLocalPath_;
+				std::string clientVersion_;
 				std::string osTag_;
 				std::string remoteDirectory_;
 				std::string vSwitchId_;

+ 0 - 3
ehpc/include/alibabacloud/ehpc/model/GetCloudMetricLogsRequest.h

@@ -41,8 +41,6 @@ namespace AlibabaCloud
 				void setFilter(const std::string& filter);
 				std::string getMetricCategories()const;
 				void setMetricCategories(const std::string& metricCategories);
-				int getLine()const;
-				void setLine(int line);
 				std::string getMetricScope()const;
 				void setMetricScope(const std::string& metricScope);
 				int getFrom()const;
@@ -62,7 +60,6 @@ namespace AlibabaCloud
 				std::string aggregationType_;
 				std::string filter_;
 				std::string metricCategories_;
-				int line_;
 				std::string metricScope_;
 				int from_;
 				std::string clusterId_;

+ 57 - 0
ehpc/include/alibabacloud/ehpc/model/GetCloudMetricProfilingRequest.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_EHPC_MODEL_GETCLOUDMETRICPROFILINGREQUEST_H_
+#define ALIBABACLOUD_EHPC_MODEL_GETCLOUDMETRICPROFILINGREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/ehpc/EHPCExport.h>
+
+namespace AlibabaCloud
+{
+	namespace EHPC
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_EHPC_EXPORT GetCloudMetricProfilingRequest : public RpcServiceRequest
+			{
+
+			public:
+				GetCloudMetricProfilingRequest();
+				~GetCloudMetricProfilingRequest();
+
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getProfilingId()const;
+				void setProfilingId(const std::string& profilingId);
+				std::string getClusterId()const;
+				void setClusterId(const std::string& clusterId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string regionId_;
+				std::string profilingId_;
+				std::string clusterId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_EHPC_MODEL_GETCLOUDMETRICPROFILINGREQUEST_H_

+ 58 - 0
ehpc/include/alibabacloud/ehpc/model/GetCloudMetricProfilingResult.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_EHPC_MODEL_GETCLOUDMETRICPROFILINGRESULT_H_
+#define ALIBABACLOUD_EHPC_MODEL_GETCLOUDMETRICPROFILINGRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/ehpc/EHPCExport.h>
+
+namespace AlibabaCloud
+{
+	namespace EHPC
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_EHPC_EXPORT GetCloudMetricProfilingResult : public ServiceResult
+			{
+			public:
+				struct SvgInfo
+				{
+					std::string type;
+					int size;
+					std::string url;
+					std::string name;
+				};
+
+
+				GetCloudMetricProfilingResult();
+				explicit GetCloudMetricProfilingResult(const std::string &payload);
+				~GetCloudMetricProfilingResult();
+				std::vector<SvgInfo> getSvgUrls()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<SvgInfo> svgUrls_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_EHPC_MODEL_GETCLOUDMETRICPROFILINGRESULT_H_

+ 60 - 0
ehpc/include/alibabacloud/ehpc/model/ListCloudMetricProfilingsRequest.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_EHPC_MODEL_LISTCLOUDMETRICPROFILINGSREQUEST_H_
+#define ALIBABACLOUD_EHPC_MODEL_LISTCLOUDMETRICPROFILINGSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/ehpc/EHPCExport.h>
+
+namespace AlibabaCloud
+{
+	namespace EHPC
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_EHPC_EXPORT ListCloudMetricProfilingsRequest : public RpcServiceRequest
+			{
+
+			public:
+				ListCloudMetricProfilingsRequest();
+				~ListCloudMetricProfilingsRequest();
+
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				int getPageSize()const;
+				void setPageSize(int pageSize);
+				std::string getClusterId()const;
+				void setClusterId(const std::string& clusterId);
+				int getPageNumber()const;
+				void setPageNumber(int pageNumber);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				std::string regionId_;
+				int pageSize_;
+				std::string clusterId_;
+				int pageNumber_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_EHPC_MODEL_LISTCLOUDMETRICPROFILINGSREQUEST_H_

+ 67 - 0
ehpc/include/alibabacloud/ehpc/model/ListCloudMetricProfilingsResult.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_EHPC_MODEL_LISTCLOUDMETRICPROFILINGSRESULT_H_
+#define ALIBABACLOUD_EHPC_MODEL_LISTCLOUDMETRICPROFILINGSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/ehpc/EHPCExport.h>
+
+namespace AlibabaCloud
+{
+	namespace EHPC
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_EHPC_EXPORT ListCloudMetricProfilingsResult : public ServiceResult
+			{
+			public:
+				struct ProfilingInfo
+				{
+					std::string profilingId;
+					std::string instanceId;
+					std::string triggerTime;
+					int freq;
+					int pid;
+					int duration;
+					std::string hostName;
+				};
+
+
+				ListCloudMetricProfilingsResult();
+				explicit ListCloudMetricProfilingsResult(const std::string &payload);
+				~ListCloudMetricProfilingsResult();
+				int getTotalCount()const;
+				int getPageSize()const;
+				int getPageNumber()const;
+				std::vector<ProfilingInfo> getProfilings()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				int totalCount_;
+				int pageSize_;
+				int pageNumber_;
+				std::vector<ProfilingInfo> profilings_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_EHPC_MODEL_LISTCLOUDMETRICPROFILINGSRESULT_H_

+ 2 - 0
ehpc/include/alibabacloud/ehpc/model/ListNodesNoPagingResult.h

@@ -53,12 +53,14 @@ namespace AlibabaCloud
 					std::string addTime;
 					UsedResources usedResources;
 					bool createdByEhpc;
+					std::string version;
 					TotalResources totalResources;
 					std::string expiredTime;
 					std::string imageId;
 					std::string id;
 					std::string regionId;
 					std::string lockReason;
+					std::string hostName;
 					std::string spotStrategy;
 				};
 

+ 2 - 0
ehpc/include/alibabacloud/ehpc/model/ListNodesResult.h

@@ -53,12 +53,14 @@ namespace AlibabaCloud
 					std::string addTime;
 					UsedResources usedResources;
 					bool createdByEhpc;
+					std::string version;
 					TotalResources totalResources;
 					std::string expiredTime;
 					std::string imageId;
 					std::string id;
 					std::string regionId;
 					std::string lockReason;
+					std::string hostName;
 					std::string spotStrategy;
 					std::string location;
 				};

+ 1 - 1
ehpc/include/alibabacloud/ehpc/model/ModifyImageGatewayConfigRequest.h

@@ -32,8 +32,8 @@ namespace AlibabaCloud
 			{
 				struct Repo
 				{
-					std::string location;
 					std::string auth;
+					std::string location;
 					std::string uRL;
 				};
 

+ 1 - 1
ehpc/include/alibabacloud/ehpc/model/ModifyUserPasswordsRequest.h

@@ -32,8 +32,8 @@ namespace AlibabaCloud
 			{
 				struct User
 				{
-					std::string name;
 					std::string password;
+					std::string name;
 				};
 
 			public:

+ 66 - 0
ehpc/include/alibabacloud/ehpc/model/RunCloudMetricProfilingRequest.h

@@ -0,0 +1,66 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_EHPC_MODEL_RUNCLOUDMETRICPROFILINGREQUEST_H_
+#define ALIBABACLOUD_EHPC_MODEL_RUNCLOUDMETRICPROFILINGREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/ehpc/EHPCExport.h>
+
+namespace AlibabaCloud
+{
+	namespace EHPC
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_EHPC_EXPORT RunCloudMetricProfilingRequest : public RpcServiceRequest
+			{
+
+			public:
+				RunCloudMetricProfilingRequest();
+				~RunCloudMetricProfilingRequest();
+
+				int getDuration()const;
+				void setDuration(int duration);
+				std::string getHostName()const;
+				void setHostName(const std::string& hostName);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				int getProcessId()const;
+				void setProcessId(int processId);
+				int getFreq()const;
+				void setFreq(int freq);
+				std::string getClusterId()const;
+				void setClusterId(const std::string& clusterId);
+				std::string getAccessKeyId()const;
+				void setAccessKeyId(const std::string& accessKeyId);
+
+            private:
+				int duration_;
+				std::string hostName_;
+				std::string regionId_;
+				int processId_;
+				int freq_;
+				std::string clusterId_;
+				std::string accessKeyId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_EHPC_MODEL_RUNCLOUDMETRICPROFILINGREQUEST_H_

+ 49 - 0
ehpc/include/alibabacloud/ehpc/model/RunCloudMetricProfilingResult.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_EHPC_MODEL_RUNCLOUDMETRICPROFILINGRESULT_H_
+#define ALIBABACLOUD_EHPC_MODEL_RUNCLOUDMETRICPROFILINGRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/ehpc/EHPCExport.h>
+
+namespace AlibabaCloud
+{
+	namespace EHPC
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_EHPC_EXPORT RunCloudMetricProfilingResult : public ServiceResult
+			{
+			public:
+
+
+				RunCloudMetricProfilingResult();
+				explicit RunCloudMetricProfilingResult(const std::string &payload);
+				~RunCloudMetricProfilingResult();
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_EHPC_MODEL_RUNCLOUDMETRICPROFILINGRESULT_H_

+ 108 - 0
ehpc/src/EHPCClient.cc

@@ -591,6 +591,42 @@ EHPCClient::StartNodesOutcomeCallable EHPCClient::startNodesCallable(const Start
 	return task->get_future();
 }
 
+EHPCClient::GetCloudMetricProfilingOutcome EHPCClient::getCloudMetricProfiling(const GetCloudMetricProfilingRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return GetCloudMetricProfilingOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return GetCloudMetricProfilingOutcome(GetCloudMetricProfilingResult(outcome.result()));
+	else
+		return GetCloudMetricProfilingOutcome(outcome.error());
+}
+
+void EHPCClient::getCloudMetricProfilingAsync(const GetCloudMetricProfilingRequest& request, const GetCloudMetricProfilingAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, getCloudMetricProfiling(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+EHPCClient::GetCloudMetricProfilingOutcomeCallable EHPCClient::getCloudMetricProfilingCallable(const GetCloudMetricProfilingRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<GetCloudMetricProfilingOutcome()>>(
+			[this, request]()
+			{
+			return this->getCloudMetricProfiling(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 EHPCClient::GetAutoScaleConfigOutcome EHPCClient::getAutoScaleConfig(const GetAutoScaleConfigRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -1815,6 +1851,42 @@ EHPCClient::ListContainerAppsOutcomeCallable EHPCClient::listContainerAppsCallab
 	return task->get_future();
 }
 
+EHPCClient::ListCloudMetricProfilingsOutcome EHPCClient::listCloudMetricProfilings(const ListCloudMetricProfilingsRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ListCloudMetricProfilingsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ListCloudMetricProfilingsOutcome(ListCloudMetricProfilingsResult(outcome.result()));
+	else
+		return ListCloudMetricProfilingsOutcome(outcome.error());
+}
+
+void EHPCClient::listCloudMetricProfilingsAsync(const ListCloudMetricProfilingsRequest& request, const ListCloudMetricProfilingsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, listCloudMetricProfilings(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+EHPCClient::ListCloudMetricProfilingsOutcomeCallable EHPCClient::listCloudMetricProfilingsCallable(const ListCloudMetricProfilingsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ListCloudMetricProfilingsOutcome()>>(
+			[this, request]()
+			{
+			return this->listCloudMetricProfilings(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 EHPCClient::SetJobUserOutcome EHPCClient::setJobUser(const SetJobUserRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -1995,6 +2067,42 @@ EHPCClient::DescribeAutoScaleConfigOutcomeCallable EHPCClient::describeAutoScale
 	return task->get_future();
 }
 
+EHPCClient::RunCloudMetricProfilingOutcome EHPCClient::runCloudMetricProfiling(const RunCloudMetricProfilingRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return RunCloudMetricProfilingOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return RunCloudMetricProfilingOutcome(RunCloudMetricProfilingResult(outcome.result()));
+	else
+		return RunCloudMetricProfilingOutcome(outcome.error());
+}
+
+void EHPCClient::runCloudMetricProfilingAsync(const RunCloudMetricProfilingRequest& request, const RunCloudMetricProfilingAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, runCloudMetricProfiling(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+EHPCClient::RunCloudMetricProfilingOutcomeCallable EHPCClient::runCloudMetricProfilingCallable(const RunCloudMetricProfilingRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<RunCloudMetricProfilingOutcome()>>(
+			[this, request]()
+			{
+			return this->runCloudMetricProfiling(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 EHPCClient::RerunJobsOutcome EHPCClient::rerunJobs(const RerunJobsRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();

+ 1 - 1
ehpc/src/model/AddUsersRequest.cc

@@ -48,9 +48,9 @@ void AddUsersRequest::setUser(const std::vector<User>& user)
 	for(int i = 0; i!= user.size(); i++)	{
 		auto obj = user.at(i);
 		std::string str ="User."+ std::to_string(i);
+		setParameter(str + ".Password", obj.password);
 		setParameter(str + ".Name", obj.name);
 		setParameter(str + ".Group", obj.group);
-		setParameter(str + ".Password", obj.password);
 	}
 }
 

+ 12 - 1
ehpc/src/model/CreateClusterRequest.cc

@@ -256,6 +256,17 @@ void CreateClusterRequest::setVolumeProtocol(const std::string& volumeProtocol)
 	setParameter("VolumeProtocol", volumeProtocol);
 }
 
+std::string CreateClusterRequest::getClientVersion()const
+{
+	return clientVersion_;
+}
+
+void CreateClusterRequest::setClientVersion(const std::string& clientVersion)
+{
+	clientVersion_ = clientVersion;
+	setParameter("ClientVersion", clientVersion);
+}
+
 std::string CreateClusterRequest::getOsTag()const
 {
 	return osTag_;
@@ -312,8 +323,8 @@ void CreateClusterRequest::setPostInstallScript(const std::vector<PostInstallScr
 	for(int i = 0; i!= postInstallScript.size(); i++)	{
 		auto obj = postInstallScript.at(i);
 		std::string str ="PostInstallScript."+ std::to_string(i);
-		setParameter(str + ".Url", obj.url);
 		setParameter(str + ".Args", obj.args);
+		setParameter(str + ".Url", obj.url);
 	}
 }
 

+ 11 - 0
ehpc/src/model/CreateHybridClusterRequest.cc

@@ -179,6 +179,17 @@ void CreateHybridClusterRequest::setOnPremiseVolumeLocalPath(const std::string&
 	setParameter("OnPremiseVolumeLocalPath", onPremiseVolumeLocalPath);
 }
 
+std::string CreateHybridClusterRequest::getClientVersion()const
+{
+	return clientVersion_;
+}
+
+void CreateHybridClusterRequest::setClientVersion(const std::string& clientVersion)
+{
+	clientVersion_ = clientVersion;
+	setParameter("ClientVersion", clientVersion);
+}
+
 std::string CreateHybridClusterRequest::getOsTag()const
 {
 	return osTag_;

+ 0 - 11
ehpc/src/model/GetCloudMetricLogsRequest.cc

@@ -58,17 +58,6 @@ void GetCloudMetricLogsRequest::setMetricCategories(const std::string& metricCat
 	setParameter("MetricCategories", metricCategories);
 }
 
-int GetCloudMetricLogsRequest::getLine()const
-{
-	return line_;
-}
-
-void GetCloudMetricLogsRequest::setLine(int line)
-{
-	line_ = line;
-	setParameter("Line", std::to_string(line));
-}
-
 std::string GetCloudMetricLogsRequest::getMetricScope()const
 {
 	return metricScope_;

+ 71 - 0
ehpc/src/model/GetCloudMetricProfilingRequest.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/ehpc/model/GetCloudMetricProfilingRequest.h>
+
+using AlibabaCloud::EHPC::Model::GetCloudMetricProfilingRequest;
+
+GetCloudMetricProfilingRequest::GetCloudMetricProfilingRequest() :
+	RpcServiceRequest("ehpc", "2018-04-12", "GetCloudMetricProfiling")
+{}
+
+GetCloudMetricProfilingRequest::~GetCloudMetricProfilingRequest()
+{}
+
+std::string GetCloudMetricProfilingRequest::getRegionId()const
+{
+	return regionId_;
+}
+
+void GetCloudMetricProfilingRequest::setRegionId(const std::string& regionId)
+{
+	regionId_ = regionId;
+	setParameter("RegionId", regionId);
+}
+
+std::string GetCloudMetricProfilingRequest::getProfilingId()const
+{
+	return profilingId_;
+}
+
+void GetCloudMetricProfilingRequest::setProfilingId(const std::string& profilingId)
+{
+	profilingId_ = profilingId;
+	setParameter("ProfilingId", profilingId);
+}
+
+std::string GetCloudMetricProfilingRequest::getClusterId()const
+{
+	return clusterId_;
+}
+
+void GetCloudMetricProfilingRequest::setClusterId(const std::string& clusterId)
+{
+	clusterId_ = clusterId;
+	setParameter("ClusterId", clusterId);
+}
+
+std::string GetCloudMetricProfilingRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void GetCloudMetricProfilingRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+

+ 64 - 0
ehpc/src/model/GetCloudMetricProfilingResult.cc

@@ -0,0 +1,64 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/ehpc/model/GetCloudMetricProfilingResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::EHPC;
+using namespace AlibabaCloud::EHPC::Model;
+
+GetCloudMetricProfilingResult::GetCloudMetricProfilingResult() :
+	ServiceResult()
+{}
+
+GetCloudMetricProfilingResult::GetCloudMetricProfilingResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+GetCloudMetricProfilingResult::~GetCloudMetricProfilingResult()
+{}
+
+void GetCloudMetricProfilingResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	auto allSvgUrls = value["SvgUrls"]["SvgInfo"];
+	for (auto value : allSvgUrls)
+	{
+		SvgInfo svgUrlsObject;
+		if(!value["Name"].isNull())
+			svgUrlsObject.name = value["Name"].asString();
+		if(!value["Type"].isNull())
+			svgUrlsObject.type = value["Type"].asString();
+		if(!value["Url"].isNull())
+			svgUrlsObject.url = value["Url"].asString();
+		if(!value["Size"].isNull())
+			svgUrlsObject.size = std::stoi(value["Size"].asString());
+		svgUrls_.push_back(svgUrlsObject);
+	}
+
+}
+
+std::vector<GetCloudMetricProfilingResult::SvgInfo> GetCloudMetricProfilingResult::getSvgUrls()const
+{
+	return svgUrls_;
+}
+

+ 82 - 0
ehpc/src/model/ListCloudMetricProfilingsRequest.cc

@@ -0,0 +1,82 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/ehpc/model/ListCloudMetricProfilingsRequest.h>
+
+using AlibabaCloud::EHPC::Model::ListCloudMetricProfilingsRequest;
+
+ListCloudMetricProfilingsRequest::ListCloudMetricProfilingsRequest() :
+	RpcServiceRequest("ehpc", "2018-04-12", "ListCloudMetricProfilings")
+{}
+
+ListCloudMetricProfilingsRequest::~ListCloudMetricProfilingsRequest()
+{}
+
+std::string ListCloudMetricProfilingsRequest::getRegionId()const
+{
+	return regionId_;
+}
+
+void ListCloudMetricProfilingsRequest::setRegionId(const std::string& regionId)
+{
+	regionId_ = regionId;
+	setParameter("RegionId", regionId);
+}
+
+int ListCloudMetricProfilingsRequest::getPageSize()const
+{
+	return pageSize_;
+}
+
+void ListCloudMetricProfilingsRequest::setPageSize(int pageSize)
+{
+	pageSize_ = pageSize;
+	setParameter("PageSize", std::to_string(pageSize));
+}
+
+std::string ListCloudMetricProfilingsRequest::getClusterId()const
+{
+	return clusterId_;
+}
+
+void ListCloudMetricProfilingsRequest::setClusterId(const std::string& clusterId)
+{
+	clusterId_ = clusterId;
+	setParameter("ClusterId", clusterId);
+}
+
+int ListCloudMetricProfilingsRequest::getPageNumber()const
+{
+	return pageNumber_;
+}
+
+void ListCloudMetricProfilingsRequest::setPageNumber(int pageNumber)
+{
+	pageNumber_ = pageNumber;
+	setParameter("PageNumber", std::to_string(pageNumber));
+}
+
+std::string ListCloudMetricProfilingsRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void ListCloudMetricProfilingsRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+

+ 91 - 0
ehpc/src/model/ListCloudMetricProfilingsResult.cc

@@ -0,0 +1,91 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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/ehpc/model/ListCloudMetricProfilingsResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::EHPC;
+using namespace AlibabaCloud::EHPC::Model;
+
+ListCloudMetricProfilingsResult::ListCloudMetricProfilingsResult() :
+	ServiceResult()
+{}
+
+ListCloudMetricProfilingsResult::ListCloudMetricProfilingsResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+ListCloudMetricProfilingsResult::~ListCloudMetricProfilingsResult()
+{}
+
+void ListCloudMetricProfilingsResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	auto allProfilings = value["Profilings"]["ProfilingInfo"];
+	for (auto value : allProfilings)
+	{
+		ProfilingInfo profilingsObject;
+		if(!value["ProfilingId"].isNull())
+			profilingsObject.profilingId = value["ProfilingId"].asString();
+		if(!value["InstanceId"].isNull())
+			profilingsObject.instanceId = value["InstanceId"].asString();
+		if(!value["HostName"].isNull())
+			profilingsObject.hostName = value["HostName"].asString();
+		if(!value["Pid"].isNull())
+			profilingsObject.pid = std::stoi(value["Pid"].asString());
+		if(!value["Duration"].isNull())
+			profilingsObject.duration = std::stoi(value["Duration"].asString());
+		if(!value["Freq"].isNull())
+			profilingsObject.freq = std::stoi(value["Freq"].asString());
+		if(!value["TriggerTime"].isNull())
+			profilingsObject.triggerTime = value["TriggerTime"].asString();
+		profilings_.push_back(profilingsObject);
+	}
+	if(!value["TotalCount"].isNull())
+		totalCount_ = std::stoi(value["TotalCount"].asString());
+	if(!value["PageNumber"].isNull())
+		pageNumber_ = std::stoi(value["PageNumber"].asString());
+	if(!value["PageSize"].isNull())
+		pageSize_ = std::stoi(value["PageSize"].asString());
+
+}
+
+int ListCloudMetricProfilingsResult::getTotalCount()const
+{
+	return totalCount_;
+}
+
+int ListCloudMetricProfilingsResult::getPageSize()const
+{
+	return pageSize_;
+}
+
+int ListCloudMetricProfilingsResult::getPageNumber()const
+{
+	return pageNumber_;
+}
+
+std::vector<ListCloudMetricProfilingsResult::ProfilingInfo> ListCloudMetricProfilingsResult::getProfilings()const
+{
+	return profilings_;
+}
+

+ 4 - 0
ehpc/src/model/ListNodesNoPagingResult.cc

@@ -46,10 +46,14 @@ void ListNodesNoPagingResult::parse(const std::string &payload)
 		NodeInfo nodesObject;
 		if(!value["Id"].isNull())
 			nodesObject.id = value["Id"].asString();
+		if(!value["HostName"].isNull())
+			nodesObject.hostName = value["HostName"].asString();
 		if(!value["RegionId"].isNull())
 			nodesObject.regionId = value["RegionId"].asString();
 		if(!value["Status"].isNull())
 			nodesObject.status = value["Status"].asString();
+		if(!value["Version"].isNull())
+			nodesObject.version = value["Version"].asString();
 		if(!value["CreatedByEhpc"].isNull())
 			nodesObject.createdByEhpc = value["CreatedByEhpc"].asString() == "true";
 		if(!value["AddTime"].isNull())

+ 4 - 0
ehpc/src/model/ListNodesResult.cc

@@ -48,8 +48,12 @@ void ListNodesResult::parse(const std::string &payload)
 			nodesObject.id = value["Id"].asString();
 		if(!value["RegionId"].isNull())
 			nodesObject.regionId = value["RegionId"].asString();
+		if(!value["HostName"].isNull())
+			nodesObject.hostName = value["HostName"].asString();
 		if(!value["Status"].isNull())
 			nodesObject.status = value["Status"].asString();
+		if(!value["Version"].isNull())
+			nodesObject.version = value["Version"].asString();
 		if(!value["CreatedByEhpc"].isNull())
 			nodesObject.createdByEhpc = value["CreatedByEhpc"].asString() == "true";
 		if(!value["AddTime"].isNull())

+ 1 - 1
ehpc/src/model/ModifyImageGatewayConfigRequest.cc

@@ -59,8 +59,8 @@ void ModifyImageGatewayConfigRequest::setRepo(const std::vector<Repo>& repo)
 	for(int i = 0; i!= repo.size(); i++)	{
 		auto obj = repo.at(i);
 		std::string str ="Repo."+ std::to_string(i);
-		setParameter(str + ".Location", obj.location);
 		setParameter(str + ".Auth", obj.auth);
+		setParameter(str + ".Location", obj.location);
 		setParameter(str + ".URL", obj.uRL);
 	}
 }

+ 1 - 1
ehpc/src/model/ModifyUserPasswordsRequest.cc

@@ -48,8 +48,8 @@ void ModifyUserPasswordsRequest::setUser(const std::vector<User>& user)
 	for(int i = 0; i!= user.size(); i++)	{
 		auto obj = user.at(i);
 		std::string str ="User."+ std::to_string(i);
-		setParameter(str + ".Name", obj.name);
 		setParameter(str + ".Password", obj.password);
+		setParameter(str + ".Name", obj.name);
 	}
 }
 

+ 104 - 0
ehpc/src/model/RunCloudMetricProfilingRequest.cc

@@ -0,0 +1,104 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/ehpc/model/RunCloudMetricProfilingRequest.h>
+
+using AlibabaCloud::EHPC::Model::RunCloudMetricProfilingRequest;
+
+RunCloudMetricProfilingRequest::RunCloudMetricProfilingRequest() :
+	RpcServiceRequest("ehpc", "2018-04-12", "RunCloudMetricProfiling")
+{}
+
+RunCloudMetricProfilingRequest::~RunCloudMetricProfilingRequest()
+{}
+
+int RunCloudMetricProfilingRequest::getDuration()const
+{
+	return duration_;
+}
+
+void RunCloudMetricProfilingRequest::setDuration(int duration)
+{
+	duration_ = duration;
+	setParameter("Duration", std::to_string(duration));
+}
+
+std::string RunCloudMetricProfilingRequest::getHostName()const
+{
+	return hostName_;
+}
+
+void RunCloudMetricProfilingRequest::setHostName(const std::string& hostName)
+{
+	hostName_ = hostName;
+	setParameter("HostName", hostName);
+}
+
+std::string RunCloudMetricProfilingRequest::getRegionId()const
+{
+	return regionId_;
+}
+
+void RunCloudMetricProfilingRequest::setRegionId(const std::string& regionId)
+{
+	regionId_ = regionId;
+	setParameter("RegionId", regionId);
+}
+
+int RunCloudMetricProfilingRequest::getProcessId()const
+{
+	return processId_;
+}
+
+void RunCloudMetricProfilingRequest::setProcessId(int processId)
+{
+	processId_ = processId;
+	setParameter("ProcessId", std::to_string(processId));
+}
+
+int RunCloudMetricProfilingRequest::getFreq()const
+{
+	return freq_;
+}
+
+void RunCloudMetricProfilingRequest::setFreq(int freq)
+{
+	freq_ = freq;
+	setParameter("Freq", std::to_string(freq));
+}
+
+std::string RunCloudMetricProfilingRequest::getClusterId()const
+{
+	return clusterId_;
+}
+
+void RunCloudMetricProfilingRequest::setClusterId(const std::string& clusterId)
+{
+	clusterId_ = clusterId;
+	setParameter("ClusterId", clusterId);
+}
+
+std::string RunCloudMetricProfilingRequest::getAccessKeyId()const
+{
+	return accessKeyId_;
+}
+
+void RunCloudMetricProfilingRequest::setAccessKeyId(const std::string& accessKeyId)
+{
+	accessKeyId_ = accessKeyId;
+	setParameter("AccessKeyId", accessKeyId);
+}
+

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