Ver código fonte

Add private-link support.

sdk-team 5 anos atrás
pai
commit
1177c92105
43 arquivos alterados com 1594 adições e 31 exclusões
  1. 6 0
      CHANGELOG
  2. 1 1
      VERSION
  3. 20 0
      elasticsearch/CMakeLists.txt
  4. 40 0
      elasticsearch/include/alibabacloud/elasticsearch/ElasticsearchClient.h
  5. 54 0
      elasticsearch/include/alibabacloud/elasticsearch/model/CreateVpcEndpointRequest.h
  6. 58 0
      elasticsearch/include/alibabacloud/elasticsearch/model/CreateVpcEndpointResult.h
  7. 54 0
      elasticsearch/include/alibabacloud/elasticsearch/model/DeleteVpcEndpointRequest.h
  8. 51 0
      elasticsearch/include/alibabacloud/elasticsearch/model/DeleteVpcEndpointResult.h
  9. 26 16
      elasticsearch/include/alibabacloud/elasticsearch/model/DescribeInstanceResult.h
  10. 54 0
      elasticsearch/include/alibabacloud/elasticsearch/model/ListDictsRequest.h
  11. 65 0
      elasticsearch/include/alibabacloud/elasticsearch/model/ListDictsResult.h
  12. 3 3
      elasticsearch/include/alibabacloud/elasticsearch/model/ListInstanceIndicesRequest.h
  13. 2 0
      elasticsearch/include/alibabacloud/elasticsearch/model/ListInstanceResult.h
  14. 51 0
      elasticsearch/include/alibabacloud/elasticsearch/model/ListShardRecoveriesRequest.h
  15. 66 0
      elasticsearch/include/alibabacloud/elasticsearch/model/ListShardRecoveriesResult.h
  16. 54 0
      elasticsearch/include/alibabacloud/elasticsearch/model/ListVpcEndpointsRequest.h
  17. 63 0
      elasticsearch/include/alibabacloud/elasticsearch/model/ListVpcEndpointsResult.h
  18. 3 0
      elasticsearch/include/alibabacloud/elasticsearch/model/ModifyWhiteIpsRequest.h
  19. 3 0
      elasticsearch/include/alibabacloud/elasticsearch/model/UpdateKibanaWhiteIpsRequest.h
  20. 1 0
      elasticsearch/include/alibabacloud/elasticsearch/model/UpdateKibanaWhiteIpsResult.h
  21. 3 0
      elasticsearch/include/alibabacloud/elasticsearch/model/UpdatePrivateNetworkWhiteIpsRequest.h
  22. 3 0
      elasticsearch/include/alibabacloud/elasticsearch/model/UpdatePublicWhiteIpsRequest.h
  23. 3 0
      elasticsearch/include/alibabacloud/elasticsearch/model/UpdateWhiteIpsRequest.h
  24. 180 0
      elasticsearch/src/ElasticsearchClient.cc
  25. 63 0
      elasticsearch/src/model/CreateVpcEndpointRequest.cc
  26. 58 0
      elasticsearch/src/model/CreateVpcEndpointResult.cc
  27. 63 0
      elasticsearch/src/model/DeleteVpcEndpointRequest.cc
  28. 51 0
      elasticsearch/src/model/DeleteVpcEndpointResult.cc
  29. 19 0
      elasticsearch/src/model/DescribeInstanceResult.cc
  30. 63 0
      elasticsearch/src/model/ListDictsRequest.cc
  31. 73 0
      elasticsearch/src/model/ListDictsResult.cc
  32. 11 11
      elasticsearch/src/model/ListInstanceIndicesRequest.cc
  33. 4 0
      elasticsearch/src/model/ListInstanceResult.cc
  34. 52 0
      elasticsearch/src/model/ListShardRecoveriesRequest.cc
  35. 79 0
      elasticsearch/src/model/ListShardRecoveriesResult.cc
  36. 63 0
      elasticsearch/src/model/ListVpcEndpointsRequest.cc
  37. 73 0
      elasticsearch/src/model/ListVpcEndpointsResult.cc
  38. 11 0
      elasticsearch/src/model/ModifyWhiteIpsRequest.cc
  39. 11 0
      elasticsearch/src/model/UpdateKibanaWhiteIpsRequest.cc
  40. 3 0
      elasticsearch/src/model/UpdateKibanaWhiteIpsResult.cc
  41. 11 0
      elasticsearch/src/model/UpdatePrivateNetworkWhiteIpsRequest.cc
  42. 11 0
      elasticsearch/src/model/UpdatePublicWhiteIpsRequest.cc
  43. 11 0
      elasticsearch/src/model/UpdateWhiteIpsRequest.cc

+ 6 - 0
CHANGELOG

@@ -1,3 +1,9 @@
+2021-07-22 Version: 1.36.825
+- Add private-link support.
+- Add download dicts.
+- Add whiteIpGroup support.
+- Add recovery infos support.
+
 2021-07-21 Version: 1.36.824
 - Create Lindorm Open api.
 

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.36.824
+1.36.825

+ 20 - 0
elasticsearch/CMakeLists.txt

