فهرست منبع

Supported apm restful api.

sdk-team 4 سال پیش
والد
کامیت
a6a706f7bd
43فایلهای تغییر یافته به همراه1957 افزوده شده و 32 حذف شده
  1. 3 0
      CHANGELOG
  2. 1 1
      VERSION
  3. 28 0
      elasticsearch/CMakeLists.txt
  4. 56 0
      elasticsearch/include/alibabacloud/elasticsearch/ElasticsearchClient.h
  5. 45 0
      elasticsearch/include/alibabacloud/elasticsearch/model/CapacityPlanRequest.h
  6. 73 0
      elasticsearch/include/alibabacloud/elasticsearch/model/CapacityPlanResult.h
  7. 48 0
      elasticsearch/include/alibabacloud/elasticsearch/model/DescribeApmRequest.h
  8. 73 0
      elasticsearch/include/alibabacloud/elasticsearch/model/DescribeApmResult.h
  9. 48 0
      elasticsearch/include/alibabacloud/elasticsearch/model/GetOpenStoreUsageRequest.h
  10. 56 0
      elasticsearch/include/alibabacloud/elasticsearch/model/GetOpenStoreUsageResult.h
  11. 3 0
      elasticsearch/include/alibabacloud/elasticsearch/model/ListAllNodeRequest.h
  12. 4 3
      elasticsearch/include/alibabacloud/elasticsearch/model/ListAllNodeResult.h
  13. 9 0
      elasticsearch/include/alibabacloud/elasticsearch/model/ListInstanceIndicesRequest.h
  14. 4 0
      elasticsearch/include/alibabacloud/elasticsearch/model/ListInstanceIndicesResult.h
  15. 48 0
      elasticsearch/include/alibabacloud/elasticsearch/model/RemoveApmRequest.h
  16. 51 0
      elasticsearch/include/alibabacloud/elasticsearch/model/RemoveApmResult.h
  17. 48 0
      elasticsearch/include/alibabacloud/elasticsearch/model/StartApmRequest.h
  18. 51 0
      elasticsearch/include/alibabacloud/elasticsearch/model/StartApmResult.h
  19. 48 0
      elasticsearch/include/alibabacloud/elasticsearch/model/StopApmRequest.h
  20. 51 0
      elasticsearch/include/alibabacloud/elasticsearch/model/StopApmResult.h
  21. 63 0
      elasticsearch/include/alibabacloud/elasticsearch/model/UpdateApmRequest.h
  22. 51 0
      elasticsearch/include/alibabacloud/elasticsearch/model/UpdateApmResult.h
  23. 3 3
      elasticsearch/include/alibabacloud/elasticsearch/model/UpdateDescriptionRequest.h
  24. 252 0
      elasticsearch/src/ElasticsearchClient.cc
  25. 30 0
      elasticsearch/src/model/CapacityPlanRequest.cc
  26. 84 0
      elasticsearch/src/model/CapacityPlanResult.cc
  27. 41 0
      elasticsearch/src/model/DescribeApmRequest.cc
  28. 88 0
      elasticsearch/src/model/DescribeApmResult.cc
  29. 41 0
      elasticsearch/src/model/GetOpenStoreUsageRequest.cc
  30. 54 0
      elasticsearch/src/model/GetOpenStoreUsageResult.cc
  31. 11 0
      elasticsearch/src/model/ListAllNodeRequest.cc
  32. 12 10
      elasticsearch/src/model/ListAllNodeResult.cc
  33. 33 0
      elasticsearch/src/model/ListInstanceIndicesRequest.cc
  34. 18 10
      elasticsearch/src/model/ListInstanceIndicesResult.cc
  35. 41 0
      elasticsearch/src/model/RemoveApmRequest.cc
  36. 51 0
      elasticsearch/src/model/RemoveApmResult.cc
  37. 41 0
      elasticsearch/src/model/StartApmRequest.cc
  38. 51 0
      elasticsearch/src/model/StartApmResult.cc
  39. 41 0
      elasticsearch/src/model/StopApmRequest.cc
  40. 51 0
      elasticsearch/src/model/StopApmResult.cc
  41. 96 0
      elasticsearch/src/model/UpdateApmRequest.cc
  42. 51 0
      elasticsearch/src/model/UpdateApmResult.cc
  43. 5 5
      elasticsearch/src/model/UpdateDescriptionRequest.cc

+ 3 - 0
CHANGELOG

@@ -1,3 +1,6 @@
+2021-11-08 Version: 1.36.925
+- Supported apm restful api.
+
 2021-11-05 Version: 1.36.924
 - Add SetDcdnDomainSMCertificate.
 

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.36.924
+1.36.925

+ 28 - 0
elasticsearch/CMakeLists.txt