@@ -57,6 +57,8 @@ set(elasticsearch_public_header_model
 	include/alibabacloud/elasticsearch/model/CreatePipelinesResult.h
 	include/alibabacloud/elasticsearch/model/CreateSnapshotRequest.h
 	include/alibabacloud/elasticsearch/model/CreateSnapshotResult.h
+	include/alibabacloud/elasticsearch/model/CreateVpcEndpointRequest.h
+	include/alibabacloud/elasticsearch/model/CreateVpcEndpointResult.h
 	include/alibabacloud/elasticsearch/model/DeactivateZonesRequest.h
 	include/alibabacloud/elasticsearch/model/DeactivateZonesResult.h
 	include/alibabacloud/elasticsearch/model/DeleteCollectorRequest.h
@@ -79,6 +81,8 @@ set(elasticsearch_public_header_model
 	include/alibabacloud/elasticsearch/model/DeletePipelinesResult.h
 	include/alibabacloud/elasticsearch/model/DeleteSnapshotRepoRequest.h
 	include/alibabacloud/elasticsearch/model/DeleteSnapshotRepoResult.h
+	include/alibabacloud/elasticsearch/model/DeleteVpcEndpointRequest.h
+	include/alibabacloud/elasticsearch/model/DeleteVpcEndpointResult.h
 	include/alibabacloud/elasticsearch/model/DescribeAckOperatorRequest.h
 	include/alibabacloud/elasticsearch/model/DescribeAckOperatorResult.h
 	include/alibabacloud/elasticsearch/model/DescribeCollectorRequest.h
@@ -179,6 +183,8 @@ set(elasticsearch_public_header_model
 	include/alibabacloud/elasticsearch/model/ListDiagnoseReportIdsResult.h
 	include/alibabacloud/elasticsearch/model/ListDictInformationRequest.h
 	include/alibabacloud/elasticsearch/model/ListDictInformationResult.h
+	include/alibabacloud/elasticsearch/model/ListDictsRequest.h
+	include/alibabacloud/elasticsearch/model/ListDictsResult.h
 	include/alibabacloud/elasticsearch/model/ListEcsInstancesRequest.h
 	include/alibabacloud/elasticsearch/model/ListEcsInstancesResult.h
 	include/alibabacloud/elasticsearch/model/ListExtendfilesRequest.h
@@ -209,12 +215,16 @@ set(elasticsearch_public_header_model
 	include/alibabacloud/elasticsearch/model/ListPluginsResult.h
 	include/alibabacloud/elasticsearch/model/ListSearchLogRequest.h
 	include/alibabacloud/elasticsearch/model/ListSearchLogResult.h
+	include/alibabacloud/elasticsearch/model/ListShardRecoveriesRequest.h
+	include/alibabacloud/elasticsearch/model/ListShardRecoveriesResult.h
 	include/alibabacloud/elasticsearch/model/ListSnapshotReposByInstanceIdRequest.h
 	include/alibabacloud/elasticsearch/model/ListSnapshotReposByInstanceIdResult.h
 	include/alibabacloud/elasticsearch/model/ListTagResourcesRequest.h
 	include/alibabacloud/elasticsearch/model/ListTagResourcesResult.h
 	include/alibabacloud/elasticsearch/model/ListTagsRequest.h
 	include/alibabacloud/elasticsearch/model/ListTagsResult.h
+	include/alibabacloud/elasticsearch/model/ListVpcEndpointsRequest.h
+	include/alibabacloud/elasticsearch/model/ListVpcEndpointsResult.h
 	include/alibabacloud/elasticsearch/model/MigrateToOtherZoneRequest.h
 	include/alibabacloud/elasticsearch/model/MigrateToOtherZoneResult.h
 	include/alibabacloud/elasticsearch/model/ModifyDeployMachineRequest.h
@@ -394,6 +404,8 @@ set(elasticsearch_src
 	src/model/CreatePipelinesResult.cc
 	src/model/CreateSnapshotRequest.cc
 	src/model/CreateSnapshotResult.cc
+	src/model/CreateVpcEndpointRequest.cc
+	src/model/CreateVpcEndpointResult.cc
 	src/model/DeactivateZonesRequest.cc
 	src/model/DeactivateZonesResult.cc
 	src/model/DeleteCollectorRequest.cc
@@ -416,6 +428,8 @@ set(elasticsearch_src
 	src/model/DeletePipelinesResult.cc
 	src/model/DeleteSnapshotRepoRequest.cc
 	src/model/DeleteSnapshotRepoResult.cc
+	src/model/DeleteVpcEndpointRequest.cc
+	src/model/DeleteVpcEndpointResult.cc
 	src/model/DescribeAckOperatorRequest.cc
 	src/model/DescribeAckOperatorResult.cc
 	src/model/DescribeCollectorRequest.cc
@@ -516,6 +530,8 @@ set(elasticsearch_src
 	src/model/ListDiagnoseReportIdsResult.cc
 	src/model/ListDictInformationRequest.cc
 	src/model/ListDictInformationResult.cc
+	src/model/ListDictsRequest.cc
+	src/model/ListDictsResult.cc
 	src/model/ListEcsInstancesRequest.cc
 	src/model/ListEcsInstancesResult.cc
 	src/model/ListExtendfilesRequest.cc
@@ -546,12 +562,16 @@ set(elasticsearch_src
 	src/model/ListPluginsResult.cc
 	src/model/ListSearchLogRequest.cc
 	src/model/ListSearchLogResult.cc
+	src/model/ListShardRecoveriesRequest.cc
+	src/model/ListShardRecoveriesResult.cc
 	src/model/ListSnapshotReposByInstanceIdRequest.cc
 	src/model/ListSnapshotReposByInstanceIdResult.cc
 	src/model/ListTagResourcesRequest.cc
 	src/model/ListTagResourcesResult.cc
 	src/model/ListTagsRequest.cc
 	src/model/ListTagsResult.cc
+	src/model/ListVpcEndpointsRequest.cc
+	src/model/ListVpcEndpointsResult.cc
 	src/model/MigrateToOtherZoneRequest.cc
 	src/model/MigrateToOtherZoneResult.cc
 	src/model/ModifyDeployMachineRequest.cc

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

@@ -58,6 +58,8 @@
 #include "model/CreatePipelinesResult.h"
 #include "model/CreateSnapshotRequest.h"
 #include "model/CreateSnapshotResult.h"
+#include "model/CreateVpcEndpointRequest.h"
+#include "model/CreateVpcEndpointResult.h"
 #include "model/DeactivateZonesRequest.h"
 #include "model/DeactivateZonesResult.h"
 #include "model/DeleteCollectorRequest.h"
@@ -80,6 +82,8 @@
 #include "model/DeletePipelinesResult.h"
 #include "model/DeleteSnapshotRepoRequest.h"
 #include "model/DeleteSnapshotRepoResult.h"
+#include "model/DeleteVpcEndpointRequest.h"
+#include "model/DeleteVpcEndpointResult.h"
 #include "model/DescribeAckOperatorRequest.h"
 #include "model/DescribeAckOperatorResult.h"
 #include "model/DescribeCollectorRequest.h"
@@ -180,6 +184,8 @@
 #include "model/ListDiagnoseReportIdsResult.h"
 #include "model/ListDictInformationRequest.h"
 #include "model/ListDictInformationResult.h"
+#include "model/ListDictsRequest.h"
+#include "model/ListDictsResult.h"
 #include "model/ListEcsInstancesRequest.h"
 #include "model/ListEcsInstancesResult.h"
 #include "model/ListExtendfilesRequest.h"
@@ -210,12 +216,16 @@
 #include "model/ListPluginsResult.h"
 #include "model/ListSearchLogRequest.h"
 #include "model/ListSearchLogResult.h"
+#include "model/ListShardRecoveriesRequest.h"
+#include "model/ListShardRecoveriesResult.h"
 #include "model/ListSnapshotReposByInstanceIdRequest.h"
 #include "model/ListSnapshotReposByInstanceIdResult.h"
 #include "model/ListTagResourcesRequest.h"
 #include "model/ListTagResourcesResult.h"
 #include "model/ListTagsRequest.h"
 #include "model/ListTagsResult.h"
+#include "model/ListVpcEndpointsRequest.h"
+#include "model/ListVpcEndpointsResult.h"
 #include "model/MigrateToOtherZoneRequest.h"
 #include "model/MigrateToOtherZoneResult.h"
 #include "model/ModifyDeployMachineRequest.h"
@@ -419,6 +429,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::CreateSnapshotResult> CreateSnapshotOutcome;
 			typedef std::future<CreateSnapshotOutcome> CreateSnapshotOutcomeCallable;
 			typedef std::function<void(const ElasticsearchClient*, const Model::CreateSnapshotRequest&, const CreateSnapshotOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateSnapshotAsyncHandler;
+			typedef Outcome<Error, Model::CreateVpcEndpointResult> CreateVpcEndpointOutcome;
+			typedef std::future<CreateVpcEndpointOutcome> CreateVpcEndpointOutcomeCallable;
+			typedef std::function<void(const ElasticsearchClient*, const Model::CreateVpcEndpointRequest&, const CreateVpcEndpointOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateVpcEndpointAsyncHandler;
 			typedef Outcome<Error, Model::DeactivateZonesResult> DeactivateZonesOutcome;
 			typedef std::future<DeactivateZonesOutcome> DeactivateZonesOutcomeCallable;
 			typedef std::function<void(const ElasticsearchClient*, const Model::DeactivateZonesRequest&, const DeactivateZonesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeactivateZonesAsyncHandler;
@@ -452,6 +465,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::DeleteSnapshotRepoResult> DeleteSnapshotRepoOutcome;
 			typedef std::future<DeleteSnapshotRepoOutcome> DeleteSnapshotRepoOutcomeCallable;
 			typedef std::function<void(const ElasticsearchClient*, const Model::DeleteSnapshotRepoRequest&, const DeleteSnapshotRepoOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteSnapshotRepoAsyncHandler;
+			typedef Outcome<Error, Model::DeleteVpcEndpointResult> DeleteVpcEndpointOutcome;
+			typedef std::future<DeleteVpcEndpointOutcome> DeleteVpcEndpointOutcomeCallable;
+			typedef std::function<void(const ElasticsearchClient*, const Model::DeleteVpcEndpointRequest&, const DeleteVpcEndpointOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteVpcEndpointAsyncHandler;
 			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;
@@ -602,6 +618,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::ListDictInformationResult> ListDictInformationOutcome;
 			typedef std::future<ListDictInformationOutcome> ListDictInformationOutcomeCallable;
 			typedef std::function<void(const ElasticsearchClient*, const Model::ListDictInformationRequest&, const ListDictInformationOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListDictInformationAsyncHandler;
+			typedef Outcome<Error, Model::ListDictsResult> ListDictsOutcome;
+			typedef std::future<ListDictsOutcome> ListDictsOutcomeCallable;
+			typedef std::function<void(const ElasticsearchClient*, const Model::ListDictsRequest&, const ListDictsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListDictsAsyncHandler;
 			typedef Outcome<Error, Model::ListEcsInstancesResult> ListEcsInstancesOutcome;
 			typedef std::future<ListEcsInstancesOutcome> ListEcsInstancesOutcomeCallable;
 			typedef std::function<void(const ElasticsearchClient*, const Model::ListEcsInstancesRequest&, const ListEcsInstancesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListEcsInstancesAsyncHandler;
@@ -647,6 +666,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::ListSearchLogResult> ListSearchLogOutcome;
 			typedef std::future<ListSearchLogOutcome> ListSearchLogOutcomeCallable;
 			typedef std::function<void(const ElasticsearchClient*, const Model::ListSearchLogRequest&, const ListSearchLogOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListSearchLogAsyncHandler;
+			typedef Outcome<Error, Model::ListShardRecoveriesResult> ListShardRecoveriesOutcome;
+			typedef std::future<ListShardRecoveriesOutcome> ListShardRecoveriesOutcomeCallable;
+			typedef std::function<void(const ElasticsearchClient*, const Model::ListShardRecoveriesRequest&, const ListShardRecoveriesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListShardRecoveriesAsyncHandler;
 			typedef Outcome<Error, Model::ListSnapshotReposByInstanceIdResult> ListSnapshotReposByInstanceIdOutcome;
 			typedef std::future<ListSnapshotReposByInstanceIdOutcome> ListSnapshotReposByInstanceIdOutcomeCallable;
 			typedef std::function<void(const ElasticsearchClient*, const Model::ListSnapshotReposByInstanceIdRequest&, const ListSnapshotReposByInstanceIdOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListSnapshotReposByInstanceIdAsyncHandler;
@@ -656,6 +678,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::ListTagsResult> ListTagsOutcome;
 			typedef std::future<ListTagsOutcome> ListTagsOutcomeCallable;
 			typedef std::function<void(const ElasticsearchClient*, const Model::ListTagsRequest&, const ListTagsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListTagsAsyncHandler;
+			typedef Outcome<Error, Model::ListVpcEndpointsResult> ListVpcEndpointsOutcome;
+			typedef std::future<ListVpcEndpointsOutcome> ListVpcEndpointsOutcomeCallable;
+			typedef std::function<void(const ElasticsearchClient*, const Model::ListVpcEndpointsRequest&, const ListVpcEndpointsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListVpcEndpointsAsyncHandler;
 			typedef Outcome<Error, Model::MigrateToOtherZoneResult> MigrateToOtherZoneOutcome;
 			typedef std::future<MigrateToOtherZoneOutcome> MigrateToOtherZoneOutcomeCallable;
 			typedef std::function<void(const ElasticsearchClient*, const Model::MigrateToOtherZoneRequest&, const MigrateToOtherZoneOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> MigrateToOtherZoneAsyncHandler;
@@ -925,6 +950,9 @@ namespace AlibabaCloud
 			CreateSnapshotOutcome createSnapshot(const Model::CreateSnapshotRequest &request)const;
 			void createSnapshotAsync(const Model::CreateSnapshotRequest& request, const CreateSnapshotAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			CreateSnapshotOutcomeCallable createSnapshotCallable(const Model::CreateSnapshotRequest& request) const;
+			CreateVpcEndpointOutcome createVpcEndpoint(const Model::CreateVpcEndpointRequest &request)const;
+			void createVpcEndpointAsync(const Model::CreateVpcEndpointRequest& request, const CreateVpcEndpointAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			CreateVpcEndpointOutcomeCallable createVpcEndpointCallable(const Model::CreateVpcEndpointRequest& request) const;
 			DeactivateZonesOutcome deactivateZones(const Model::DeactivateZonesRequest &request)const;
 			void deactivateZonesAsync(const Model::DeactivateZonesRequest& request, const DeactivateZonesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DeactivateZonesOutcomeCallable deactivateZonesCallable(const Model::DeactivateZonesRequest& request) const;
@@ -958,6 +986,9 @@ namespace AlibabaCloud
 			DeleteSnapshotRepoOutcome deleteSnapshotRepo(const Model::DeleteSnapshotRepoRequest &request)const;
 			void deleteSnapshotRepoAsync(const Model::DeleteSnapshotRepoRequest& request, const DeleteSnapshotRepoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DeleteSnapshotRepoOutcomeCallable deleteSnapshotRepoCallable(const Model::DeleteSnapshotRepoRequest& request) const;
+			DeleteVpcEndpointOutcome deleteVpcEndpoint(const Model::DeleteVpcEndpointRequest &request)const;
+			void deleteVpcEndpointAsync(const Model::DeleteVpcEndpointRequest& request, const DeleteVpcEndpointAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DeleteVpcEndpointOutcomeCallable deleteVpcEndpointCallable(const Model::DeleteVpcEndpointRequest& request) const;
 			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;
@@ -1108,6 +1139,9 @@ namespace AlibabaCloud
 			ListDictInformationOutcome listDictInformation(const Model::ListDictInformationRequest &request)const;
 			void listDictInformationAsync(const Model::ListDictInformationRequest& request, const ListDictInformationAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListDictInformationOutcomeCallable listDictInformationCallable(const Model::ListDictInformationRequest& request) const;
+			ListDictsOutcome listDicts(const Model::ListDictsRequest &request)const;
+			void listDictsAsync(const Model::ListDictsRequest& request, const ListDictsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListDictsOutcomeCallable listDictsCallable(const Model::ListDictsRequest& request) const;
 			ListEcsInstancesOutcome listEcsInstances(const Model::ListEcsInstancesRequest &request)const;
 			void listEcsInstancesAsync(const Model::ListEcsInstancesRequest& request, const ListEcsInstancesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListEcsInstancesOutcomeCallable listEcsInstancesCallable(const Model::ListEcsInstancesRequest& request) const;
@@ -1153,6 +1187,9 @@ namespace AlibabaCloud
 			ListSearchLogOutcome listSearchLog(const Model::ListSearchLogRequest &request)const;
 			void listSearchLogAsync(const Model::ListSearchLogRequest& request, const ListSearchLogAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListSearchLogOutcomeCallable listSearchLogCallable(const Model::ListSearchLogRequest& request) const;
+			ListShardRecoveriesOutcome listShardRecoveries(const Model::ListShardRecoveriesRequest &request)const;
+			void listShardRecoveriesAsync(const Model::ListShardRecoveriesRequest& request, const ListShardRecoveriesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListShardRecoveriesOutcomeCallable listShardRecoveriesCallable(const Model::ListShardRecoveriesRequest& request) const;
 			ListSnapshotReposByInstanceIdOutcome listSnapshotReposByInstanceId(const Model::ListSnapshotReposByInstanceIdRequest &request)const;
 			void listSnapshotReposByInstanceIdAsync(const Model::ListSnapshotReposByInstanceIdRequest& request, const ListSnapshotReposByInstanceIdAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListSnapshotReposByInstanceIdOutcomeCallable listSnapshotReposByInstanceIdCallable(const Model::ListSnapshotReposByInstanceIdRequest& request) const;
@@ -1162,6 +1199,9 @@ namespace AlibabaCloud
 			ListTagsOutcome listTags(const Model::ListTagsRequest &request)const;
 			void listTagsAsync(const Model::ListTagsRequest& request, const ListTagsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			ListTagsOutcomeCallable listTagsCallable(const Model::ListTagsRequest& request) const;
+			ListVpcEndpointsOutcome listVpcEndpoints(const Model::ListVpcEndpointsRequest &request)const;
+			void listVpcEndpointsAsync(const Model::ListVpcEndpointsRequest& request, const ListVpcEndpointsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListVpcEndpointsOutcomeCallable listVpcEndpointsCallable(const Model::ListVpcEndpointsRequest& request) const;
 			MigrateToOtherZoneOutcome migrateToOtherZone(const Model::MigrateToOtherZoneRequest &request)const;
 			void migrateToOtherZoneAsync(const Model::MigrateToOtherZoneRequest& request, const MigrateToOtherZoneAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			MigrateToOtherZoneOutcomeCallable migrateToOtherZoneCallable(const Model::MigrateToOtherZoneRequest& request) const;

+ 54 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/CreateVpcEndpointRequest.h

@@ -0,0 +1,54 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_ELASTICSEARCH_MODEL_CREATEVPCENDPOINTREQUEST_H_
+#define ALIBABACLOUD_ELASTICSEARCH_MODEL_CREATEVPCENDPOINTREQUEST_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 CreateVpcEndpointRequest : public RoaServiceRequest
+			{
+
+			public:
+				CreateVpcEndpointRequest();
+				~CreateVpcEndpointRequest();
+
+				std::string getInstanceId()const;
+				void setInstanceId(const std::string& instanceId);
+				bool getDryRun()const;
+				void setDryRun(bool dryRun);
+				std::string getClientToken()const;
+				void setClientToken(const std::string& clientToken);
+
+            private:
+				std::string instanceId_;
+				bool dryRun_;
+				std::string clientToken_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_ELASTICSEARCH_MODEL_CREATEVPCENDPOINTREQUEST_H_

+ 58 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/CreateVpcEndpointResult.h

@@ -0,0 +1,58 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_ELASTICSEARCH_MODEL_CREATEVPCENDPOINTRESULT_H_
+#define ALIBABACLOUD_ELASTICSEARCH_MODEL_CREATEVPCENDPOINTRESULT_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 CreateVpcEndpointResult : public ServiceResult
+			{
+			public:
+				struct Result
+				{
+					std::string endpointName;
+					std::string endpointDomain;
+					std::string endpointId;
+					std::string serviceId;
+				};
+
+
+				CreateVpcEndpointResult();
+				explicit CreateVpcEndpointResult(const std::string &payload);
+				~CreateVpcEndpointResult();
+				Result getResult()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				Result result_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_ELASTICSEARCH_MODEL_CREATEVPCENDPOINTRESULT_H_

+ 54 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/DeleteVpcEndpointRequest.h

@@ -0,0 +1,54 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_ELASTICSEARCH_MODEL_DELETEVPCENDPOINTREQUEST_H_
+#define ALIBABACLOUD_ELASTICSEARCH_MODEL_DELETEVPCENDPOINTREQUEST_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 DeleteVpcEndpointRequest : public RoaServiceRequest
+			{
+
+			public:
+				DeleteVpcEndpointRequest();
+				~DeleteVpcEndpointRequest();
+
+				std::string getInstanceId()const;
+				void setInstanceId(const std::string& instanceId);
+				std::string getClientToken()const;
+				void setClientToken(const std::string& clientToken);
+				std::string getEndpointId()const;
+				void setEndpointId(const std::string& endpointId);
+
+            private:
+				std::string instanceId_;
+				std::string clientToken_;
+				std::string endpointId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_ELASTICSEARCH_MODEL_DELETEVPCENDPOINTREQUEST_H_

+ 51 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/DeleteVpcEndpointResult.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_DELETEVPCENDPOINTRESULT_H_
+#define ALIBABACLOUD_ELASTICSEARCH_MODEL_DELETEVPCENDPOINTRESULT_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 DeleteVpcEndpointResult : public ServiceResult
+			{
+			public:
+
+
+				DeleteVpcEndpointResult();
+				explicit DeleteVpcEndpointResult(const std::string &payload);
+				~DeleteVpcEndpointResult();
+				bool getResult()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				bool result_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_ELASTICSEARCH_MODEL_DELETEVPCENDPOINTRESULT_H_

+ 26 - 16
elasticsearch/include/alibabacloud/elasticsearch/model/DescribeInstanceResult.h

@@ -43,8 +43,15 @@ namespace AlibabaCloud
 					};
 					struct NetworkConfig
 					{
+						struct WhiteIpGroupListItem
+						{
+							std::string groupName;
+							std::string whiteIpType;
+							std::vector<std::string> ips;
+						};
 						std::string type;
 						std::string vpcId;
+						std::vector<WhiteIpGroupListItem> whiteIpGroupList;
 						std::string vswitchId;
 						std::string vsArea;
 					};
@@ -119,7 +126,6 @@ namespace AlibabaCloud
 						std::string tagValue;
 					};
 					MasterConfiguration masterConfiguration;
-					std::string description;
 					std::string resourceGroupId;
 					ElasticDataNodeConfiguration elasticDataNodeConfiguration;
 					bool dedicateMaster;
@@ -128,17 +134,31 @@ namespace AlibabaCloud
 					std::string createdAt;
 					int port;
 					std::vector<std::string> kibanaPrivateIPWhitelist;
-					bool enablePublic;
 					KibanaConfiguration kibanaConfiguration;
-					bool advancedDedicateMaster;
-					std::string paymentType;
-					std::string protocol;
+					bool serviceVpc;
+					std::string postpaidServiceStatus;
 					bool haveKibana;
 					std::string status;
 					std::vector<std::string> extendConfigs;
+					std::string instanceId;
+					bool isNewDeployment;
+					bool enableKibanaPrivateNetwork;
+					std::vector<DictListItem> dictList;
+					std::string kibanaDomain;
+					std::vector<Tag> tags;
+					NodeSpec nodeSpec;
+					bool warmNode;
+					WarmNodeConfiguration warmNodeConfiguration;
+					std::string domain;
+					bool haveClientNode;
+					ClientNodeConfiguration clientNodeConfiguration;
+					std::string description;
+					bool enablePublic;
+					bool advancedDedicateMaster;
+					std::string paymentType;
+					std::string protocol;
 					std::vector<std::string> publicIpWhitelist;
 					std::vector<Dict> aliwsDicts;
-					std::string instanceId;
 					int kibanaPort;
 					bool enableKibanaPublicNetwork;
 					NetworkConfig networkConfig;
@@ -146,24 +166,14 @@ namespace AlibabaCloud
 					int nodeAmount;
 					std::string esVersion;
 					std::string updatedAt;
-					bool enableKibanaPrivateNetwork;
-					std::vector<DictListItem> dictList;
-					std::string kibanaDomain;
-					std::vector<Tag> tags;
 					std::string publicDomain;
 					std::string esConfig;
 					std::vector<std::string> esIPWhitelist;
 					std::vector<std::string> kibanaIPWhitelist;
-					NodeSpec nodeSpec;
-					bool warmNode;
 					std::vector<std::string> privateNetworkIpWhiteList;
 					std::string vpcInstanceId;
-					WarmNodeConfiguration warmNodeConfiguration;
 					std::vector<SynonymsDictsItem> synonymsDicts;
-					std::string domain;
-					bool haveClientNode;
 					int publicPort;
-					ClientNodeConfiguration clientNodeConfiguration;
 					int zoneCount;
 				};
 

+ 54 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/ListDictsRequest.h

@@ -0,0 +1,54 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_ELASTICSEARCH_MODEL_LISTDICTSREQUEST_H_
+#define ALIBABACLOUD_ELASTICSEARCH_MODEL_LISTDICTSREQUEST_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 ListDictsRequest : public RoaServiceRequest
+			{
+
+			public:
+				ListDictsRequest();
+				~ListDictsRequest();
+
+				std::string getInstanceId()const;
+				void setInstanceId(const std::string& instanceId);
+				std::string getAnalyzerType()const;
+				void setAnalyzerType(const std::string& analyzerType);
+				std::string getName()const;
+				void setName(const std::string& name);
+
+            private:
+				std::string instanceId_;
+				std::string analyzerType_;
+				std::string name_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_ELASTICSEARCH_MODEL_LISTDICTSREQUEST_H_

+ 65 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/ListDictsResult.h

@@ -0,0 +1,65 @@
+/*
+ * 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_LISTDICTSRESULT_H_
+#define ALIBABACLOUD_ELASTICSEARCH_MODEL_LISTDICTSRESULT_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 ListDictsResult : public ServiceResult
+			{
+			public:
+				struct Headers
+				{
+					int xTotalCount;
+				};
+				struct ResultItem
+				{
+					std::string type;
+					std::string sourceType;
+					std::string name;
+					long fileSize;
+					std::string downloadUrl;
+				};
+
+
+				ListDictsResult();
+				explicit ListDictsResult(const std::string &payload);
+				~ListDictsResult();
+				Headers getHeaders()const;
+				std::vector<ResultItem> getResult()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				Headers headers_;
+				std::vector<ResultItem> result_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_ELASTICSEARCH_MODEL_LISTDICTSRESULT_H_

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

@@ -35,20 +35,20 @@ namespace AlibabaCloud
 				ListInstanceIndicesRequest();
 				~ListInstanceIndicesRequest();
 
+				bool getAll()const;
+				void setAll(bool all);
 				std::string getInstanceId()const;
 				void setInstanceId(const std::string& instanceId);
 				bool getIsManaged()const;
 				void setIsManaged(bool isManaged);
 				std::string getName()const;
 				void setName(const std::string& name);
-				std::string getLang()const;
-				void setLang(const std::string& lang);
 
             private:
+				bool all_;
 				std::string instanceId_;
 				bool isManaged_;
 				std::string name_;
-				std::string lang_;
 
 			};
 		}

+ 2 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/ListInstanceResult.h

@@ -96,6 +96,7 @@ namespace AlibabaCloud
 					bool dedicateMaster;
 					std::string createdAt;
 					NetworkConfig networkConfig;
+					std::string isNewDeployment;
 					std::string esVersion;
 					int nodeAmount;
 					std::string updatedAt;
@@ -103,6 +104,7 @@ namespace AlibabaCloud
 					KibanaConfiguration kibanaConfiguration;
 					bool advancedDedicateMaster;
 					NodeSpec nodeSpec;
+					bool serviceVpc;
 					std::string paymentType;
 					std::string postpaidServiceStatus;
 					ClientNodeConfiguration clientNodeConfiguration;

+ 51 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/ListShardRecoveriesRequest.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_LISTSHARDRECOVERIESREQUEST_H_
+#define ALIBABACLOUD_ELASTICSEARCH_MODEL_LISTSHARDRECOVERIESREQUEST_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 ListShardRecoveriesRequest : public RoaServiceRequest
+			{
+
+			public:
+				ListShardRecoveriesRequest();
+				~ListShardRecoveriesRequest();
+
+				bool getActiveOnly()const;
+				void setActiveOnly(bool activeOnly);
+				std::string getInstanceId()const;
+				void setInstanceId(const std::string& instanceId);
+
+            private:
+				bool activeOnly_;
+				std::string instanceId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_ELASTICSEARCH_MODEL_LISTSHARDRECOVERIESREQUEST_H_

+ 66 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/ListShardRecoveriesResult.h

@@ -0,0 +1,66 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_ELASTICSEARCH_MODEL_LISTSHARDRECOVERIESRESULT_H_
+#define ALIBABACLOUD_ELASTICSEARCH_MODEL_LISTSHARDRECOVERIESRESULT_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 ListShardRecoveriesResult : public ServiceResult
+			{
+			public:
+				struct ResultItem
+				{
+					std::string sourceNode;
+					std::string targetNode;
+					long translogOps;
+					std::string targetHost;
+					long filesTotal;
+					std::string stage;
+					std::string index;
+					std::string filesPercent;
+					std::string translogOpsPercent;
+					std::string sourceHost;
+					std::string bytesPercent;
+					long bytesTotal;
+				};
+
+
+				ListShardRecoveriesResult();
+				explicit ListShardRecoveriesResult(const std::string &payload);
+				~ListShardRecoveriesResult();
+				std::vector<ResultItem> getResult()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<ResultItem> result_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_ELASTICSEARCH_MODEL_LISTSHARDRECOVERIESRESULT_H_

+ 54 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/ListVpcEndpointsRequest.h

@@ -0,0 +1,54 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_ELASTICSEARCH_MODEL_LISTVPCENDPOINTSREQUEST_H_
+#define ALIBABACLOUD_ELASTICSEARCH_MODEL_LISTVPCENDPOINTSREQUEST_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 ListVpcEndpointsRequest : public RoaServiceRequest
+			{
+
+			public:
+				ListVpcEndpointsRequest();
+				~ListVpcEndpointsRequest();
+
+				std::string getInstanceId()const;
+				void setInstanceId(const std::string& instanceId);
+				int getSize()const;
+				void setSize(int size);
+				int getPage()const;
+				void setPage(int page);
+
+            private:
+				std::string instanceId_;
+				int size_;
+				int page_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_ELASTICSEARCH_MODEL_LISTVPCENDPOINTSREQUEST_H_

+ 63 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/ListVpcEndpointsResult.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_LISTVPCENDPOINTSRESULT_H_
+#define ALIBABACLOUD_ELASTICSEARCH_MODEL_LISTVPCENDPOINTSRESULT_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 ListVpcEndpointsResult : public ServiceResult
+			{
+			public:
+				struct ResultItem
+				{
+					std::string endpointStatus;
+					std::string endpointName;
+					std::string endpointDomain;
+					std::string serviceName;
+					std::string createTime;
+					std::string endpointId;
+					std::string endpointBusinessStatus;
+					std::string connectionStatus;
+					std::string serviceId;
+				};
+
+
+				ListVpcEndpointsResult();
+				explicit ListVpcEndpointsResult(const std::string &payload);
+				~ListVpcEndpointsResult();
+				std::vector<ResultItem> getResult()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<ResultItem> result_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_ELASTICSEARCH_MODEL_LISTVPCENDPOINTSRESULT_H_

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

@@ -35,6 +35,8 @@ namespace AlibabaCloud
 				ModifyWhiteIpsRequest();
 				~ModifyWhiteIpsRequest();
 
+				std::string getModifyMode()const;
+				void setModifyMode(const std::string& modifyMode);
 				std::string getInstanceId()const;
 				void setInstanceId(const std::string& instanceId);
 				std::string getNodeType()const;
@@ -45,6 +47,7 @@ namespace AlibabaCloud
 				void setNetworkType(const std::string& networkType);
 
             private:
+				std::string modifyMode_;
 				std::string instanceId_;
 				std::string nodeType_;
 				std::string clientToken_;

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

@@ -35,12 +35,15 @@ namespace AlibabaCloud
 				UpdateKibanaWhiteIpsRequest();
 				~UpdateKibanaWhiteIpsRequest();
 
+				std::string getModifyMode()const;
+				void setModifyMode(const std::string& modifyMode);
 				std::string getInstanceId()const;
 				void setInstanceId(const std::string& instanceId);
 				std::string getClientToken()const;
 				void setClientToken(const std::string& clientToken);
 
             private:
+				std::string modifyMode_;
 				std::string instanceId_;
 				std::string clientToken_;
 

+ 1 - 0
elasticsearch/include/alibabacloud/elasticsearch/model/UpdateKibanaWhiteIpsResult.h

@@ -35,6 +35,7 @@ namespace AlibabaCloud
 				struct Result
 				{
 					std::vector<std::string> kibanaIPWhitelist;
+					std::vector<std::string> kibanaPrivateIPWhitelist;
 				};
 
 

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

@@ -35,12 +35,15 @@ namespace AlibabaCloud
 				UpdatePrivateNetworkWhiteIpsRequest();
 				~UpdatePrivateNetworkWhiteIpsRequest();
 
+				std::string getModifyMode()const;
+				void setModifyMode(const std::string& modifyMode);
 				std::string getInstanceId()const;
 				void setInstanceId(const std::string& instanceId);
 				std::string getClientToken()const;
 				void setClientToken(const std::string& clientToken);
 
             private:
+				std::string modifyMode_;
 				std::string instanceId_;
 				std::string clientToken_;
 

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

@@ -35,12 +35,15 @@ namespace AlibabaCloud
 				UpdatePublicWhiteIpsRequest();
 				~UpdatePublicWhiteIpsRequest();
 
+				std::string getModifyMode()const;
+				void setModifyMode(const std::string& modifyMode);
 				std::string getInstanceId()const;
 				void setInstanceId(const std::string& instanceId);
 				std::string getClientToken()const;
 				void setClientToken(const std::string& clientToken);
 
             private:
+				std::string modifyMode_;
 				std::string instanceId_;
 				std::string clientToken_;
 

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

@@ -35,12 +35,15 @@ namespace AlibabaCloud
 				UpdateWhiteIpsRequest();
 				~UpdateWhiteIpsRequest();
 
+				std::string getModifyMode()const;
+				void setModifyMode(const std::string& modifyMode);
 				std::string getInstanceId()const;
 				void setInstanceId(const std::string& instanceId);
 				std::string getClientToken()const;
 				void setClientToken(const std::string& clientToken);
 
             private:
+				std::string modifyMode_;
 				std::string instanceId_;
 				std::string clientToken_;
 

+ 180 - 0
elasticsearch/src/ElasticsearchClient.cc

@@ -699,6 +699,42 @@ ElasticsearchClient::CreateSnapshotOutcomeCallable ElasticsearchClient::createSn
 	return task->get_future();
 }
 
+ElasticsearchClient::CreateVpcEndpointOutcome ElasticsearchClient::createVpcEndpoint(const CreateVpcEndpointRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return CreateVpcEndpointOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return CreateVpcEndpointOutcome(CreateVpcEndpointResult(outcome.result()));
+	else
+		return CreateVpcEndpointOutcome(outcome.error());
+}
+
+void ElasticsearchClient::createVpcEndpointAsync(const CreateVpcEndpointRequest& request, const CreateVpcEndpointAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, createVpcEndpoint(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+ElasticsearchClient::CreateVpcEndpointOutcomeCallable ElasticsearchClient::createVpcEndpointCallable(const CreateVpcEndpointRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<CreateVpcEndpointOutcome()>>(
+			[this, request]()
+			{
+			return this->createVpcEndpoint(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 ElasticsearchClient::DeactivateZonesOutcome ElasticsearchClient::deactivateZones(const DeactivateZonesRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -1095,6 +1131,42 @@ ElasticsearchClient::DeleteSnapshotRepoOutcomeCallable ElasticsearchClient::dele
 	return task->get_future();
 }
 
+ElasticsearchClient::DeleteVpcEndpointOutcome ElasticsearchClient::deleteVpcEndpoint(const DeleteVpcEndpointRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DeleteVpcEndpointOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DeleteVpcEndpointOutcome(DeleteVpcEndpointResult(outcome.result()));
+	else
+		return DeleteVpcEndpointOutcome(outcome.error());
+}
+
+void ElasticsearchClient::deleteVpcEndpointAsync(const DeleteVpcEndpointRequest& request, const DeleteVpcEndpointAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, deleteVpcEndpoint(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+ElasticsearchClient::DeleteVpcEndpointOutcomeCallable ElasticsearchClient::deleteVpcEndpointCallable(const DeleteVpcEndpointRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DeleteVpcEndpointOutcome()>>(
+			[this, request]()
+			{
+			return this->deleteVpcEndpoint(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 ElasticsearchClient::DescribeAckOperatorOutcome ElasticsearchClient::describeAckOperator(const DescribeAckOperatorRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -2895,6 +2967,42 @@ ElasticsearchClient::ListDictInformationOutcomeCallable ElasticsearchClient::lis
 	return task->get_future();
 }
 
+ElasticsearchClient::ListDictsOutcome ElasticsearchClient::listDicts(const ListDictsRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ListDictsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ListDictsOutcome(ListDictsResult(outcome.result()));
+	else
+		return ListDictsOutcome(outcome.error());
+}
+
+void ElasticsearchClient::listDictsAsync(const ListDictsRequest& request, const ListDictsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, listDicts(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+ElasticsearchClient::ListDictsOutcomeCallable ElasticsearchClient::listDictsCallable(const ListDictsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ListDictsOutcome()>>(
+			[this, request]()
+			{
+			return this->listDicts(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 ElasticsearchClient::ListEcsInstancesOutcome ElasticsearchClient::listEcsInstances(const ListEcsInstancesRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -3435,6 +3543,42 @@ ElasticsearchClient::ListSearchLogOutcomeCallable ElasticsearchClient::listSearc
 	return task->get_future();
 }
 
+ElasticsearchClient::ListShardRecoveriesOutcome ElasticsearchClient::listShardRecoveries(const ListShardRecoveriesRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ListShardRecoveriesOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ListShardRecoveriesOutcome(ListShardRecoveriesResult(outcome.result()));
+	else
+		return ListShardRecoveriesOutcome(outcome.error());
+}
+
+void ElasticsearchClient::listShardRecoveriesAsync(const ListShardRecoveriesRequest& request, const ListShardRecoveriesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, listShardRecoveries(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+ElasticsearchClient::ListShardRecoveriesOutcomeCallable ElasticsearchClient::listShardRecoveriesCallable(const ListShardRecoveriesRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ListShardRecoveriesOutcome()>>(
+			[this, request]()
+			{
+			return this->listShardRecoveries(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 ElasticsearchClient::ListSnapshotReposByInstanceIdOutcome ElasticsearchClient::listSnapshotReposByInstanceId(const ListSnapshotReposByInstanceIdRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -3543,6 +3687,42 @@ ElasticsearchClient::ListTagsOutcomeCallable ElasticsearchClient::listTagsCallab
 	return task->get_future();
 }
 
+ElasticsearchClient::ListVpcEndpointsOutcome ElasticsearchClient::listVpcEndpoints(const ListVpcEndpointsRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ListVpcEndpointsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ListVpcEndpointsOutcome(ListVpcEndpointsResult(outcome.result()));
+	else
+		return ListVpcEndpointsOutcome(outcome.error());
+}
+
+void ElasticsearchClient::listVpcEndpointsAsync(const ListVpcEndpointsRequest& request, const ListVpcEndpointsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, listVpcEndpoints(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+ElasticsearchClient::ListVpcEndpointsOutcomeCallable ElasticsearchClient::listVpcEndpointsCallable(const ListVpcEndpointsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ListVpcEndpointsOutcome()>>(
+			[this, request]()
+			{
+			return this->listVpcEndpoints(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 ElasticsearchClient::MigrateToOtherZoneOutcome ElasticsearchClient::migrateToOtherZone(const MigrateToOtherZoneRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();

+ 63 - 0
elasticsearch/src/model/CreateVpcEndpointRequest.cc

@@ -0,0 +1,63 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/elasticsearch/model/CreateVpcEndpointRequest.h>
+
+using AlibabaCloud::Elasticsearch::Model::CreateVpcEndpointRequest;
+
+CreateVpcEndpointRequest::CreateVpcEndpointRequest() :
+	RoaServiceRequest("elasticsearch", "2017-06-13")
+{
+	setResourcePath("/openapi/instances/[InstanceId]/vpc-endpoints");
+	setMethod(HttpRequest::Method::Post);
+}
+
+CreateVpcEndpointRequest::~CreateVpcEndpointRequest()
+{}
+
+std::string CreateVpcEndpointRequest::getInstanceId()const
+{
+	return instanceId_;
+}
+
+void CreateVpcEndpointRequest::setInstanceId(const std::string& instanceId)
+{
+	instanceId_ = instanceId;
+	setParameter("InstanceId", instanceId);
+}
+
+bool CreateVpcEndpointRequest::getDryRun()const
+{
+	return dryRun_;
+}
+
+void CreateVpcEndpointRequest::setDryRun(bool dryRun)
+{
+	dryRun_ = dryRun;
+	setParameter("DryRun", dryRun ? "true" : "false");
+}
+
+std::string CreateVpcEndpointRequest::getClientToken()const
+{
+	return clientToken_;
+}
+
+void CreateVpcEndpointRequest::setClientToken(const std::string& clientToken)
+{
+	clientToken_ = clientToken;
+	setParameter("ClientToken", clientToken);
+}
+

+ 58 - 0
elasticsearch/src/model/CreateVpcEndpointResult.cc

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

+ 63 - 0
elasticsearch/src/model/DeleteVpcEndpointRequest.cc

@@ -0,0 +1,63 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/elasticsearch/model/DeleteVpcEndpointRequest.h>
+
+using AlibabaCloud::Elasticsearch::Model::DeleteVpcEndpointRequest;
+
+DeleteVpcEndpointRequest::DeleteVpcEndpointRequest() :
+	RoaServiceRequest("elasticsearch", "2017-06-13")
+{
+	setResourcePath("/openapi/instances/[InstanceId]/vpc-endpoints/[EndpointId]");
+	setMethod(HttpRequest::Method::Delete);
+}
+
+DeleteVpcEndpointRequest::~DeleteVpcEndpointRequest()
+{}
+
+std::string DeleteVpcEndpointRequest::getInstanceId()const
+{
+	return instanceId_;
+}
+
+void DeleteVpcEndpointRequest::setInstanceId(const std::string& instanceId)
+{
+	instanceId_ = instanceId;
+	setParameter("InstanceId", instanceId);
+}
+
+std::string DeleteVpcEndpointRequest::getClientToken()const
+{
+	return clientToken_;
+}
+
+void DeleteVpcEndpointRequest::setClientToken(const std::string& clientToken)
+{
+	clientToken_ = clientToken;
+	setParameter("ClientToken", clientToken);
+}
+
+std::string DeleteVpcEndpointRequest::getEndpointId()const
+{
+	return endpointId_;
+}
+
+void DeleteVpcEndpointRequest::setEndpointId(const std::string& endpointId)
+{
+	endpointId_ = endpointId;
+	setParameter("EndpointId", endpointId);
+}
+

+ 51 - 0
elasticsearch/src/model/DeleteVpcEndpointResult.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/DeleteVpcEndpointResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Elasticsearch;
+using namespace AlibabaCloud::Elasticsearch::Model;
+
+DeleteVpcEndpointResult::DeleteVpcEndpointResult() :
+	ServiceResult()
+{}
+
+DeleteVpcEndpointResult::DeleteVpcEndpointResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DeleteVpcEndpointResult::~DeleteVpcEndpointResult()
+{}
+
+void DeleteVpcEndpointResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	if(!value["Result"].isNull())
+		result_ = value["Result"].asString() == "true";
+
+}
+
+bool DeleteVpcEndpointResult::getResult()const
+{
+	return result_;
+}
+

+ 19 - 0
elasticsearch/src/model/DescribeInstanceResult.cc

@@ -94,6 +94,12 @@ void DescribeInstanceResult::parse(const std::string &payload)
 		result_.resourceGroupId = resultNode["resourceGroupId"].asString();
 	if(!resultNode["enableKibanaPrivateNetwork"].isNull())
 		result_.enableKibanaPrivateNetwork = resultNode["enableKibanaPrivateNetwork"].asString() == "true";
+	if(!resultNode["isNewDeployment"].isNull())
+		result_.isNewDeployment = resultNode["isNewDeployment"].asString() == "true";
+	if(!resultNode["postpaidServiceStatus"].isNull())
+		result_.postpaidServiceStatus = resultNode["postpaidServiceStatus"].asString();
+	if(!resultNode["serviceVpc"].isNull())
+		result_.serviceVpc = resultNode["serviceVpc"].asString() == "true";
 	auto alldictListNode = resultNode["dictList"]["DictListItem"];
 	for (auto resultNodedictListDictListItem : alldictListNode)
 	{
@@ -174,6 +180,19 @@ void DescribeInstanceResult::parse(const std::string &payload)
 		result_.networkConfig.vswitchId = networkConfigNode["vswitchId"].asString();
 	if(!networkConfigNode["vsArea"].isNull())
 		result_.networkConfig.vsArea = networkConfigNode["vsArea"].asString();
+	auto allwhiteIpGroupListNode = networkConfigNode["whiteIpGroupList"]["whiteIpGroupListItem"];
+	for (auto networkConfigNodewhiteIpGroupListwhiteIpGroupListItem : allwhiteIpGroupListNode)
+	{
+		Result::NetworkConfig::WhiteIpGroupListItem whiteIpGroupListItemObject;
+		if(!networkConfigNodewhiteIpGroupListwhiteIpGroupListItem["groupName"].isNull())
+			whiteIpGroupListItemObject.groupName = networkConfigNodewhiteIpGroupListwhiteIpGroupListItem["groupName"].asString();
+		if(!networkConfigNodewhiteIpGroupListwhiteIpGroupListItem["whiteIpType"].isNull())
+			whiteIpGroupListItemObject.whiteIpType = networkConfigNodewhiteIpGroupListwhiteIpGroupListItem["whiteIpType"].asString();
+		auto allIps = value["ips"]["ips"];
+		for (auto value : allIps)
+			whiteIpGroupListItemObject.ips.push_back(value.asString());
+		result_.networkConfig.whiteIpGroupList.push_back(whiteIpGroupListItemObject);
+	}
 	auto kibanaConfigurationNode = resultNode["kibanaConfiguration"];
 	if(!kibanaConfigurationNode["spec"].isNull())
 		result_.kibanaConfiguration.spec = kibanaConfigurationNode["spec"].asString();

+ 63 - 0
elasticsearch/src/model/ListDictsRequest.cc

@@ -0,0 +1,63 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/elasticsearch/model/ListDictsRequest.h>
+
+using AlibabaCloud::Elasticsearch::Model::ListDictsRequest;
+
+ListDictsRequest::ListDictsRequest() :
+	RoaServiceRequest("elasticsearch", "2017-06-13")
+{
+	setResourcePath("/openapi/instances/[InstanceId]/dicts");
+	setMethod(HttpRequest::Method::Get);
+}
+
+ListDictsRequest::~ListDictsRequest()
+{}
+
+std::string ListDictsRequest::getInstanceId()const
+{
+	return instanceId_;
+}
+
+void ListDictsRequest::setInstanceId(const std::string& instanceId)
+{
+	instanceId_ = instanceId;
+	setParameter("InstanceId", instanceId);
+}
+
+std::string ListDictsRequest::getAnalyzerType()const
+{
+	return analyzerType_;
+}
+
+void ListDictsRequest::setAnalyzerType(const std::string& analyzerType)
+{
+	analyzerType_ = analyzerType;
+	setParameter("AnalyzerType", analyzerType);
+}
+
+std::string ListDictsRequest::getName()const
+{
+	return name_;
+}
+
+void ListDictsRequest::setName(const std::string& name)
+{
+	name_ = name;
+	setParameter("Name", name);
+}
+

+ 73 - 0
elasticsearch/src/model/ListDictsResult.cc

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

+ 11 - 11
elasticsearch/src/model/ListInstanceIndicesRequest.cc

@@ -28,6 +28,17 @@ ListInstanceIndicesRequest::ListInstanceIndicesRequest() :
 ListInstanceIndicesRequest::~ListInstanceIndicesRequest()
 {}
 
+bool ListInstanceIndicesRequest::getAll()const
+{
+	return all_;
+}
+
+void ListInstanceIndicesRequest::setAll(bool all)
+{
+	all_ = all;
+	setParameter("All", all ? "true" : "false");
+}
+
 std::string ListInstanceIndicesRequest::getInstanceId()const
 {
 	return instanceId_;
@@ -61,14 +72,3 @@ void ListInstanceIndicesRequest::setName(const std::string& name)
 	setParameter("Name", name);
 }
 
-std::string ListInstanceIndicesRequest::getLang()const
-{
-	return lang_;
-}
-
-void ListInstanceIndicesRequest::setLang(const std::string& lang)
-{
-	lang_ = lang;
-	setParameter("Lang", lang);
-}
-

+ 4 - 0
elasticsearch/src/model/ListInstanceResult.cc

@@ -67,6 +67,10 @@ void ListInstanceResult::parse(const std::string &payload)
 			resultObject.updatedAt = valueResultInstance["updatedAt"].asString();
 		if(!valueResultInstance["postpaidServiceStatus"].isNull())
 			resultObject.postpaidServiceStatus = valueResultInstance["postpaidServiceStatus"].asString();
+		if(!valueResultInstance["isNewDeployment"].isNull())
+			resultObject.isNewDeployment = valueResultInstance["isNewDeployment"].asString();
+		if(!valueResultInstance["serviceVpc"].isNull())
+			resultObject.serviceVpc = valueResultInstance["serviceVpc"].asString() == "true";
 		auto alltagsNode = valueResultInstance["tags"]["Tag"];
 		for (auto valueResultInstancetagsTag : alltagsNode)
 		{

+ 52 - 0
elasticsearch/src/model/ListShardRecoveriesRequest.cc

@@ -0,0 +1,52 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/elasticsearch/model/ListShardRecoveriesRequest.h>
+
+using AlibabaCloud::Elasticsearch::Model::ListShardRecoveriesRequest;
+
+ListShardRecoveriesRequest::ListShardRecoveriesRequest() :
+	RoaServiceRequest("elasticsearch", "2017-06-13")
+{
+	setResourcePath("/openapi/instances/[InstanceId]/cat-recovery");
+	setMethod(HttpRequest::Method::Get);
+}
+
+ListShardRecoveriesRequest::~ListShardRecoveriesRequest()
+{}
+
+bool ListShardRecoveriesRequest::getActiveOnly()const
+{
+	return activeOnly_;
+}
+
+void ListShardRecoveriesRequest::setActiveOnly(bool activeOnly)
+{
+	activeOnly_ = activeOnly;
+	setParameter("ActiveOnly", activeOnly ? "true" : "false");
+}
+
+std::string ListShardRecoveriesRequest::getInstanceId()const
+{
+	return instanceId_;
+}
+
+void ListShardRecoveriesRequest::setInstanceId(const std::string& instanceId)
+{
+	instanceId_ = instanceId;
+	setParameter("InstanceId", instanceId);
+}
+

+ 79 - 0
elasticsearch/src/model/ListShardRecoveriesResult.cc

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

+ 63 - 0
elasticsearch/src/model/ListVpcEndpointsRequest.cc

@@ -0,0 +1,63 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#include <alibabacloud/elasticsearch/model/ListVpcEndpointsRequest.h>
+
+using AlibabaCloud::Elasticsearch::Model::ListVpcEndpointsRequest;
+
+ListVpcEndpointsRequest::ListVpcEndpointsRequest() :
+	RoaServiceRequest("elasticsearch", "2017-06-13")
+{
+	setResourcePath("/openapi/instances/[InstanceId]/vpc-endpoints");
+	setMethod(HttpRequest::Method::Get);
+}
+
+ListVpcEndpointsRequest::~ListVpcEndpointsRequest()
+{}
+
+std::string ListVpcEndpointsRequest::getInstanceId()const
+{
+	return instanceId_;
+}
+
+void ListVpcEndpointsRequest::setInstanceId(const std::string& instanceId)
+{
+	instanceId_ = instanceId;
+	setParameter("InstanceId", instanceId);
+}
+
+int ListVpcEndpointsRequest::getSize()const
+{
+	return size_;
+}
+
+void ListVpcEndpointsRequest::setSize(int size)
+{
+	size_ = size;
+	setParameter("Size", std::to_string(size));
+}
+
+int ListVpcEndpointsRequest::getPage()const
+{
+	return page_;
+}
+
+void ListVpcEndpointsRequest::setPage(int page)
+{
+	page_ = page;
+	setParameter("Page", std::to_string(page));
+}
+

+ 73 - 0
elasticsearch/src/model/ListVpcEndpointsResult.cc

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

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

@@ -28,6 +28,17 @@ ModifyWhiteIpsRequest::ModifyWhiteIpsRequest() :
 ModifyWhiteIpsRequest::~ModifyWhiteIpsRequest()
 {}
 
+std::string ModifyWhiteIpsRequest::getModifyMode()const
+{
+	return modifyMode_;
+}
+
+void ModifyWhiteIpsRequest::setModifyMode(const std::string& modifyMode)
+{
+	modifyMode_ = modifyMode;
+	setBodyParameter("ModifyMode", modifyMode);
+}
+
 std::string ModifyWhiteIpsRequest::getInstanceId()const
 {
 	return instanceId_;

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

@@ -28,6 +28,17 @@ UpdateKibanaWhiteIpsRequest::UpdateKibanaWhiteIpsRequest() :
 UpdateKibanaWhiteIpsRequest::~UpdateKibanaWhiteIpsRequest()
 {}
 
+std::string UpdateKibanaWhiteIpsRequest::getModifyMode()const
+{
+	return modifyMode_;
+}
+
+void UpdateKibanaWhiteIpsRequest::setModifyMode(const std::string& modifyMode)
+{
+	modifyMode_ = modifyMode;
+	setParameter("ModifyMode", modifyMode);
+}
+
 std::string UpdateKibanaWhiteIpsRequest::getInstanceId()const
 {
 	return instanceId_;

+ 3 - 0
elasticsearch/src/model/UpdateKibanaWhiteIpsResult.cc

@@ -43,6 +43,9 @@ void UpdateKibanaWhiteIpsResult::parse(const std::string &payload)
 		auto allKibanaIPWhitelist = resultNode["kibanaIPWhitelist"]["kibanaIPWhitelist"];
 		for (auto value : allKibanaIPWhitelist)
 			result_.kibanaIPWhitelist.push_back(value.asString());
+		auto allKibanaPrivateIPWhitelist = resultNode["kibanaPrivateIPWhitelist"]["kibanaPrivateIPWhitelist"];
+		for (auto value : allKibanaPrivateIPWhitelist)
+			result_.kibanaPrivateIPWhitelist.push_back(value.asString());
 
 }
 

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

@@ -28,6 +28,17 @@ UpdatePrivateNetworkWhiteIpsRequest::UpdatePrivateNetworkWhiteIpsRequest() :
 UpdatePrivateNetworkWhiteIpsRequest::~UpdatePrivateNetworkWhiteIpsRequest()
 {}
 
+std::string UpdatePrivateNetworkWhiteIpsRequest::getModifyMode()const
+{
+	return modifyMode_;
+}
+
+void UpdatePrivateNetworkWhiteIpsRequest::setModifyMode(const std::string& modifyMode)
+{
+	modifyMode_ = modifyMode;
+	setParameter("ModifyMode", modifyMode);
+}
+
 std::string UpdatePrivateNetworkWhiteIpsRequest::getInstanceId()const
 {
 	return instanceId_;

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

@@ -28,6 +28,17 @@ UpdatePublicWhiteIpsRequest::UpdatePublicWhiteIpsRequest() :
 UpdatePublicWhiteIpsRequest::~UpdatePublicWhiteIpsRequest()
 {}
 
+std::string UpdatePublicWhiteIpsRequest::getModifyMode()const
+{
+	return modifyMode_;
+}
+
+void UpdatePublicWhiteIpsRequest::setModifyMode(const std::string& modifyMode)
+{
+	modifyMode_ = modifyMode;
+	setParameter("ModifyMode", modifyMode);
+}
+
 std::string UpdatePublicWhiteIpsRequest::getInstanceId()const
 {
 	return instanceId_;

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

@@ -28,6 +28,17 @@ UpdateWhiteIpsRequest::UpdateWhiteIpsRequest() :
 UpdateWhiteIpsRequest::~UpdateWhiteIpsRequest()
 {}
 
+std::string UpdateWhiteIpsRequest::getModifyMode()const
+{
+	return modifyMode_;
+}
+
+void UpdateWhiteIpsRequest::setModifyMode(const std::string& modifyMode)
+{
+	modifyMode_ = modifyMode;
+	setParameter("ModifyMode", modifyMode);
+}
+
 std::string UpdateWhiteIpsRequest::getInstanceId()const
 {
 	return instanceId_;