@@ -33,6 +33,8 @@ set(elasticsearch_public_header_model
 	include/alibabacloud/elasticsearch/model/CancelLogstashDeletionResult.h
 	include/alibabacloud/elasticsearch/model/CancelTaskRequest.h
 	include/alibabacloud/elasticsearch/model/CancelTaskResult.h
+	include/alibabacloud/elasticsearch/model/CapacityPlanRequest.h
+	include/alibabacloud/elasticsearch/model/CapacityPlanResult.h
 	include/alibabacloud/elasticsearch/model/CloseDiagnosisRequest.h
 	include/alibabacloud/elasticsearch/model/CloseDiagnosisResult.h
 	include/alibabacloud/elasticsearch/model/CloseHttpsRequest.h
@@ -85,6 +87,8 @@ set(elasticsearch_public_header_model
 	include/alibabacloud/elasticsearch/model/DeleteVpcEndpointResult.h
 	include/alibabacloud/elasticsearch/model/DescribeAckOperatorRequest.h
 	include/alibabacloud/elasticsearch/model/DescribeAckOperatorResult.h
+	include/alibabacloud/elasticsearch/model/DescribeApmRequest.h
+	include/alibabacloud/elasticsearch/model/DescribeApmResult.h
 	include/alibabacloud/elasticsearch/model/DescribeCollectorRequest.h
 	include/alibabacloud/elasticsearch/model/DescribeCollectorResult.h
 	include/alibabacloud/elasticsearch/model/DescribeConnectableClustersRequest.h
@@ -133,6 +137,8 @@ set(elasticsearch_public_header_model
 	include/alibabacloud/elasticsearch/model/GetEmonGrafanaDashboardsResult.h
 	include/alibabacloud/elasticsearch/model/GetEmonMonitorDataRequest.h
 	include/alibabacloud/elasticsearch/model/GetEmonMonitorDataResult.h
+	include/alibabacloud/elasticsearch/model/GetOpenStoreUsageRequest.h
+	include/alibabacloud/elasticsearch/model/GetOpenStoreUsageResult.h
 	include/alibabacloud/elasticsearch/model/GetRegionConfigurationRequest.h
 	include/alibabacloud/elasticsearch/model/GetRegionConfigurationResult.h
 	include/alibabacloud/elasticsearch/model/GetSuggestShrinkableNodesRequest.h
@@ -247,6 +253,8 @@ set(elasticsearch_public_header_model
 	include/alibabacloud/elasticsearch/model/RecommendTemplatesResult.h
 	include/alibabacloud/elasticsearch/model/ReinstallCollectorRequest.h
 	include/alibabacloud/elasticsearch/model/ReinstallCollectorResult.h
+	include/alibabacloud/elasticsearch/model/RemoveApmRequest.h
+	include/alibabacloud/elasticsearch/model/RemoveApmResult.h
 	include/alibabacloud/elasticsearch/model/RenewInstanceRequest.h
 	include/alibabacloud/elasticsearch/model/RenewInstanceResult.h
 	include/alibabacloud/elasticsearch/model/RenewLogstashRequest.h
@@ -267,8 +275,12 @@ set(elasticsearch_public_header_model
 	include/alibabacloud/elasticsearch/model/RunPipelinesResult.h
 	include/alibabacloud/elasticsearch/model/ShrinkNodeRequest.h
 	include/alibabacloud/elasticsearch/model/ShrinkNodeResult.h
+	include/alibabacloud/elasticsearch/model/StartApmRequest.h
+	include/alibabacloud/elasticsearch/model/StartApmResult.h
 	include/alibabacloud/elasticsearch/model/StartCollectorRequest.h
 	include/alibabacloud/elasticsearch/model/StartCollectorResult.h
+	include/alibabacloud/elasticsearch/model/StopApmRequest.h
+	include/alibabacloud/elasticsearch/model/StopApmResult.h
 	include/alibabacloud/elasticsearch/model/StopCollectorRequest.h
 	include/alibabacloud/elasticsearch/model/StopCollectorResult.h
 	include/alibabacloud/elasticsearch/model/StopPipelinesRequest.h
@@ -293,6 +305,8 @@ set(elasticsearch_public_header_model
 	include/alibabacloud/elasticsearch/model/UpdateAdvancedSettingResult.h
 	include/alibabacloud/elasticsearch/model/UpdateAliwsDictRequest.h
 	include/alibabacloud/elasticsearch/model/UpdateAliwsDictResult.h
+	include/alibabacloud/elasticsearch/model/UpdateApmRequest.h
+	include/alibabacloud/elasticsearch/model/UpdateApmResult.h
 	include/alibabacloud/elasticsearch/model/UpdateBlackIpsRequest.h
 	include/alibabacloud/elasticsearch/model/UpdateBlackIpsResult.h
 	include/alibabacloud/elasticsearch/model/UpdateCollectorRequest.h
@@ -380,6 +394,8 @@ set(elasticsearch_src
 	src/model/CancelLogstashDeletionResult.cc
 	src/model/CancelTaskRequest.cc
 	src/model/CancelTaskResult.cc
+	src/model/CapacityPlanRequest.cc
+	src/model/CapacityPlanResult.cc
 	src/model/CloseDiagnosisRequest.cc
 	src/model/CloseDiagnosisResult.cc
 	src/model/CloseHttpsRequest.cc
@@ -432,6 +448,8 @@ set(elasticsearch_src
 	src/model/DeleteVpcEndpointResult.cc
 	src/model/DescribeAckOperatorRequest.cc
 	src/model/DescribeAckOperatorResult.cc
+	src/model/DescribeApmRequest.cc
+	src/model/DescribeApmResult.cc
 	src/model/DescribeCollectorRequest.cc
 	src/model/DescribeCollectorResult.cc
 	src/model/DescribeConnectableClustersRequest.cc
@@ -480,6 +498,8 @@ set(elasticsearch_src
 	src/model/GetEmonGrafanaDashboardsResult.cc
 	src/model/GetEmonMonitorDataRequest.cc
 	src/model/GetEmonMonitorDataResult.cc
+	src/model/GetOpenStoreUsageRequest.cc
+	src/model/GetOpenStoreUsageResult.cc
 	src/model/GetRegionConfigurationRequest.cc
 	src/model/GetRegionConfigurationResult.cc
 	src/model/GetSuggestShrinkableNodesRequest.cc
@@ -594,6 +614,8 @@ set(elasticsearch_src
 	src/model/RecommendTemplatesResult.cc
 	src/model/ReinstallCollectorRequest.cc
 	src/model/ReinstallCollectorResult.cc
+	src/model/RemoveApmRequest.cc
+	src/model/RemoveApmResult.cc
 	src/model/RenewInstanceRequest.cc
 	src/model/RenewInstanceResult.cc
 	src/model/RenewLogstashRequest.cc
@@ -614,8 +636,12 @@ set(elasticsearch_src
 	src/model/RunPipelinesResult.cc
 	src/model/ShrinkNodeRequest.cc
 	src/model/ShrinkNodeResult.cc
+	src/model/StartApmRequest.cc
+	src/model/StartApmResult.cc
 	src/model/StartCollectorRequest.cc
 	src/model/StartCollectorResult.cc
+	src/model/StopApmRequest.cc
+	src/model/StopApmResult.cc
 	src/model/StopCollectorRequest.cc
 	src/model/StopCollectorResult.cc
 	src/model/StopPipelinesRequest.cc
@@ -640,6 +666,8 @@ set(elasticsearch_src
 	src/model/UpdateAdvancedSettingResult.cc
 	src/model/UpdateAliwsDictRequest.cc
 	src/model/UpdateAliwsDictResult.cc
+	src/model/UpdateApmRequest.cc
+	src/model/UpdateApmResult.cc
 	src/model/UpdateBlackIpsRequest.cc
 	src/model/UpdateBlackIpsResult.cc
 	src/model/UpdateCollectorRequest.cc

+ 56 - 0
elasticsearch/include/alibabacloud/elasticsearch/ElasticsearchClient.h

@@ -34,6 +34,8 @@
 #include "model/CancelLogstashDeletionResult.h"
 #include "model/CancelTaskRequest.h"
 #include "model/CancelTaskResult.h"
+#include "model/CapacityPlanRequest.h"
+#include "model/CapacityPlanResult.h"
 #include "model/CloseDiagnosisRequest.h"
 #include "model/CloseDiagnosisResult.h"
 #include "model/CloseHttpsRequest.h"
@@ -86,6 +88,8 @@
 #include "model/DeleteVpcEndpointResult.h"
 #include "model/DescribeAckOperatorRequest.h"
 #include "model/DescribeAckOperatorResult.h"
+#include "model/DescribeApmRequest.h"
+#include "model/DescribeApmResult.h"
 #include "model/DescribeCollectorRequest.h"
 #include "model/DescribeCollectorResult.h"
 #include "model/DescribeConnectableClustersRequest.h"
@@ -134,6 +138,8 @@
 #include "model/GetEmonGrafanaDashboardsResult.h"
 #include "model/GetEmonMonitorDataRequest.h"
 #include "model/GetEmonMonitorDataResult.h"
+#include "model/GetOpenStoreUsageRequest.h"
+#include "model/GetOpenStoreUsageResult.h"
 #include "model/GetRegionConfigurationRequest.h"
 #include "model/GetRegionConfigurationResult.h"
 #include "model/GetSuggestShrinkableNodesRequest.h"
@@ -248,6 +254,8 @@
 #include "model/RecommendTemplatesResult.h"
 #include "model/ReinstallCollectorRequest.h"
 #include "model/ReinstallCollectorResult.h"
+#include "model/RemoveApmRequest.h"
+#include "model/RemoveApmResult.h"
 #include "model/RenewInstanceRequest.h"
 #include "model/RenewInstanceResult.h"
 #include "model/RenewLogstashRequest.h"
@@ -268,8 +276,12 @@
 #include "model/RunPipelinesResult.h"
 #include "model/ShrinkNodeRequest.h"
 #include "model/ShrinkNodeResult.h"
+#include "model/StartApmRequest.h"
+#include "model/StartApmResult.h"
 #include "model/StartCollectorRequest.h"
 #include "model/StartCollectorResult.h"
+#include "model/StopApmRequest.h"
+#include "model/StopApmResult.h"
 #include "model/StopCollectorRequest.h"
 #include "model/StopCollectorResult.h"
 #include "model/StopPipelinesRequest.h"
@@ -294,6 +306,8 @@
 #include "model/UpdateAdvancedSettingResult.h"
 #include "model/UpdateAliwsDictRequest.h"
 #include "model/UpdateAliwsDictResult.h"
+#include "model/UpdateApmRequest.h"
+#include "model/UpdateApmResult.h"
 #include "model/UpdateBlackIpsRequest.h"
 #include "model/UpdateBlackIpsResult.h"
 #include "model/UpdateCollectorRequest.h"
@@ -393,6 +407,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::CancelTaskResult> CancelTaskOutcome;
 			typedef std::future<CancelTaskOutcome> CancelTaskOutcomeCallable;
 			typedef std::function<void(const ElasticsearchClient*, const Model::CancelTaskRequest&, const CancelTaskOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CancelTaskAsyncHandler;
+			typedef Outcome<Error, Model::CapacityPlanResult> CapacityPlanOutcome;
+			typedef std::future<CapacityPlanOutcome> CapacityPlanOutcomeCallable;
+			typedef std::function<void(const ElasticsearchClient*, const Model::CapacityPlanRequest&, const CapacityPlanOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CapacityPlanAsyncHandler;
 			typedef Outcome<Error, Model::CloseDiagnosisResult> CloseDiagnosisOutcome;
 			typedef std::future<CloseDiagnosisOutcome> CloseDiagnosisOutcomeCallable;
 			typedef std::function<void(const ElasticsearchClient*, const Model::CloseDiagnosisRequest&, const CloseDiagnosisOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CloseDiagnosisAsyncHandler;
@@ -471,6 +488,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::DescribeAckOperatorResult> DescribeAckOperatorOutcome;
 			typedef std::future<DescribeAckOperatorOutcome> DescribeAckOperatorOutcomeCallable;
 			typedef std::function<void(const ElasticsearchClient*, const Model::DescribeAckOperatorRequest&, const DescribeAckOperatorOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeAckOperatorAsyncHandler;
+			typedef Outcome<Error, Model::DescribeApmResult> DescribeApmOutcome;
+			typedef std::future<DescribeApmOutcome> DescribeApmOutcomeCallable;
+			typedef std::function<void(const ElasticsearchClient*, const Model::DescribeApmRequest&, const DescribeApmOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeApmAsyncHandler;
 			typedef Outcome<Error, Model::DescribeCollectorResult> DescribeCollectorOutcome;
 			typedef std::future<DescribeCollectorOutcome> DescribeCollectorOutcomeCallable;
 			typedef std::function<void(const ElasticsearchClient*, const Model::DescribeCollectorRequest&, const DescribeCollectorOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeCollectorAsyncHandler;
@@ -543,6 +563,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::GetEmonMonitorDataResult> GetEmonMonitorDataOutcome;
 			typedef std::future<GetEmonMonitorDataOutcome> GetEmonMonitorDataOutcomeCallable;
 			typedef std::function<void(const ElasticsearchClient*, const Model::GetEmonMonitorDataRequest&, const GetEmonMonitorDataOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetEmonMonitorDataAsyncHandler;
+			typedef Outcome<Error, Model::GetOpenStoreUsageResult> GetOpenStoreUsageOutcome;
+			typedef std::future<GetOpenStoreUsageOutcome> GetOpenStoreUsageOutcomeCallable;
+			typedef std::function<void(const ElasticsearchClient*, const Model::GetOpenStoreUsageRequest&, const GetOpenStoreUsageOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetOpenStoreUsageAsyncHandler;
 			typedef Outcome<Error, Model::GetRegionConfigurationResult> GetRegionConfigurationOutcome;
 			typedef std::future<GetRegionConfigurationOutcome> GetRegionConfigurationOutcomeCallable;
 			typedef std::function<void(const ElasticsearchClient*, const Model::GetRegionConfigurationRequest&, const GetRegionConfigurationOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetRegionConfigurationAsyncHandler;
@@ -714,6 +737,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::ReinstallCollectorResult> ReinstallCollectorOutcome;
 			typedef std::future<ReinstallCollectorOutcome> ReinstallCollectorOutcomeCallable;
 			typedef std::function<void(const ElasticsearchClient*, const Model::ReinstallCollectorRequest&, const ReinstallCollectorOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ReinstallCollectorAsyncHandler;
+			typedef Outcome<Error, Model::RemoveApmResult> RemoveApmOutcome;
+			typedef std::future<RemoveApmOutcome> RemoveApmOutcomeCallable;
+			typedef std::function<void(const ElasticsearchClient*, const Model::RemoveApmRequest&, const RemoveApmOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RemoveApmAsyncHandler;
 			typedef Outcome<Error, Model::RenewInstanceResult> RenewInstanceOutcome;
 			typedef std::future<RenewInstanceOutcome> RenewInstanceOutcomeCallable;
 			typedef std::function<void(const ElasticsearchClient*, const Model::RenewInstanceRequest&, const RenewInstanceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> RenewInstanceAsyncHandler;
@@ -744,9 +770,15 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::ShrinkNodeResult> ShrinkNodeOutcome;
 			typedef std::future<ShrinkNodeOutcome> ShrinkNodeOutcomeCallable;
 			typedef std::function<void(const ElasticsearchClient*, const Model::ShrinkNodeRequest&, const ShrinkNodeOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ShrinkNodeAsyncHandler;
+			typedef Outcome<Error, Model::StartApmResult> StartApmOutcome;
+			typedef std::future<StartApmOutcome> StartApmOutcomeCallable;
+			typedef std::function<void(const ElasticsearchClient*, const Model::StartApmRequest&, const StartApmOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> StartApmAsyncHandler;
 			typedef Outcome<Error, Model::StartCollectorResult> StartCollectorOutcome;
 			typedef std::future<StartCollectorOutcome> StartCollectorOutcomeCallable;
 			typedef std::function<void(const ElasticsearchClient*, const Model::StartCollectorRequest&, const StartCollectorOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> StartCollectorAsyncHandler;
+			typedef Outcome<Error, Model::StopApmResult> StopApmOutcome;
+			typedef std::future<StopApmOutcome> StopApmOutcomeCallable;
+			typedef std::function<void(const ElasticsearchClient*, const Model::StopApmRequest&, const StopApmOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> StopApmAsyncHandler;
 			typedef Outcome<Error, Model::StopCollectorResult> StopCollectorOutcome;
 			typedef std::future<StopCollectorOutcome> StopCollectorOutcomeCallable;
 			typedef std::function<void(const ElasticsearchClient*, const Model::StopCollectorRequest&, const StopCollectorOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> StopCollectorAsyncHandler;
@@ -783,6 +815,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::UpdateAliwsDictResult> UpdateAliwsDictOutcome;
 			typedef std::future<UpdateAliwsDictOutcome> UpdateAliwsDictOutcomeCallable;
 			typedef std::function<void(const ElasticsearchClient*, const Model::UpdateAliwsDictRequest&, const UpdateAliwsDictOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateAliwsDictAsyncHandler;
+			typedef Outcome<Error, Model::UpdateApmResult> UpdateApmOutcome;
+			typedef std::future<UpdateApmOutcome> UpdateApmOutcomeCallable;
+			typedef std::function<void(const ElasticsearchClient*, const Model::UpdateApmRequest&, const UpdateApmOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateApmAsyncHandler;
 			typedef Outcome<Error, Model::UpdateBlackIpsResult> UpdateBlackIpsOutcome;
 			typedef std::future<UpdateBlackIpsOutcome> UpdateBlackIpsOutcomeCallable;
 			typedef std::function<void(const ElasticsearchClient*, const Model::UpdateBlackIpsRequest&, const UpdateBlackIpsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UpdateBlackIpsAsyncHandler;
@@ -914,6 +949,9 @@ namespace AlibabaCloud
 			CancelTaskOutcome cancelTask(const Model::CancelTaskRequest &request)const;
 			void cancelTaskAsync(const Model::CancelTaskRequest& request, const CancelTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			CancelTaskOutcomeCallable cancelTaskCallable(const Model::CancelTaskRequest& request) const;
+			CapacityPlanOutcome capacityPlan(const Model::CapacityPlanRequest &request)const;
+			void capacityPlanAsync(const Model::CapacityPlanRequest& request, const CapacityPlanAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CapacityPlanOutcomeCallable capacityPlanCallable(const Model::CapacityPlanRequest& request) const;
 			CloseDiagnosisOutcome closeDiagnosis(const Model::CloseDiagnosisRequest &request)const;
 			void closeDiagnosisAsync(const Model::CloseDiagnosisRequest& request, const CloseDiagnosisAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			CloseDiagnosisOutcomeCallable closeDiagnosisCallable(const Model::CloseDiagnosisRequest& request) const;
@@ -992,6 +1030,9 @@ namespace AlibabaCloud
 			DescribeAckOperatorOutcome describeAckOperator(const Model::DescribeAckOperatorRequest &request)const;
 			void describeAckOperatorAsync(const Model::DescribeAckOperatorRequest& request, const DescribeAckOperatorAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DescribeAckOperatorOutcomeCallable describeAckOperatorCallable(const Model::DescribeAckOperatorRequest& request) const;
+			DescribeApmOutcome describeApm(const Model::DescribeApmRequest &request)const;
+			void describeApmAsync(const Model::DescribeApmRequest& request, const DescribeApmAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeApmOutcomeCallable describeApmCallable(const Model::DescribeApmRequest& request) const;
 			DescribeCollectorOutcome describeCollector(const Model::DescribeCollectorRequest &request)const;
 			void describeCollectorAsync(const Model::DescribeCollectorRequest& request, const DescribeCollectorAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DescribeCollectorOutcomeCallable describeCollectorCallable(const Model::DescribeCollectorRequest& request) const;
@@ -1064,6 +1105,9 @@ namespace AlibabaCloud
 			GetEmonMonitorDataOutcome getEmonMonitorData(const Model::GetEmonMonitorDataRequest &request)const;
 			void getEmonMonitorDataAsync(const Model::GetEmonMonitorDataRequest& request, const GetEmonMonitorDataAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			GetEmonMonitorDataOutcomeCallable getEmonMonitorDataCallable(const Model::GetEmonMonitorDataRequest& request) const;
+			GetOpenStoreUsageOutcome getOpenStoreUsage(const Model::GetOpenStoreUsageRequest &request)const;
+			void getOpenStoreUsageAsync(const Model::GetOpenStoreUsageRequest& request, const GetOpenStoreUsageAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetOpenStoreUsageOutcomeCallable getOpenStoreUsageCallable(const Model::GetOpenStoreUsageRequest& request) const;
 			GetRegionConfigurationOutcome getRegionConfiguration(const Model::GetRegionConfigurationRequest &request)const;
 			void getRegionConfigurationAsync(const Model::GetRegionConfigurationRequest& request, const GetRegionConfigurationAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			GetRegionConfigurationOutcomeCallable getRegionConfigurationCallable(const Model::GetRegionConfigurationRequest& request) const;
@@ -1235,6 +1279,9 @@ namespace AlibabaCloud
 			ReinstallCollectorOutcome reinstallCollector(const Model::ReinstallCollectorRequest &request)const;
 			void reinstallCollectorAsync(const Model::ReinstallCollectorRequest& request, const ReinstallCollectorAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ReinstallCollectorOutcomeCallable reinstallCollectorCallable(const Model::ReinstallCollectorRequest& request) const;
+			RemoveApmOutcome removeApm(const Model::RemoveApmRequest &request)const;
+			void removeApmAsync(const Model::RemoveApmRequest& request, const RemoveApmAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			RemoveApmOutcomeCallable removeApmCallable(const Model::RemoveApmRequest& request) const;
 			RenewInstanceOutcome renewInstance(const Model::RenewInstanceRequest &request)const;
 			void renewInstanceAsync(const Model::RenewInstanceRequest& request, const RenewInstanceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			RenewInstanceOutcomeCallable renewInstanceCallable(const Model::RenewInstanceRequest& request) const;
@@ -1265,9 +1312,15 @@ namespace AlibabaCloud
 			ShrinkNodeOutcome shrinkNode(const Model::ShrinkNodeRequest &request)const;
 			void shrinkNodeAsync(const Model::ShrinkNodeRequest& request, const ShrinkNodeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ShrinkNodeOutcomeCallable shrinkNodeCallable(const Model::ShrinkNodeRequest& request) const;
+			StartApmOutcome startApm(const Model::StartApmRequest &request)const;
+			void startApmAsync(const Model::StartApmRequest& request, const StartApmAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			StartApmOutcomeCallable startApmCallable(const Model::StartApmRequest& request) const;
 			StartCollectorOutcome startCollector(const Model::StartCollectorRequest &request)const;
 			void startCollectorAsync(const Model::StartCollectorRequest& request, const StartCollectorAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			StartCollectorOutcomeCallable startCollectorCallable(const Model::StartCollectorRequest& request) const;
+			StopApmOutcome stopApm(const Model::StopApmRequest &request)const;
+			void stopApmAsync(const Model::StopApmRequest& request, const StopApmAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			StopApmOutcomeCallable stopApmCallable(const Model::StopApmRequest& request) const;
 			StopCollectorOutcome stopCollector(const Model::StopCollectorRequest &request)const;
 			void stopCollectorAsync(const Model::StopCollectorRequest& request, const StopCollectorAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			StopCollectorOutcomeCallable stopCollectorCallable(const Model::StopCollectorRequest& request) const;
@@ -1304,6 +1357,9 @@ namespace AlibabaCloud
 			UpdateAliwsDictOutcome updateAliwsDict(const Model::UpdateAliwsDictRequest &request)const;
 			void updateAliwsDictAsync(const Model::UpdateAliwsDictRequest& request, const UpdateAliwsDictAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			UpdateAliwsDictOutcomeCallable updateAliwsDictCallable(const Model::UpdateAliwsDictRequest& request) const;
+			UpdateApmOutcome updateApm(const Model::UpdateApmRequest &request)const;
+			void updateApmAsync(const Model::UpdateApmRequest& request, const UpdateApmAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			UpdateApmOutcomeCallable updateApmCallable(const Model::UpdateApmRequest& request) const;
 			UpdateBlackIpsOutcome updateBlackIps(const Model::UpdateBlackIpsRequest &request)const;
 			void updateBlackIpsAsync(const Model::UpdateBlackIpsRequest& request, const UpdateBlackIpsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			UpdateBlackIpsOutcomeCallable updateBlackIpsCallable(const Model::UpdateBlackIpsRequest& request) const;

+ 45 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/CapacityPlanRequest.h

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

+ 73 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/CapacityPlanResult.h

@@ -0,0 +1,73 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_ELASTICSEARCH_MODEL_CAPACITYPLANRESULT_H_
+#define ALIBABACLOUD_ELASTICSEARCH_MODEL_CAPACITYPLANRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/elasticsearch/ElasticsearchExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Elasticsearch
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_ELASTICSEARCH_EXPORT CapacityPlanResult : public ServiceResult
+			{
+			public:
+				struct Result
+				{
+					struct ExtendConfigsItem
+					{
+						std::string diskType;
+						std::string configType;
+						long disk;
+					};
+					struct NodeConfigurationsItem
+					{
+						std::string diskType;
+						long memory;
+						long amount;
+						std::string nodeType;
+						long cpu;
+						long disk;
+					};
+					std::vector<ExtendConfigsItem> extendConfigs;
+					std::vector<NodeConfigurationsItem> nodeConfigurations;
+					bool oversizedCluster;
+					std::string instanceCategory;
+				};
+
+
+				CapacityPlanResult();
+				explicit CapacityPlanResult(const std::string &payload);
+				~CapacityPlanResult();
+				Result getResult()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				Result result_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_ELASTICSEARCH_MODEL_CAPACITYPLANRESULT_H_

+ 48 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/DescribeApmRequest.h

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

+ 73 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/DescribeApmResult.h

@@ -0,0 +1,73 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_ELASTICSEARCH_MODEL_DESCRIBEAPMRESULT_H_
+#define ALIBABACLOUD_ELASTICSEARCH_MODEL_DESCRIBEAPMRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/elasticsearch/ElasticsearchExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Elasticsearch
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_ELASTICSEARCH_EXPORT DescribeApmResult : public ServiceResult
+			{
+			public:
+				struct Result
+				{
+					std::string status;
+					std::string description;
+					std::string outputEsDescription;
+					long endTime;
+					std::string instanceId;
+					std::string outputES;
+					std::string createdAt;
+					std::string resourceSpec;
+					long deployedReplica;
+					long nodeAmount;
+					long replica;
+					std::string vswitchId;
+					std::string ownerId;
+					std::string vpcId;
+					std::string version;
+					std::string paymentType;
+					std::string region;
+					std::string outputESUserName;
+					std::string vsArea;
+				};
+
+
+				DescribeApmResult();
+				explicit DescribeApmResult(const std::string &payload);
+				~DescribeApmResult();
+				Result getResult()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				Result result_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_ELASTICSEARCH_MODEL_DESCRIBEAPMRESULT_H_

+ 48 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/GetOpenStoreUsageRequest.h

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

+ 56 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/GetOpenStoreUsageResult.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_ELASTICSEARCH_MODEL_GETOPENSTOREUSAGERESULT_H_
+#define ALIBABACLOUD_ELASTICSEARCH_MODEL_GETOPENSTOREUSAGERESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/elasticsearch/ElasticsearchExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Elasticsearch
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_ELASTICSEARCH_EXPORT GetOpenStoreUsageResult : public ServiceResult
+			{
+			public:
+				struct Result
+				{
+					long currentUsage;
+					long lastDayUsage;
+				};
+
+
+				GetOpenStoreUsageResult();
+				explicit GetOpenStoreUsageResult(const std::string &payload);
+				~GetOpenStoreUsageResult();
+				Result getResult()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				Result result_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_ELASTICSEARCH_MODEL_GETOPENSTOREUSAGERESULT_H_

+ 3 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/ListAllNodeRequest.h

@@ -37,9 +37,12 @@ namespace AlibabaCloud
 
 				std::string getInstanceId()const;
 				void setInstanceId(const std::string& instanceId);
+				bool getExtended()const;
+				void setExtended(bool extended);
 
             private:
 				std::string instanceId_;
+				bool extended_;
 
 			};
 		}

+ 4 - 3
elasticsearch/include/alibabacloud/elasticsearch/model/ListAllNodeResult.h

@@ -35,13 +35,14 @@ namespace AlibabaCloud
 				struct ResultItem
 				{
 					std::string zoneId;
-					std::string loadOneM;
 					std::string diskUsedPercent;
+					std::string loadOneM;
 					std::string health;
-					int port;
-					std::string nodeType;
 					std::string heapPercent;
+					std::string nodeType;
+					int port;
 					std::string host;
+					std::string hostName;
 					std::string cpuPercent;
 				};
 

+ 9 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/ListInstanceIndicesRequest.h

@@ -41,14 +41,23 @@ namespace AlibabaCloud
 				void setInstanceId(const std::string& instanceId);
 				bool getIsManaged()const;
 				void setIsManaged(bool isManaged);
+				int getSize()const;
+				void setSize(int size);
 				std::string getName()const;
 				void setName(const std::string& name);
+				int getPage()const;
+				void setPage(int page);
+				bool getIsOpenstore()const;
+				void setIsOpenstore(bool isOpenstore);
 
             private:
 				bool all_;
 				std::string instanceId_;
 				bool isManaged_;
+				int size_;
 				std::string name_;
+				int page_;
+				bool isOpenstore_;
 
 			};
 		}

+ 4 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/ListInstanceIndicesResult.h

@@ -34,16 +34,20 @@ namespace AlibabaCloud
 			public:
 				struct Headers
 				{
+					long xOSSStorageSize;
+					int xOSSCount;
 					int xManagedCount;
 					long xManagedStorageSize;
 				};
 				struct ResultItem
 				{
 					std::string managedStatus;
+					std::string phase;
 					std::string health;
 					long size;
 					std::string createTime;
 					std::string isManaged;
+					std::string ilmExplain;
 					std::string name;
 				};
 

+ 48 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/RemoveApmRequest.h

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

+ 51 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/RemoveApmResult.h

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

+ 48 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/StartApmRequest.h

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

+ 51 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/StartApmResult.h

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

+ 48 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/StopApmRequest.h

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

+ 51 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/StopApmResult.h

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

+ 63 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/UpdateApmRequest.h

@@ -0,0 +1,63 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_ELASTICSEARCH_MODEL_UPDATEAPMREQUEST_H_
+#define ALIBABACLOUD_ELASTICSEARCH_MODEL_UPDATEAPMREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RoaServiceRequest.h>
+#include <alibabacloud/elasticsearch/ElasticsearchExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Elasticsearch
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_ELASTICSEARCH_EXPORT UpdateApmRequest : public RoaServiceRequest
+			{
+
+			public:
+				UpdateApmRequest();
+				~UpdateApmRequest();
+
+				std::string getOutputES()const;
+				void setOutputES(const std::string& outputES);
+				std::string getOutputESPassword()const;
+				void setOutputESPassword(const std::string& outputESPassword);
+				std::string getInstanceId()const;
+				void setInstanceId(const std::string& instanceId);
+				std::string getYml()const;
+				void setYml(const std::string& yml);
+				std::string getOutputESUserName()const;
+				void setOutputESUserName(const std::string& outputESUserName);
+				std::string getToken()const;
+				void setToken(const std::string& token);
+
+            private:
+				std::string outputES_;
+				std::string outputESPassword_;
+				std::string instanceId_;
+				std::string yml_;
+				std::string outputESUserName_;
+				std::string token_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_ELASTICSEARCH_MODEL_UPDATEAPMREQUEST_H_

+ 51 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/UpdateApmResult.h

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

+ 3 - 3
elasticsearch/include/alibabacloud/elasticsearch/model/UpdateDescriptionRequest.h

@@ -39,13 +39,13 @@ namespace AlibabaCloud
 				void setInstanceId(const std::string& instanceId);
 				std::string getClientToken()const;
 				void setClientToken(const std::string& clientToken);
-				std::string getDescription()const;
-				void setDescription(const std::string& description);
+				std::string getBody()const;
+				void setBody(const std::string& body);
 
             private:
 				std::string instanceId_;
 				std::string clientToken_;
-				std::string description_;
+				std::string body_;
 
 			};
 		}

+ 252 - 0
elasticsearch/src/ElasticsearchClient.cc

@@ -267,6 +267,42 @@ ElasticsearchClient::CancelTaskOutcomeCallable ElasticsearchClient::cancelTaskCa
 	return task->get_future();
 }
 
+ElasticsearchClient::CapacityPlanOutcome ElasticsearchClient::capacityPlan(const CapacityPlanRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return CapacityPlanOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return CapacityPlanOutcome(CapacityPlanResult(outcome.result()));
+	else
+		return CapacityPlanOutcome(outcome.error());
+}
+
+void ElasticsearchClient::capacityPlanAsync(const CapacityPlanRequest& request, const CapacityPlanAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, capacityPlan(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+ElasticsearchClient::CapacityPlanOutcomeCallable ElasticsearchClient::capacityPlanCallable(const CapacityPlanRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<CapacityPlanOutcome()>>(
+			[this, request]()
+			{
+			return this->capacityPlan(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 ElasticsearchClient::CloseDiagnosisOutcome ElasticsearchClient::closeDiagnosis(const CloseDiagnosisRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -1203,6 +1239,42 @@ ElasticsearchClient::DescribeAckOperatorOutcomeCallable ElasticsearchClient::des
 	return task->get_future();
 }
 
+ElasticsearchClient::DescribeApmOutcome ElasticsearchClient::describeApm(const DescribeApmRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeApmOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeApmOutcome(DescribeApmResult(outcome.result()));
+	else
+		return DescribeApmOutcome(outcome.error());
+}
+
+void ElasticsearchClient::describeApmAsync(const DescribeApmRequest& request, const DescribeApmAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeApm(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+ElasticsearchClient::DescribeApmOutcomeCallable ElasticsearchClient::describeApmCallable(const DescribeApmRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeApmOutcome()>>(
+			[this, request]()
+			{
+			return this->describeApm(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 ElasticsearchClient::DescribeCollectorOutcome ElasticsearchClient::describeCollector(const DescribeCollectorRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -2067,6 +2139,42 @@ ElasticsearchClient::GetEmonMonitorDataOutcomeCallable ElasticsearchClient::getE
 	return task->get_future();
 }
 
+ElasticsearchClient::GetOpenStoreUsageOutcome ElasticsearchClient::getOpenStoreUsage(const GetOpenStoreUsageRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return GetOpenStoreUsageOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return GetOpenStoreUsageOutcome(GetOpenStoreUsageResult(outcome.result()));
+	else
+		return GetOpenStoreUsageOutcome(outcome.error());
+}
+
+void ElasticsearchClient::getOpenStoreUsageAsync(const GetOpenStoreUsageRequest& request, const GetOpenStoreUsageAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, getOpenStoreUsage(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+ElasticsearchClient::GetOpenStoreUsageOutcomeCallable ElasticsearchClient::getOpenStoreUsageCallable(const GetOpenStoreUsageRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<GetOpenStoreUsageOutcome()>>(
+			[this, request]()
+			{
+			return this->getOpenStoreUsage(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 ElasticsearchClient::GetRegionConfigurationOutcome ElasticsearchClient::getRegionConfiguration(const GetRegionConfigurationRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -4119,6 +4227,42 @@ ElasticsearchClient::ReinstallCollectorOutcomeCallable ElasticsearchClient::rein
 	return task->get_future();
 }
 
+ElasticsearchClient::RemoveApmOutcome ElasticsearchClient::removeApm(const RemoveApmRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return RemoveApmOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return RemoveApmOutcome(RemoveApmResult(outcome.result()));
+	else
+		return RemoveApmOutcome(outcome.error());
+}
+
+void ElasticsearchClient::removeApmAsync(const RemoveApmRequest& request, const RemoveApmAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, removeApm(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+ElasticsearchClient::RemoveApmOutcomeCallable ElasticsearchClient::removeApmCallable(const RemoveApmRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<RemoveApmOutcome()>>(
+			[this, request]()
+			{
+			return this->removeApm(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 ElasticsearchClient::RenewInstanceOutcome ElasticsearchClient::renewInstance(const RenewInstanceRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -4479,6 +4623,42 @@ ElasticsearchClient::ShrinkNodeOutcomeCallable ElasticsearchClient::shrinkNodeCa
 	return task->get_future();
 }
 
+ElasticsearchClient::StartApmOutcome ElasticsearchClient::startApm(const StartApmRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return StartApmOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return StartApmOutcome(StartApmResult(outcome.result()));
+	else
+		return StartApmOutcome(outcome.error());
+}
+
+void ElasticsearchClient::startApmAsync(const StartApmRequest& request, const StartApmAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, startApm(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+ElasticsearchClient::StartApmOutcomeCallable ElasticsearchClient::startApmCallable(const StartApmRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<StartApmOutcome()>>(
+			[this, request]()
+			{
+			return this->startApm(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 ElasticsearchClient::StartCollectorOutcome ElasticsearchClient::startCollector(const StartCollectorRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -4515,6 +4695,42 @@ ElasticsearchClient::StartCollectorOutcomeCallable ElasticsearchClient::startCol
 	return task->get_future();
 }
 
+ElasticsearchClient::StopApmOutcome ElasticsearchClient::stopApm(const StopApmRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return StopApmOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return StopApmOutcome(StopApmResult(outcome.result()));
+	else
+		return StopApmOutcome(outcome.error());
+}
+
+void ElasticsearchClient::stopApmAsync(const StopApmRequest& request, const StopApmAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, stopApm(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+ElasticsearchClient::StopApmOutcomeCallable ElasticsearchClient::stopApmCallable(const StopApmRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<StopApmOutcome()>>(
+			[this, request]()
+			{
+			return this->stopApm(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 ElasticsearchClient::StopCollectorOutcome ElasticsearchClient::stopCollector(const StopCollectorRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -4947,6 +5163,42 @@ ElasticsearchClient::UpdateAliwsDictOutcomeCallable ElasticsearchClient::updateA
 	return task->get_future();
 }
 
+ElasticsearchClient::UpdateApmOutcome ElasticsearchClient::updateApm(const UpdateApmRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return UpdateApmOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return UpdateApmOutcome(UpdateApmResult(outcome.result()));
+	else
+		return UpdateApmOutcome(outcome.error());
+}
+
+void ElasticsearchClient::updateApmAsync(const UpdateApmRequest& request, const UpdateApmAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, updateApm(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+ElasticsearchClient::UpdateApmOutcomeCallable ElasticsearchClient::updateApmCallable(const UpdateApmRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<UpdateApmOutcome()>>(
+			[this, request]()
+			{
+			return this->updateApm(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 ElasticsearchClient::UpdateBlackIpsOutcome ElasticsearchClient::updateBlackIps(const UpdateBlackIpsRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();

+ 30 - 0
elasticsearch/src/model/CapacityPlanRequest.cc

@@ -0,0 +1,30 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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/elasticsearch/model/CapacityPlanRequest.h>
+
+using AlibabaCloud::Elasticsearch::Model::CapacityPlanRequest;
+
+CapacityPlanRequest::CapacityPlanRequest() :
+	RoaServiceRequest("elasticsearch", "2017-06-13")
+{
+	setResourcePath("/openapi/assist/actions/capacity-plan");
+	setMethod(HttpRequest::Method::Post);
+}
+
+CapacityPlanRequest::~CapacityPlanRequest()
+{}
+

+ 84 - 0
elasticsearch/src/model/CapacityPlanResult.cc

@@ -0,0 +1,84 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/elasticsearch/model/CapacityPlanResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Elasticsearch;
+using namespace AlibabaCloud::Elasticsearch::Model;
+
+CapacityPlanResult::CapacityPlanResult() :
+	ServiceResult()
+{}
+
+CapacityPlanResult::CapacityPlanResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+CapacityPlanResult::~CapacityPlanResult()
+{}
+
+void CapacityPlanResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto resultNode = value["Result"];
+	if(!resultNode["InstanceCategory"].isNull())
+		result_.instanceCategory = resultNode["InstanceCategory"].asString();
+	if(!resultNode["OversizedCluster"].isNull())
+		result_.oversizedCluster = resultNode["OversizedCluster"].asString() == "true";
+	auto allExtendConfigsNode = resultNode["ExtendConfigs"]["ExtendConfigsItem"];
+	for (auto resultNodeExtendConfigsExtendConfigsItem : allExtendConfigsNode)
+	{
+		Result::ExtendConfigsItem extendConfigsItemObject;
+		if(!resultNodeExtendConfigsExtendConfigsItem["ConfigType"].isNull())
+			extendConfigsItemObject.configType = resultNodeExtendConfigsExtendConfigsItem["ConfigType"].asString();
+		if(!resultNodeExtendConfigsExtendConfigsItem["Disk"].isNull())
+			extendConfigsItemObject.disk = std::stol(resultNodeExtendConfigsExtendConfigsItem["Disk"].asString());
+		if(!resultNodeExtendConfigsExtendConfigsItem["DiskType"].isNull())
+			extendConfigsItemObject.diskType = resultNodeExtendConfigsExtendConfigsItem["DiskType"].asString();
+		result_.extendConfigs.push_back(extendConfigsItemObject);
+	}
+	auto allNodeConfigurationsNode = resultNode["NodeConfigurations"]["NodeConfigurationsItem"];
+	for (auto resultNodeNodeConfigurationsNodeConfigurationsItem : allNodeConfigurationsNode)
+	{
+		Result::NodeConfigurationsItem nodeConfigurationsItemObject;
+		if(!resultNodeNodeConfigurationsNodeConfigurationsItem["Amount"].isNull())
+			nodeConfigurationsItemObject.amount = std::stol(resultNodeNodeConfigurationsNodeConfigurationsItem["Amount"].asString());
+		if(!resultNodeNodeConfigurationsNodeConfigurationsItem["Cpu"].isNull())
+			nodeConfigurationsItemObject.cpu = std::stol(resultNodeNodeConfigurationsNodeConfigurationsItem["Cpu"].asString());
+		if(!resultNodeNodeConfigurationsNodeConfigurationsItem["Disk"].isNull())
+			nodeConfigurationsItemObject.disk = std::stol(resultNodeNodeConfigurationsNodeConfigurationsItem["Disk"].asString());
+		if(!resultNodeNodeConfigurationsNodeConfigurationsItem["DiskType"].isNull())
+			nodeConfigurationsItemObject.diskType = resultNodeNodeConfigurationsNodeConfigurationsItem["DiskType"].asString();
+		if(!resultNodeNodeConfigurationsNodeConfigurationsItem["Memory"].isNull())
+			nodeConfigurationsItemObject.memory = std::stol(resultNodeNodeConfigurationsNodeConfigurationsItem["Memory"].asString());
+		if(!resultNodeNodeConfigurationsNodeConfigurationsItem["NodeType"].isNull())
+			nodeConfigurationsItemObject.nodeType = resultNodeNodeConfigurationsNodeConfigurationsItem["NodeType"].asString();
+		result_.nodeConfigurations.push_back(nodeConfigurationsItemObject);
+	}
+
+}
+
+CapacityPlanResult::Result CapacityPlanResult::getResult()const
+{
+	return result_;
+}
+

+ 41 - 0
elasticsearch/src/model/DescribeApmRequest.cc

@@ -0,0 +1,41 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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/elasticsearch/model/DescribeApmRequest.h>
+
+using AlibabaCloud::Elasticsearch::Model::DescribeApmRequest;
+
+DescribeApmRequest::DescribeApmRequest() :
+	RoaServiceRequest("elasticsearch", "2017-06-13")
+{
+	setResourcePath("/openapi/apm/[instanceId]");
+	setMethod(HttpRequest::Method::Get);
+}
+
+DescribeApmRequest::~DescribeApmRequest()
+{}
+
+std::string DescribeApmRequest::getInstanceId()const
+{
+	return instanceId_;
+}
+
+void DescribeApmRequest::setInstanceId(const std::string& instanceId)
+{
+	instanceId_ = instanceId;
+	setParameter("InstanceId", instanceId);
+}
+

+ 88 - 0
elasticsearch/src/model/DescribeApmResult.cc

@@ -0,0 +1,88 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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/elasticsearch/model/DescribeApmResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Elasticsearch;
+using namespace AlibabaCloud::Elasticsearch::Model;
+
+DescribeApmResult::DescribeApmResult() :
+	ServiceResult()
+{}
+
+DescribeApmResult::DescribeApmResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeApmResult::~DescribeApmResult()
+{}
+
+void DescribeApmResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto resultNode = value["Result"];
+	if(!resultNode["CreatedAt"].isNull())
+		result_.createdAt = resultNode["CreatedAt"].asString();
+	if(!resultNode["DeployedReplica"].isNull())
+		result_.deployedReplica = std::stol(resultNode["DeployedReplica"].asString());
+	if(!resultNode["Description"].isNull())
+		result_.description = resultNode["Description"].asString();
+	if(!resultNode["EndTime"].isNull())
+		result_.endTime = std::stol(resultNode["EndTime"].asString());
+	if(!resultNode["InstanceId"].isNull())
+		result_.instanceId = resultNode["InstanceId"].asString();
+	if(!resultNode["NodeAmount"].isNull())
+		result_.nodeAmount = std::stol(resultNode["NodeAmount"].asString());
+	if(!resultNode["OutputES"].isNull())
+		result_.outputES = resultNode["OutputES"].asString();
+	if(!resultNode["OutputESUserName"].isNull())
+		result_.outputESUserName = resultNode["OutputESUserName"].asString();
+	if(!resultNode["OutputEsDescription"].isNull())
+		result_.outputEsDescription = resultNode["OutputEsDescription"].asString();
+	if(!resultNode["OwnerId"].isNull())
+		result_.ownerId = resultNode["OwnerId"].asString();
+	if(!resultNode["PaymentType"].isNull())
+		result_.paymentType = resultNode["PaymentType"].asString();
+	if(!resultNode["Region"].isNull())
+		result_.region = resultNode["Region"].asString();
+	if(!resultNode["Replica"].isNull())
+		result_.replica = std::stol(resultNode["Replica"].asString());
+	if(!resultNode["ResourceSpec"].isNull())
+		result_.resourceSpec = resultNode["ResourceSpec"].asString();
+	if(!resultNode["Status"].isNull())
+		result_.status = resultNode["Status"].asString();
+	if(!resultNode["Version"].isNull())
+		result_.version = resultNode["Version"].asString();
+	if(!resultNode["VpcId"].isNull())
+		result_.vpcId = resultNode["VpcId"].asString();
+	if(!resultNode["VsArea"].isNull())
+		result_.vsArea = resultNode["VsArea"].asString();
+	if(!resultNode["VswitchId"].isNull())
+		result_.vswitchId = resultNode["VswitchId"].asString();
+
+}
+
+DescribeApmResult::Result DescribeApmResult::getResult()const
+{
+	return result_;
+}
+

+ 41 - 0
elasticsearch/src/model/GetOpenStoreUsageRequest.cc

@@ -0,0 +1,41 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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/elasticsearch/model/GetOpenStoreUsageRequest.h>
+
+using AlibabaCloud::Elasticsearch::Model::GetOpenStoreUsageRequest;
+
+GetOpenStoreUsageRequest::GetOpenStoreUsageRequest() :
+	RoaServiceRequest("elasticsearch", "2017-06-13")
+{
+	setResourcePath("/openapi/instances/[InstanceId]/openstore/usage");
+	setMethod(HttpRequest::Method::Get);
+}
+
+GetOpenStoreUsageRequest::~GetOpenStoreUsageRequest()
+{}
+
+std::string GetOpenStoreUsageRequest::getInstanceId()const
+{
+	return instanceId_;
+}
+
+void GetOpenStoreUsageRequest::setInstanceId(const std::string& instanceId)
+{
+	instanceId_ = instanceId;
+	setParameter("InstanceId", instanceId);
+}
+

+ 54 - 0
elasticsearch/src/model/GetOpenStoreUsageResult.cc

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

+ 11 - 0
elasticsearch/src/model/ListAllNodeRequest.cc

@@ -39,3 +39,14 @@ void ListAllNodeRequest::setInstanceId(const std::string& instanceId)
 	setParameter("InstanceId", instanceId);
 }
 
+bool ListAllNodeRequest::getExtended()const
+{
+	return extended_;
+}
+
+void ListAllNodeRequest::setExtended(bool extended)
+{
+	extended_ = extended;
+	setParameter("Extended", extended ? "true" : "false");
+}
+

+ 12 - 10
elasticsearch/src/model/ListAllNodeResult.cc

@@ -43,24 +43,26 @@ void ListAllNodeResult::parse(const std::string &payload)
 	for (auto valueResultResultItem : allResultNode)
 	{
 		ResultItem resultObject;
-		if(!valueResultResultItem["host"].isNull())
-			resultObject.host = valueResultResultItem["host"].asString();
-		if(!valueResultResultItem["port"].isNull())
-			resultObject.port = std::stoi(valueResultResultItem["port"].asString());
+		if(!valueResultResultItem["heapPercent"].isNull())
+			resultObject.heapPercent = valueResultResultItem["heapPercent"].asString();
 		if(!valueResultResultItem["zoneId"].isNull())
 			resultObject.zoneId = valueResultResultItem["zoneId"].asString();
-		if(!valueResultResultItem["nodeType"].isNull())
-			resultObject.nodeType = valueResultResultItem["nodeType"].asString();
+		if(!valueResultResultItem["hostName"].isNull())
+			resultObject.hostName = valueResultResultItem["hostName"].asString();
 		if(!valueResultResultItem["cpuPercent"].isNull())
 			resultObject.cpuPercent = valueResultResultItem["cpuPercent"].asString();
+		if(!valueResultResultItem["host"].isNull())
+			resultObject.host = valueResultResultItem["host"].asString();
+		if(!valueResultResultItem["nodeType"].isNull())
+			resultObject.nodeType = valueResultResultItem["nodeType"].asString();
+		if(!valueResultResultItem["diskUsedPercent"].isNull())
+			resultObject.diskUsedPercent = valueResultResultItem["diskUsedPercent"].asString();
+		if(!valueResultResultItem["port"].isNull())
+			resultObject.port = std::stoi(valueResultResultItem["port"].asString());
 		if(!valueResultResultItem["loadOneM"].isNull())
 			resultObject.loadOneM = valueResultResultItem["loadOneM"].asString();
-		if(!valueResultResultItem["heapPercent"].isNull())
-			resultObject.heapPercent = valueResultResultItem["heapPercent"].asString();
 		if(!valueResultResultItem["health"].isNull())
 			resultObject.health = valueResultResultItem["health"].asString();
-		if(!valueResultResultItem["diskUsedPercent"].isNull())
-			resultObject.diskUsedPercent = valueResultResultItem["diskUsedPercent"].asString();
 		result_.push_back(resultObject);
 	}
 

+ 33 - 0
elasticsearch/src/model/ListInstanceIndicesRequest.cc

@@ -61,6 +61,17 @@ void ListInstanceIndicesRequest::setIsManaged(bool isManaged)
 	setParameter("IsManaged", isManaged ? "true" : "false");
 }
 
+int ListInstanceIndicesRequest::getSize()const
+{
+	return size_;
+}
+
+void ListInstanceIndicesRequest::setSize(int size)
+{
+	size_ = size;
+	setParameter("Size", std::to_string(size));
+}
+
 std::string ListInstanceIndicesRequest::getName()const
 {
 	return name_;
@@ -72,3 +83,25 @@ void ListInstanceIndicesRequest::setName(const std::string& name)
 	setParameter("Name", name);
 }
 
+int ListInstanceIndicesRequest::getPage()const
+{
+	return page_;
+}
+
+void ListInstanceIndicesRequest::setPage(int page)
+{
+	page_ = page;
+	setParameter("Page", std::to_string(page));
+}
+
+bool ListInstanceIndicesRequest::getIsOpenstore()const
+{
+	return isOpenstore_;
+}
+
+void ListInstanceIndicesRequest::setIsOpenstore(bool isOpenstore)
+{
+	isOpenstore_ = isOpenstore;
+	setParameter("IsOpenstore", isOpenstore ? "true" : "false");
+}
+

+ 18 - 10
elasticsearch/src/model/ListInstanceIndicesResult.cc

@@ -43,25 +43,33 @@ void ListInstanceIndicesResult::parse(const std::string &payload)
 	for (auto valueResultResultItem : allResultNode)
 	{
 		ResultItem resultObject;
-		if(!valueResultResultItem["name"].isNull())
-			resultObject.name = valueResultResultItem["name"].asString();
-		if(!valueResultResultItem["health"].isNull())
-			resultObject.health = valueResultResultItem["health"].asString();
-		if(!valueResultResultItem["size"].isNull())
-			resultObject.size = std::stol(valueResultResultItem["size"].asString());
-		if(!valueResultResultItem["createTime"].isNull())
-			resultObject.createTime = valueResultResultItem["createTime"].asString();
 		if(!valueResultResultItem["isManaged"].isNull())
 			resultObject.isManaged = valueResultResultItem["isManaged"].asString();
+		if(!valueResultResultItem["createTime"].isNull())
+			resultObject.createTime = valueResultResultItem["createTime"].asString();
+		if(!valueResultResultItem["size"].isNull())
+			resultObject.size = std::stol(valueResultResultItem["size"].asString());
 		if(!valueResultResultItem["managedStatus"].isNull())
 			resultObject.managedStatus = valueResultResultItem["managedStatus"].asString();
+		if(!valueResultResultItem["name"].isNull())
+			resultObject.name = valueResultResultItem["name"].asString();
+		if(!valueResultResultItem["health"].isNull())
+			resultObject.health = valueResultResultItem["health"].asString();
+		if(!valueResultResultItem["phase"].isNull())
+			resultObject.phase = valueResultResultItem["phase"].asString();
+		if(!valueResultResultItem["ilmExplain"].isNull())
+			resultObject.ilmExplain = valueResultResultItem["ilmExplain"].asString();
 		result_.push_back(resultObject);
 	}
 	auto headersNode = value["Headers"];
-	if(!headersNode["X-Managed-Count"].isNull())
-		headers_.xManagedCount = std::stoi(headersNode["X-Managed-Count"].asString());
 	if(!headersNode["X-Managed-StorageSize"].isNull())
 		headers_.xManagedStorageSize = std::stol(headersNode["X-Managed-StorageSize"].asString());
+	if(!headersNode["X-Managed-Count"].isNull())
+		headers_.xManagedCount = std::stoi(headersNode["X-Managed-Count"].asString());
+	if(!headersNode["X-OSS-StorageSize"].isNull())
+		headers_.xOSSStorageSize = std::stol(headersNode["X-OSS-StorageSize"].asString());
+	if(!headersNode["X-OSS-Count"].isNull())
+		headers_.xOSSCount = std::stoi(headersNode["X-OSS-Count"].asString());
 
 }
 

+ 41 - 0
elasticsearch/src/model/RemoveApmRequest.cc

@@ -0,0 +1,41 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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/elasticsearch/model/RemoveApmRequest.h>
+
+using AlibabaCloud::Elasticsearch::Model::RemoveApmRequest;
+
+RemoveApmRequest::RemoveApmRequest() :
+	RoaServiceRequest("elasticsearch", "2017-06-13")
+{
+	setResourcePath("/openapi/apm/[instanceId]");
+	setMethod(HttpRequest::Method::Delete);
+}
+
+RemoveApmRequest::~RemoveApmRequest()
+{}
+
+std::string RemoveApmRequest::getInstanceId()const
+{
+	return instanceId_;
+}
+
+void RemoveApmRequest::setInstanceId(const std::string& instanceId)
+{
+	instanceId_ = instanceId;
+	setParameter("InstanceId", instanceId);
+}
+

+ 51 - 0
elasticsearch/src/model/RemoveApmResult.cc

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

+ 41 - 0
elasticsearch/src/model/StartApmRequest.cc

@@ -0,0 +1,41 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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/elasticsearch/model/StartApmRequest.h>
+
+using AlibabaCloud::Elasticsearch::Model::StartApmRequest;
+
+StartApmRequest::StartApmRequest() :
+	RoaServiceRequest("elasticsearch", "2017-06-13")
+{
+	setResourcePath("/openapi/apm/[instanceId]/actions/start");
+	setMethod(HttpRequest::Method::Post);
+}
+
+StartApmRequest::~StartApmRequest()
+{}
+
+std::string StartApmRequest::getInstanceId()const
+{
+	return instanceId_;
+}
+
+void StartApmRequest::setInstanceId(const std::string& instanceId)
+{
+	instanceId_ = instanceId;
+	setParameter("InstanceId", instanceId);
+}
+

+ 51 - 0
elasticsearch/src/model/StartApmResult.cc

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

+ 41 - 0
elasticsearch/src/model/StopApmRequest.cc

@@ -0,0 +1,41 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT 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/elasticsearch/model/StopApmRequest.h>
+
+using AlibabaCloud::Elasticsearch::Model::StopApmRequest;
+
+StopApmRequest::StopApmRequest() :
+	RoaServiceRequest("elasticsearch", "2017-06-13")
+{
+	setResourcePath("/openapi/apm/[instanceId]/actions/stop");
+	setMethod(HttpRequest::Method::Post);
+}
+
+StopApmRequest::~StopApmRequest()
+{}
+
+std::string StopApmRequest::getInstanceId()const
+{
+	return instanceId_;
+}
+
+void StopApmRequest::setInstanceId(const std::string& instanceId)
+{
+	instanceId_ = instanceId;
+	setParameter("InstanceId", instanceId);
+}
+

+ 51 - 0
elasticsearch/src/model/StopApmResult.cc

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

+ 96 - 0
elasticsearch/src/model/UpdateApmRequest.cc

@@ -0,0 +1,96 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/elasticsearch/model/UpdateApmRequest.h>
+
+using AlibabaCloud::Elasticsearch::Model::UpdateApmRequest;
+
+UpdateApmRequest::UpdateApmRequest() :
+	RoaServiceRequest("elasticsearch", "2017-06-13")
+{
+	setResourcePath("/openapi/apm/[instanceId]");
+	setMethod(HttpRequest::Method::Put);
+}
+
+UpdateApmRequest::~UpdateApmRequest()
+{}
+
+std::string UpdateApmRequest::getOutputES()const
+{
+	return outputES_;
+}
+
+void UpdateApmRequest::setOutputES(const std::string& outputES)
+{
+	outputES_ = outputES;
+	setParameter("OutputES", outputES);
+}
+
+std::string UpdateApmRequest::getOutputESPassword()const
+{
+	return outputESPassword_;
+}
+
+void UpdateApmRequest::setOutputESPassword(const std::string& outputESPassword)
+{
+	outputESPassword_ = outputESPassword;
+	setParameter("OutputESPassword", outputESPassword);
+}
+
+std::string UpdateApmRequest::getInstanceId()const
+{
+	return instanceId_;
+}
+
+void UpdateApmRequest::setInstanceId(const std::string& instanceId)
+{
+	instanceId_ = instanceId;
+	setParameter("InstanceId", instanceId);
+}
+
+std::string UpdateApmRequest::getYml()const
+{
+	return yml_;
+}
+
+void UpdateApmRequest::setYml(const std::string& yml)
+{
+	yml_ = yml;
+	setParameter("Yml", yml);
+}
+
+std::string UpdateApmRequest::getOutputESUserName()const
+{
+	return outputESUserName_;
+}
+
+void UpdateApmRequest::setOutputESUserName(const std::string& outputESUserName)
+{
+	outputESUserName_ = outputESUserName;
+	setParameter("OutputESUserName", outputESUserName);
+}
+
+std::string UpdateApmRequest::getToken()const
+{
+	return token_;
+}
+
+void UpdateApmRequest::setToken(const std::string& token)
+{
+	token_ = token;
+	setParameter("Token", token);
+}
+

+ 51 - 0
elasticsearch/src/model/UpdateApmResult.cc

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

+ 5 - 5
elasticsearch/src/model/UpdateDescriptionRequest.cc

@@ -50,14 +50,14 @@ void UpdateDescriptionRequest::setClientToken(const std::string& clientToken)
 	setParameter("ClientToken", clientToken);
 }
 
-std::string UpdateDescriptionRequest::getDescription()const
+std::string UpdateDescriptionRequest::getBody()const
 {
-	return description_;
+	return body_;
 }
 
-void UpdateDescriptionRequest::setDescription(const std::string& description)
+void UpdateDescriptionRequest::setBody(const std::string& body)
 {
-	description_ = description;
-	setBodyParameter("Description", description);
+	body_ = body;
+	setBodyParameter("Body", body);
 }