Browse Source

Supported AAA for BBB.

sdk-team 5 years ago
parent
commit
e89b92569f
46 changed files with 3403 additions and 1 deletions
  1. 3 0
      CHANGELOG
  2. 1 1
      VERSION
  3. 122 0
      eipanycast/CMakeLists.txt
  4. 126 0
      eipanycast/include/alibabacloud/eipanycast/EipanycastClient.h
  5. 32 0
      eipanycast/include/alibabacloud/eipanycast/EipanycastExport.h
  6. 69 0
      eipanycast/include/alibabacloud/eipanycast/model/AllocateAnycastEipAddressRequest.h
  7. 53 0
      eipanycast/include/alibabacloud/eipanycast/model/AllocateAnycastEipAddressResult.h
  8. 66 0
      eipanycast/include/alibabacloud/eipanycast/model/AssociateAnycastEipAddressRequest.h
  9. 49 0
      eipanycast/include/alibabacloud/eipanycast/model/AssociateAnycastEipAddressResult.h
  10. 54 0
      eipanycast/include/alibabacloud/eipanycast/model/DescribeAnycastEipAddressRequest.h
  11. 84 0
      eipanycast/include/alibabacloud/eipanycast/model/DescribeAnycastEipAddressResult.h
  12. 51 0
      eipanycast/include/alibabacloud/eipanycast/model/DescribeAnycastPopLocationsRequest.h
  13. 58 0
      eipanycast/include/alibabacloud/eipanycast/model/DescribeAnycastPopLocationsResult.h
  14. 51 0
      eipanycast/include/alibabacloud/eipanycast/model/DescribeAnycastServerRegionsRequest.h
  15. 58 0
      eipanycast/include/alibabacloud/eipanycast/model/DescribeAnycastServerRegionsResult.h
  16. 81 0
      eipanycast/include/alibabacloud/eipanycast/model/ListAnycastEipAddressesRequest.h
  17. 79 0
      eipanycast/include/alibabacloud/eipanycast/model/ListAnycastEipAddressesResult.h
  18. 57 0
      eipanycast/include/alibabacloud/eipanycast/model/ModifyAnycastEipAddressAttributeRequest.h
  19. 49 0
      eipanycast/include/alibabacloud/eipanycast/model/ModifyAnycastEipAddressAttributeResult.h
  20. 54 0
      eipanycast/include/alibabacloud/eipanycast/model/ModifyAnycastEipAddressSpecRequest.h
  21. 49 0
      eipanycast/include/alibabacloud/eipanycast/model/ModifyAnycastEipAddressSpecResult.h
  22. 54 0
      eipanycast/include/alibabacloud/eipanycast/model/ReleaseAnycastEipAddressRequest.h
  23. 49 0
      eipanycast/include/alibabacloud/eipanycast/model/ReleaseAnycastEipAddressResult.h
  24. 66 0
      eipanycast/include/alibabacloud/eipanycast/model/UnassociateAnycastEipAddressRequest.h
  25. 49 0
      eipanycast/include/alibabacloud/eipanycast/model/UnassociateAnycastEipAddressResult.h
  26. 413 0
      eipanycast/src/EipanycastClient.cc
  27. 117 0
      eipanycast/src/model/AllocateAnycastEipAddressRequest.cc
  28. 58 0
      eipanycast/src/model/AllocateAnycastEipAddressResult.cc
  29. 106 0
      eipanycast/src/model/AssociateAnycastEipAddressRequest.cc
  30. 44 0
      eipanycast/src/model/AssociateAnycastEipAddressResult.cc
  31. 62 0
      eipanycast/src/model/DescribeAnycastEipAddressRequest.cc
  32. 154 0
      eipanycast/src/model/DescribeAnycastEipAddressResult.cc
  33. 51 0
      eipanycast/src/model/DescribeAnycastPopLocationsRequest.cc
  34. 66 0
      eipanycast/src/model/DescribeAnycastPopLocationsResult.cc
  35. 51 0
      eipanycast/src/model/DescribeAnycastServerRegionsRequest.cc
  36. 66 0
      eipanycast/src/model/DescribeAnycastServerRegionsResult.cc
  37. 163 0
      eipanycast/src/model/ListAnycastEipAddressesRequest.cc
  38. 109 0
      eipanycast/src/model/ListAnycastEipAddressesResult.cc
  39. 73 0
      eipanycast/src/model/ModifyAnycastEipAddressAttributeRequest.cc
  40. 44 0
      eipanycast/src/model/ModifyAnycastEipAddressAttributeResult.cc
  41. 62 0
      eipanycast/src/model/ModifyAnycastEipAddressSpecRequest.cc
  42. 44 0
      eipanycast/src/model/ModifyAnycastEipAddressSpecResult.cc
  43. 62 0
      eipanycast/src/model/ReleaseAnycastEipAddressRequest.cc
  44. 44 0
      eipanycast/src/model/ReleaseAnycastEipAddressResult.cc
  45. 106 0
      eipanycast/src/model/UnassociateAnycastEipAddressRequest.cc
  46. 44 0
      eipanycast/src/model/UnassociateAnycastEipAddressResult.cc

+ 3 - 0
CHANGELOG

@@ -1,3 +1,6 @@
+2021-07-07 Version: 1.36.808
+- Supported AAA for BBB.
+
 2021-07-05 Version: 1.36.807
 - Supported deleteItem for sdk.
 

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.36.807
+1.36.808

+ 122 - 0
eipanycast/CMakeLists.txt

@@ -0,0 +1,122 @@
+#
+# Copyright 2009-2017 Alibaba Cloud All rights reserved.
+# 
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# 
+#      http://www.apache.org/licenses/LICENSE-2.0
+# 
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+
+set(public_header_dir ${CMAKE_CURRENT_SOURCE_DIR}/../include)
+
+set(eipanycast_public_header 
+	include/alibabacloud/eipanycast/EipanycastClient.h
+	include/alibabacloud/eipanycast/EipanycastExport.h )
+
+set(eipanycast_public_header_model 
+	include/alibabacloud/eipanycast/model/AllocateAnycastEipAddressRequest.h
+	include/alibabacloud/eipanycast/model/AllocateAnycastEipAddressResult.h
+	include/alibabacloud/eipanycast/model/AssociateAnycastEipAddressRequest.h
+	include/alibabacloud/eipanycast/model/AssociateAnycastEipAddressResult.h
+	include/alibabacloud/eipanycast/model/DescribeAnycastEipAddressRequest.h
+	include/alibabacloud/eipanycast/model/DescribeAnycastEipAddressResult.h
+	include/alibabacloud/eipanycast/model/DescribeAnycastPopLocationsRequest.h
+	include/alibabacloud/eipanycast/model/DescribeAnycastPopLocationsResult.h
+	include/alibabacloud/eipanycast/model/DescribeAnycastServerRegionsRequest.h
+	include/alibabacloud/eipanycast/model/DescribeAnycastServerRegionsResult.h
+	include/alibabacloud/eipanycast/model/ListAnycastEipAddressesRequest.h
+	include/alibabacloud/eipanycast/model/ListAnycastEipAddressesResult.h
+	include/alibabacloud/eipanycast/model/ModifyAnycastEipAddressAttributeRequest.h
+	include/alibabacloud/eipanycast/model/ModifyAnycastEipAddressAttributeResult.h
+	include/alibabacloud/eipanycast/model/ModifyAnycastEipAddressSpecRequest.h
+	include/alibabacloud/eipanycast/model/ModifyAnycastEipAddressSpecResult.h
+	include/alibabacloud/eipanycast/model/ReleaseAnycastEipAddressRequest.h
+	include/alibabacloud/eipanycast/model/ReleaseAnycastEipAddressResult.h
+	include/alibabacloud/eipanycast/model/UnassociateAnycastEipAddressRequest.h
+	include/alibabacloud/eipanycast/model/UnassociateAnycastEipAddressResult.h )
+
+set(eipanycast_src 
+	src/EipanycastClient.cc
+	src/model/AllocateAnycastEipAddressRequest.cc
+	src/model/AllocateAnycastEipAddressResult.cc
+	src/model/AssociateAnycastEipAddressRequest.cc
+	src/model/AssociateAnycastEipAddressResult.cc
+	src/model/DescribeAnycastEipAddressRequest.cc
+	src/model/DescribeAnycastEipAddressResult.cc
+	src/model/DescribeAnycastPopLocationsRequest.cc
+	src/model/DescribeAnycastPopLocationsResult.cc
+	src/model/DescribeAnycastServerRegionsRequest.cc
+	src/model/DescribeAnycastServerRegionsResult.cc
+	src/model/ListAnycastEipAddressesRequest.cc
+	src/model/ListAnycastEipAddressesResult.cc
+	src/model/ModifyAnycastEipAddressAttributeRequest.cc
+	src/model/ModifyAnycastEipAddressAttributeResult.cc
+	src/model/ModifyAnycastEipAddressSpecRequest.cc
+	src/model/ModifyAnycastEipAddressSpecResult.cc
+	src/model/ReleaseAnycastEipAddressRequest.cc
+	src/model/ReleaseAnycastEipAddressResult.cc
+	src/model/UnassociateAnycastEipAddressRequest.cc
+	src/model/UnassociateAnycastEipAddressResult.cc )
+
+add_library(eipanycast ${LIB_TYPE}
+	${eipanycast_public_header}
+	${eipanycast_public_header_model}
+	${eipanycast_src})
+
+set_target_properties(eipanycast
+	PROPERTIES
+	LINKER_LANGUAGE CXX
+	ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib
+	LIBRARY_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/lib
+	RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/bin
+	OUTPUT_NAME ${TARGET_OUTPUT_NAME_PREFIX}eipanycast
+	)
+
+if(${LIB_TYPE} STREQUAL "SHARED")
+	set_target_properties(eipanycast
+		PROPERTIES
+		DEFINE_SYMBOL ALIBABACLOUD_EIPANYCAST_LIBRARY)
+endif()
+
+target_include_directories(eipanycast
+	PRIVATE include
+		${CMAKE_SOURCE_DIR}/core/include
+	)
+target_link_libraries(eipanycast
+	core)
+
+if(CMAKE_HOST_WIN32)
+	ExternalProject_Get_Property(jsoncpp INSTALL_DIR)
+	set(jsoncpp_install_dir ${INSTALL_DIR})
+	add_dependencies(eipanycast
+		jsoncpp)
+	target_include_directories(eipanycast
+		PRIVATE	${jsoncpp_install_dir}/include)
+	target_link_libraries(eipanycast
+		${jsoncpp_install_dir}/lib/jsoncpp.lib)
+	set_target_properties(eipanycast
+    	PROPERTIES
+    		COMPILE_OPTIONS "/bigobj")
+else()
+	target_include_directories(eipanycast
+		PRIVATE /usr/include/jsoncpp)
+	target_link_libraries(eipanycast
+		jsoncpp)
+endif()
+
+install(FILES ${eipanycast_public_header}
+	DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/alibabacloud/eipanycast)
+install(FILES ${eipanycast_public_header_model}
+	DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/alibabacloud/eipanycast/model)
+install(TARGETS eipanycast
+	ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+	LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+	RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+	)

+ 126 - 0
eipanycast/include/alibabacloud/eipanycast/EipanycastClient.h

@@ -0,0 +1,126 @@
+/*
+ * 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_EIPANYCAST_EIPANYCASTCLIENT_H_
+#define ALIBABACLOUD_EIPANYCAST_EIPANYCASTCLIENT_H_
+
+#include <future>
+#include <alibabacloud/core/AsyncCallerContext.h>
+#include <alibabacloud/core/EndpointProvider.h>
+#include <alibabacloud/core/RpcServiceClient.h>
+#include "EipanycastExport.h"
+#include "model/AllocateAnycastEipAddressRequest.h"
+#include "model/AllocateAnycastEipAddressResult.h"
+#include "model/AssociateAnycastEipAddressRequest.h"
+#include "model/AssociateAnycastEipAddressResult.h"
+#include "model/DescribeAnycastEipAddressRequest.h"
+#include "model/DescribeAnycastEipAddressResult.h"
+#include "model/DescribeAnycastPopLocationsRequest.h"
+#include "model/DescribeAnycastPopLocationsResult.h"
+#include "model/DescribeAnycastServerRegionsRequest.h"
+#include "model/DescribeAnycastServerRegionsResult.h"
+#include "model/ListAnycastEipAddressesRequest.h"
+#include "model/ListAnycastEipAddressesResult.h"
+#include "model/ModifyAnycastEipAddressAttributeRequest.h"
+#include "model/ModifyAnycastEipAddressAttributeResult.h"
+#include "model/ModifyAnycastEipAddressSpecRequest.h"
+#include "model/ModifyAnycastEipAddressSpecResult.h"
+#include "model/ReleaseAnycastEipAddressRequest.h"
+#include "model/ReleaseAnycastEipAddressResult.h"
+#include "model/UnassociateAnycastEipAddressRequest.h"
+#include "model/UnassociateAnycastEipAddressResult.h"
+
+
+namespace AlibabaCloud
+{
+	namespace Eipanycast
+	{
+		class ALIBABACLOUD_EIPANYCAST_EXPORT EipanycastClient : public RpcServiceClient
+		{
+		public:
+			typedef Outcome<Error, Model::AllocateAnycastEipAddressResult> AllocateAnycastEipAddressOutcome;
+			typedef std::future<AllocateAnycastEipAddressOutcome> AllocateAnycastEipAddressOutcomeCallable;
+			typedef std::function<void(const EipanycastClient*, const Model::AllocateAnycastEipAddressRequest&, const AllocateAnycastEipAddressOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AllocateAnycastEipAddressAsyncHandler;
+			typedef Outcome<Error, Model::AssociateAnycastEipAddressResult> AssociateAnycastEipAddressOutcome;
+			typedef std::future<AssociateAnycastEipAddressOutcome> AssociateAnycastEipAddressOutcomeCallable;
+			typedef std::function<void(const EipanycastClient*, const Model::AssociateAnycastEipAddressRequest&, const AssociateAnycastEipAddressOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> AssociateAnycastEipAddressAsyncHandler;
+			typedef Outcome<Error, Model::DescribeAnycastEipAddressResult> DescribeAnycastEipAddressOutcome;
+			typedef std::future<DescribeAnycastEipAddressOutcome> DescribeAnycastEipAddressOutcomeCallable;
+			typedef std::function<void(const EipanycastClient*, const Model::DescribeAnycastEipAddressRequest&, const DescribeAnycastEipAddressOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeAnycastEipAddressAsyncHandler;
+			typedef Outcome<Error, Model::DescribeAnycastPopLocationsResult> DescribeAnycastPopLocationsOutcome;
+			typedef std::future<DescribeAnycastPopLocationsOutcome> DescribeAnycastPopLocationsOutcomeCallable;
+			typedef std::function<void(const EipanycastClient*, const Model::DescribeAnycastPopLocationsRequest&, const DescribeAnycastPopLocationsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeAnycastPopLocationsAsyncHandler;
+			typedef Outcome<Error, Model::DescribeAnycastServerRegionsResult> DescribeAnycastServerRegionsOutcome;
+			typedef std::future<DescribeAnycastServerRegionsOutcome> DescribeAnycastServerRegionsOutcomeCallable;
+			typedef std::function<void(const EipanycastClient*, const Model::DescribeAnycastServerRegionsRequest&, const DescribeAnycastServerRegionsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeAnycastServerRegionsAsyncHandler;
+			typedef Outcome<Error, Model::ListAnycastEipAddressesResult> ListAnycastEipAddressesOutcome;
+			typedef std::future<ListAnycastEipAddressesOutcome> ListAnycastEipAddressesOutcomeCallable;
+			typedef std::function<void(const EipanycastClient*, const Model::ListAnycastEipAddressesRequest&, const ListAnycastEipAddressesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListAnycastEipAddressesAsyncHandler;
+			typedef Outcome<Error, Model::ModifyAnycastEipAddressAttributeResult> ModifyAnycastEipAddressAttributeOutcome;
+			typedef std::future<ModifyAnycastEipAddressAttributeOutcome> ModifyAnycastEipAddressAttributeOutcomeCallable;
+			typedef std::function<void(const EipanycastClient*, const Model::ModifyAnycastEipAddressAttributeRequest&, const ModifyAnycastEipAddressAttributeOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyAnycastEipAddressAttributeAsyncHandler;
+			typedef Outcome<Error, Model::ModifyAnycastEipAddressSpecResult> ModifyAnycastEipAddressSpecOutcome;
+			typedef std::future<ModifyAnycastEipAddressSpecOutcome> ModifyAnycastEipAddressSpecOutcomeCallable;
+			typedef std::function<void(const EipanycastClient*, const Model::ModifyAnycastEipAddressSpecRequest&, const ModifyAnycastEipAddressSpecOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyAnycastEipAddressSpecAsyncHandler;
+			typedef Outcome<Error, Model::ReleaseAnycastEipAddressResult> ReleaseAnycastEipAddressOutcome;
+			typedef std::future<ReleaseAnycastEipAddressOutcome> ReleaseAnycastEipAddressOutcomeCallable;
+			typedef std::function<void(const EipanycastClient*, const Model::ReleaseAnycastEipAddressRequest&, const ReleaseAnycastEipAddressOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ReleaseAnycastEipAddressAsyncHandler;
+			typedef Outcome<Error, Model::UnassociateAnycastEipAddressResult> UnassociateAnycastEipAddressOutcome;
+			typedef std::future<UnassociateAnycastEipAddressOutcome> UnassociateAnycastEipAddressOutcomeCallable;
+			typedef std::function<void(const EipanycastClient*, const Model::UnassociateAnycastEipAddressRequest&, const UnassociateAnycastEipAddressOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> UnassociateAnycastEipAddressAsyncHandler;
+
+			EipanycastClient(const Credentials &credentials, const ClientConfiguration &configuration);
+			EipanycastClient(const std::shared_ptr<CredentialsProvider> &credentialsProvider, const ClientConfiguration &configuration);
+			EipanycastClient(const std::string &accessKeyId, const std::string &accessKeySecret, const ClientConfiguration &configuration);
+			~EipanycastClient();
+			AllocateAnycastEipAddressOutcome allocateAnycastEipAddress(const Model::AllocateAnycastEipAddressRequest &request)const;
+			void allocateAnycastEipAddressAsync(const Model::AllocateAnycastEipAddressRequest& request, const AllocateAnycastEipAddressAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			AllocateAnycastEipAddressOutcomeCallable allocateAnycastEipAddressCallable(const Model::AllocateAnycastEipAddressRequest& request) const;
+			AssociateAnycastEipAddressOutcome associateAnycastEipAddress(const Model::AssociateAnycastEipAddressRequest &request)const;
+			void associateAnycastEipAddressAsync(const Model::AssociateAnycastEipAddressRequest& request, const AssociateAnycastEipAddressAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			AssociateAnycastEipAddressOutcomeCallable associateAnycastEipAddressCallable(const Model::AssociateAnycastEipAddressRequest& request) const;
+			DescribeAnycastEipAddressOutcome describeAnycastEipAddress(const Model::DescribeAnycastEipAddressRequest &request)const;
+			void describeAnycastEipAddressAsync(const Model::DescribeAnycastEipAddressRequest& request, const DescribeAnycastEipAddressAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeAnycastEipAddressOutcomeCallable describeAnycastEipAddressCallable(const Model::DescribeAnycastEipAddressRequest& request) const;
+			DescribeAnycastPopLocationsOutcome describeAnycastPopLocations(const Model::DescribeAnycastPopLocationsRequest &request)const;
+			void describeAnycastPopLocationsAsync(const Model::DescribeAnycastPopLocationsRequest& request, const DescribeAnycastPopLocationsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeAnycastPopLocationsOutcomeCallable describeAnycastPopLocationsCallable(const Model::DescribeAnycastPopLocationsRequest& request) const;
+			DescribeAnycastServerRegionsOutcome describeAnycastServerRegions(const Model::DescribeAnycastServerRegionsRequest &request)const;
+			void describeAnycastServerRegionsAsync(const Model::DescribeAnycastServerRegionsRequest& request, const DescribeAnycastServerRegionsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeAnycastServerRegionsOutcomeCallable describeAnycastServerRegionsCallable(const Model::DescribeAnycastServerRegionsRequest& request) const;
+			ListAnycastEipAddressesOutcome listAnycastEipAddresses(const Model::ListAnycastEipAddressesRequest &request)const;
+			void listAnycastEipAddressesAsync(const Model::ListAnycastEipAddressesRequest& request, const ListAnycastEipAddressesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ListAnycastEipAddressesOutcomeCallable listAnycastEipAddressesCallable(const Model::ListAnycastEipAddressesRequest& request) const;
+			ModifyAnycastEipAddressAttributeOutcome modifyAnycastEipAddressAttribute(const Model::ModifyAnycastEipAddressAttributeRequest &request)const;
+			void modifyAnycastEipAddressAttributeAsync(const Model::ModifyAnycastEipAddressAttributeRequest& request, const ModifyAnycastEipAddressAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyAnycastEipAddressAttributeOutcomeCallable modifyAnycastEipAddressAttributeCallable(const Model::ModifyAnycastEipAddressAttributeRequest& request) const;
+			ModifyAnycastEipAddressSpecOutcome modifyAnycastEipAddressSpec(const Model::ModifyAnycastEipAddressSpecRequest &request)const;
+			void modifyAnycastEipAddressSpecAsync(const Model::ModifyAnycastEipAddressSpecRequest& request, const ModifyAnycastEipAddressSpecAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ModifyAnycastEipAddressSpecOutcomeCallable modifyAnycastEipAddressSpecCallable(const Model::ModifyAnycastEipAddressSpecRequest& request) const;
+			ReleaseAnycastEipAddressOutcome releaseAnycastEipAddress(const Model::ReleaseAnycastEipAddressRequest &request)const;
+			void releaseAnycastEipAddressAsync(const Model::ReleaseAnycastEipAddressRequest& request, const ReleaseAnycastEipAddressAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			ReleaseAnycastEipAddressOutcomeCallable releaseAnycastEipAddressCallable(const Model::ReleaseAnycastEipAddressRequest& request) const;
+			UnassociateAnycastEipAddressOutcome unassociateAnycastEipAddress(const Model::UnassociateAnycastEipAddressRequest &request)const;
+			void unassociateAnycastEipAddressAsync(const Model::UnassociateAnycastEipAddressRequest& request, const UnassociateAnycastEipAddressAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			UnassociateAnycastEipAddressOutcomeCallable unassociateAnycastEipAddressCallable(const Model::UnassociateAnycastEipAddressRequest& request) const;
+	
+		private:
+			std::shared_ptr<EndpointProvider> endpointProvider_;
+		};
+	}
+}
+
+#endif // !ALIBABACLOUD_EIPANYCAST_EIPANYCASTCLIENT_H_

+ 32 - 0
eipanycast/include/alibabacloud/eipanycast/EipanycastExport.h

@@ -0,0 +1,32 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_EIPANYCAST_EIPANYCASTEXPORT_H_
+#define ALIBABACLOUD_EIPANYCAST_EIPANYCASTEXPORT_H_
+
+#include <alibabacloud/core/Global.h>
+
+#if defined(ALIBABACLOUD_SHARED)
+#	if defined(ALIBABACLOUD_EIPANYCAST_LIBRARY)
+#		define ALIBABACLOUD_EIPANYCAST_EXPORT ALIBABACLOUD_DECL_EXPORT
+#	else
+#		define ALIBABACLOUD_EIPANYCAST_EXPORT ALIBABACLOUD_DECL_IMPORT
+#	endif
+#else
+#	define ALIBABACLOUD_EIPANYCAST_EXPORT
+#endif
+
+#endif // !ALIBABACLOUD_EIPANYCAST_EIPANYCASTEXPORT_H_

+ 69 - 0
eipanycast/include/alibabacloud/eipanycast/model/AllocateAnycastEipAddressRequest.h

@@ -0,0 +1,69 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_EIPANYCAST_MODEL_ALLOCATEANYCASTEIPADDRESSREQUEST_H_
+#define ALIBABACLOUD_EIPANYCAST_MODEL_ALLOCATEANYCASTEIPADDRESSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/eipanycast/EipanycastExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Eipanycast
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_EIPANYCAST_EXPORT AllocateAnycastEipAddressRequest : public RpcServiceRequest
+			{
+
+			public:
+				AllocateAnycastEipAddressRequest();
+				~AllocateAnycastEipAddressRequest();
+
+				std::string getBandwidth()const;
+				void setBandwidth(const std::string& bandwidth);
+				std::string getServiceLocation()const;
+				void setServiceLocation(const std::string& serviceLocation);
+				std::string getClientToken()const;
+				void setClientToken(const std::string& clientToken);
+				std::string getDescription()const;
+				void setDescription(const std::string& description);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getInternetChargeType()const;
+				void setInternetChargeType(const std::string& internetChargeType);
+				std::string getName()const;
+				void setName(const std::string& name);
+				std::string getInstanceChargeType()const;
+				void setInstanceChargeType(const std::string& instanceChargeType);
+
+            private:
+				std::string bandwidth_;
+				std::string serviceLocation_;
+				std::string clientToken_;
+				std::string description_;
+				std::string regionId_;
+				std::string internetChargeType_;
+				std::string name_;
+				std::string instanceChargeType_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_EIPANYCAST_MODEL_ALLOCATEANYCASTEIPADDRESSREQUEST_H_

+ 53 - 0
eipanycast/include/alibabacloud/eipanycast/model/AllocateAnycastEipAddressResult.h

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

+ 66 - 0
eipanycast/include/alibabacloud/eipanycast/model/AssociateAnycastEipAddressRequest.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_EIPANYCAST_MODEL_ASSOCIATEANYCASTEIPADDRESSREQUEST_H_
+#define ALIBABACLOUD_EIPANYCAST_MODEL_ASSOCIATEANYCASTEIPADDRESSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/eipanycast/EipanycastExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Eipanycast
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_EIPANYCAST_EXPORT AssociateAnycastEipAddressRequest : public RpcServiceRequest
+			{
+
+			public:
+				AssociateAnycastEipAddressRequest();
+				~AssociateAnycastEipAddressRequest();
+
+				bool getDryRun()const;
+				void setDryRun(bool dryRun);
+				std::string getClientToken()const;
+				void setClientToken(const std::string& clientToken);
+				std::string getBindInstanceType()const;
+				void setBindInstanceType(const std::string& bindInstanceType);
+				std::string getBindInstanceRegionId()const;
+				void setBindInstanceRegionId(const std::string& bindInstanceRegionId);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getAnycastId()const;
+				void setAnycastId(const std::string& anycastId);
+				std::string getBindInstanceId()const;
+				void setBindInstanceId(const std::string& bindInstanceId);
+
+            private:
+				bool dryRun_;
+				std::string clientToken_;
+				std::string bindInstanceType_;
+				std::string bindInstanceRegionId_;
+				std::string regionId_;
+				std::string anycastId_;
+				std::string bindInstanceId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_EIPANYCAST_MODEL_ASSOCIATEANYCASTEIPADDRESSREQUEST_H_

+ 49 - 0
eipanycast/include/alibabacloud/eipanycast/model/AssociateAnycastEipAddressResult.h

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

+ 54 - 0
eipanycast/include/alibabacloud/eipanycast/model/DescribeAnycastEipAddressRequest.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_EIPANYCAST_MODEL_DESCRIBEANYCASTEIPADDRESSREQUEST_H_
+#define ALIBABACLOUD_EIPANYCAST_MODEL_DESCRIBEANYCASTEIPADDRESSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/eipanycast/EipanycastExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Eipanycast
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_EIPANYCAST_EXPORT DescribeAnycastEipAddressRequest : public RpcServiceRequest
+			{
+
+			public:
+				DescribeAnycastEipAddressRequest();
+				~DescribeAnycastEipAddressRequest();
+
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getAnycastId()const;
+				void setAnycastId(const std::string& anycastId);
+				std::string getBindInstanceId()const;
+				void setBindInstanceId(const std::string& bindInstanceId);
+
+            private:
+				std::string regionId_;
+				std::string anycastId_;
+				std::string bindInstanceId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_EIPANYCAST_MODEL_DESCRIBEANYCASTEIPADDRESSREQUEST_H_

+ 84 - 0
eipanycast/include/alibabacloud/eipanycast/model/DescribeAnycastEipAddressResult.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_EIPANYCAST_MODEL_DESCRIBEANYCASTEIPADDRESSRESULT_H_
+#define ALIBABACLOUD_EIPANYCAST_MODEL_DESCRIBEANYCASTEIPADDRESSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/eipanycast/EipanycastExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Eipanycast
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_EIPANYCAST_EXPORT DescribeAnycastEipAddressResult : public ServiceResult
+			{
+			public:
+				struct AnycastEipBindInfo
+				{
+					std::string bindInstanceId;
+					std::string bindTime;
+					std::string bindInstanceType;
+					std::string bindInstanceRegionId;
+				};
+
+
+				DescribeAnycastEipAddressResult();
+				explicit DescribeAnycastEipAddressResult(const std::string &payload);
+				~DescribeAnycastEipAddressResult();
+				std::string getStatus()const;
+				std::string getDescription()const;
+				std::string getInstanceChargeType()const;
+				std::string getCreateTime()const;
+				std::vector<AnycastEipBindInfo> getAnycastEipBindInfoList()const;
+				std::string getBusinessStatus()const;
+				std::string getName()const;
+				std::string getInternetChargeType()const;
+				std::string getAnycastId()const;
+				std::string getServiceLocation()const;
+				int getBandwidth()const;
+				std::string getIpAddress()const;
+				std::string getBid()const;
+				long getAliUid()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string status_;
+				std::string description_;
+				std::string instanceChargeType_;
+				std::string createTime_;
+				std::vector<AnycastEipBindInfo> anycastEipBindInfoList_;
+				std::string businessStatus_;
+				std::string name_;
+				std::string internetChargeType_;
+				std::string anycastId_;
+				std::string serviceLocation_;
+				int bandwidth_;
+				std::string ipAddress_;
+				std::string bid_;
+				long aliUid_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_EIPANYCAST_MODEL_DESCRIBEANYCASTEIPADDRESSRESULT_H_

+ 51 - 0
eipanycast/include/alibabacloud/eipanycast/model/DescribeAnycastPopLocationsRequest.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_EIPANYCAST_MODEL_DESCRIBEANYCASTPOPLOCATIONSREQUEST_H_
+#define ALIBABACLOUD_EIPANYCAST_MODEL_DESCRIBEANYCASTPOPLOCATIONSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/eipanycast/EipanycastExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Eipanycast
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_EIPANYCAST_EXPORT DescribeAnycastPopLocationsRequest : public RpcServiceRequest
+			{
+
+			public:
+				DescribeAnycastPopLocationsRequest();
+				~DescribeAnycastPopLocationsRequest();
+
+				std::string getServiceLocation()const;
+				void setServiceLocation(const std::string& serviceLocation);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+
+            private:
+				std::string serviceLocation_;
+				std::string regionId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_EIPANYCAST_MODEL_DESCRIBEANYCASTPOPLOCATIONSREQUEST_H_

+ 58 - 0
eipanycast/include/alibabacloud/eipanycast/model/DescribeAnycastPopLocationsResult.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_EIPANYCAST_MODEL_DESCRIBEANYCASTPOPLOCATIONSRESULT_H_
+#define ALIBABACLOUD_EIPANYCAST_MODEL_DESCRIBEANYCASTPOPLOCATIONSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/eipanycast/EipanycastExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Eipanycast
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_EIPANYCAST_EXPORT DescribeAnycastPopLocationsResult : public ServiceResult
+			{
+			public:
+				struct AnycastPopLocation
+				{
+					std::string regionName;
+					std::string regionId;
+				};
+
+
+				DescribeAnycastPopLocationsResult();
+				explicit DescribeAnycastPopLocationsResult(const std::string &payload);
+				~DescribeAnycastPopLocationsResult();
+				std::vector<AnycastPopLocation> getAnycastPopLocationList()const;
+				std::string getCount()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<AnycastPopLocation> anycastPopLocationList_;
+				std::string count_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_EIPANYCAST_MODEL_DESCRIBEANYCASTPOPLOCATIONSRESULT_H_

+ 51 - 0
eipanycast/include/alibabacloud/eipanycast/model/DescribeAnycastServerRegionsRequest.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_EIPANYCAST_MODEL_DESCRIBEANYCASTSERVERREGIONSREQUEST_H_
+#define ALIBABACLOUD_EIPANYCAST_MODEL_DESCRIBEANYCASTSERVERREGIONSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/eipanycast/EipanycastExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Eipanycast
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_EIPANYCAST_EXPORT DescribeAnycastServerRegionsRequest : public RpcServiceRequest
+			{
+
+			public:
+				DescribeAnycastServerRegionsRequest();
+				~DescribeAnycastServerRegionsRequest();
+
+				std::string getServiceLocation()const;
+				void setServiceLocation(const std::string& serviceLocation);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+
+            private:
+				std::string serviceLocation_;
+				std::string regionId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_EIPANYCAST_MODEL_DESCRIBEANYCASTSERVERREGIONSREQUEST_H_

+ 58 - 0
eipanycast/include/alibabacloud/eipanycast/model/DescribeAnycastServerRegionsResult.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_EIPANYCAST_MODEL_DESCRIBEANYCASTSERVERREGIONSRESULT_H_
+#define ALIBABACLOUD_EIPANYCAST_MODEL_DESCRIBEANYCASTSERVERREGIONSRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/eipanycast/EipanycastExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Eipanycast
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_EIPANYCAST_EXPORT DescribeAnycastServerRegionsResult : public ServiceResult
+			{
+			public:
+				struct AnycastServerRegion
+				{
+					std::string regionName;
+					std::string regionId;
+				};
+
+
+				DescribeAnycastServerRegionsResult();
+				explicit DescribeAnycastServerRegionsResult(const std::string &payload);
+				~DescribeAnycastServerRegionsResult();
+				std::string getCount()const;
+				std::vector<AnycastServerRegion> getAnycastServerRegionList()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string count_;
+				std::vector<AnycastServerRegion> anycastServerRegionList_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_EIPANYCAST_MODEL_DESCRIBEANYCASTSERVERREGIONSRESULT_H_

+ 81 - 0
eipanycast/include/alibabacloud/eipanycast/model/ListAnycastEipAddressesRequest.h

@@ -0,0 +1,81 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_EIPANYCAST_MODEL_LISTANYCASTEIPADDRESSESREQUEST_H_
+#define ALIBABACLOUD_EIPANYCAST_MODEL_LISTANYCASTEIPADDRESSESREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/eipanycast/EipanycastExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Eipanycast
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_EIPANYCAST_EXPORT ListAnycastEipAddressesRequest : public RpcServiceRequest
+			{
+
+			public:
+				ListAnycastEipAddressesRequest();
+				~ListAnycastEipAddressesRequest();
+
+				std::string getBusinessStatus()const;
+				void setBusinessStatus(const std::string& businessStatus);
+				std::string getServiceLocation()const;
+				void setServiceLocation(const std::string& serviceLocation);
+				std::string getAnycastEipAddress()const;
+				void setAnycastEipAddress(const std::string& anycastEipAddress);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getNextToken()const;
+				void setNextToken(const std::string& nextToken);
+				std::string getInternetChargeType()const;
+				void setInternetChargeType(const std::string& internetChargeType);
+				std::string getAnycastId()const;
+				void setAnycastId(const std::string& anycastId);
+				std::string getName()const;
+				void setName(const std::string& name);
+				std::vector<std::string> getBindInstanceIds()const;
+				void setBindInstanceIds(const std::vector<std::string>& bindInstanceIds);
+				int getMaxResults()const;
+				void setMaxResults(int maxResults);
+				std::string getInstanceChargeType()const;
+				void setInstanceChargeType(const std::string& instanceChargeType);
+				std::string getStatus()const;
+				void setStatus(const std::string& status);
+
+            private:
+				std::string businessStatus_;
+				std::string serviceLocation_;
+				std::string anycastEipAddress_;
+				std::string regionId_;
+				std::string nextToken_;
+				std::string internetChargeType_;
+				std::string anycastId_;
+				std::string name_;
+				std::vector<std::string> bindInstanceIds_;
+				int maxResults_;
+				std::string instanceChargeType_;
+				std::string status_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_EIPANYCAST_MODEL_LISTANYCASTEIPADDRESSESREQUEST_H_

+ 79 - 0
eipanycast/include/alibabacloud/eipanycast/model/ListAnycastEipAddressesResult.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_EIPANYCAST_MODEL_LISTANYCASTEIPADDRESSESRESULT_H_
+#define ALIBABACLOUD_EIPANYCAST_MODEL_LISTANYCASTEIPADDRESSESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/eipanycast/EipanycastExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Eipanycast
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_EIPANYCAST_EXPORT ListAnycastEipAddressesResult : public ServiceResult
+			{
+			public:
+				struct Anycast
+				{
+					struct AnycastEipBindInfo
+					{
+						std::string bindInstanceId;
+						std::string bindTime;
+						std::string bindInstanceType;
+						std::string bindInstanceRegionId;
+					};
+					std::string status;
+					std::string description;
+					std::string instanceChargeType;
+					std::string createTime;
+					std::vector<Anycast::AnycastEipBindInfo> anycastEipBindInfoList;
+					std::string businessStatus;
+					std::string name;
+					std::string internetChargeType;
+					std::string anycastId;
+					std::string serviceLocation;
+					int bandwidth;
+					std::string ipAddress;
+					std::string bid;
+					long aliUid;
+				};
+
+
+				ListAnycastEipAddressesResult();
+				explicit ListAnycastEipAddressesResult(const std::string &payload);
+				~ListAnycastEipAddressesResult();
+				int getTotalCount()const;
+				std::vector<Anycast> getAnycastList()const;
+				std::string getNextToken()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				int totalCount_;
+				std::vector<Anycast> anycastList_;
+				std::string nextToken_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_EIPANYCAST_MODEL_LISTANYCASTEIPADDRESSESRESULT_H_

+ 57 - 0
eipanycast/include/alibabacloud/eipanycast/model/ModifyAnycastEipAddressAttributeRequest.h

@@ -0,0 +1,57 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_EIPANYCAST_MODEL_MODIFYANYCASTEIPADDRESSATTRIBUTEREQUEST_H_
+#define ALIBABACLOUD_EIPANYCAST_MODEL_MODIFYANYCASTEIPADDRESSATTRIBUTEREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/eipanycast/EipanycastExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Eipanycast
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_EIPANYCAST_EXPORT ModifyAnycastEipAddressAttributeRequest : public RpcServiceRequest
+			{
+
+			public:
+				ModifyAnycastEipAddressAttributeRequest();
+				~ModifyAnycastEipAddressAttributeRequest();
+
+				std::string getDescription()const;
+				void setDescription(const std::string& description);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getAnycastId()const;
+				void setAnycastId(const std::string& anycastId);
+				std::string getName()const;
+				void setName(const std::string& name);
+
+            private:
+				std::string description_;
+				std::string regionId_;
+				std::string anycastId_;
+				std::string name_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_EIPANYCAST_MODEL_MODIFYANYCASTEIPADDRESSATTRIBUTEREQUEST_H_

+ 49 - 0
eipanycast/include/alibabacloud/eipanycast/model/ModifyAnycastEipAddressAttributeResult.h

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

+ 54 - 0
eipanycast/include/alibabacloud/eipanycast/model/ModifyAnycastEipAddressSpecRequest.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_EIPANYCAST_MODEL_MODIFYANYCASTEIPADDRESSSPECREQUEST_H_
+#define ALIBABACLOUD_EIPANYCAST_MODEL_MODIFYANYCASTEIPADDRESSSPECREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/eipanycast/EipanycastExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Eipanycast
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_EIPANYCAST_EXPORT ModifyAnycastEipAddressSpecRequest : public RpcServiceRequest
+			{
+
+			public:
+				ModifyAnycastEipAddressSpecRequest();
+				~ModifyAnycastEipAddressSpecRequest();
+
+				std::string getBandwidth()const;
+				void setBandwidth(const std::string& bandwidth);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getAnycastId()const;
+				void setAnycastId(const std::string& anycastId);
+
+            private:
+				std::string bandwidth_;
+				std::string regionId_;
+				std::string anycastId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_EIPANYCAST_MODEL_MODIFYANYCASTEIPADDRESSSPECREQUEST_H_

+ 49 - 0
eipanycast/include/alibabacloud/eipanycast/model/ModifyAnycastEipAddressSpecResult.h

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

+ 54 - 0
eipanycast/include/alibabacloud/eipanycast/model/ReleaseAnycastEipAddressRequest.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_EIPANYCAST_MODEL_RELEASEANYCASTEIPADDRESSREQUEST_H_
+#define ALIBABACLOUD_EIPANYCAST_MODEL_RELEASEANYCASTEIPADDRESSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/eipanycast/EipanycastExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Eipanycast
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_EIPANYCAST_EXPORT ReleaseAnycastEipAddressRequest : public RpcServiceRequest
+			{
+
+			public:
+				ReleaseAnycastEipAddressRequest();
+				~ReleaseAnycastEipAddressRequest();
+
+				std::string getClientToken()const;
+				void setClientToken(const std::string& clientToken);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getAnycastId()const;
+				void setAnycastId(const std::string& anycastId);
+
+            private:
+				std::string clientToken_;
+				std::string regionId_;
+				std::string anycastId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_EIPANYCAST_MODEL_RELEASEANYCASTEIPADDRESSREQUEST_H_

+ 49 - 0
eipanycast/include/alibabacloud/eipanycast/model/ReleaseAnycastEipAddressResult.h

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

+ 66 - 0
eipanycast/include/alibabacloud/eipanycast/model/UnassociateAnycastEipAddressRequest.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_EIPANYCAST_MODEL_UNASSOCIATEANYCASTEIPADDRESSREQUEST_H_
+#define ALIBABACLOUD_EIPANYCAST_MODEL_UNASSOCIATEANYCASTEIPADDRESSREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/eipanycast/EipanycastExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Eipanycast
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_EIPANYCAST_EXPORT UnassociateAnycastEipAddressRequest : public RpcServiceRequest
+			{
+
+			public:
+				UnassociateAnycastEipAddressRequest();
+				~UnassociateAnycastEipAddressRequest();
+
+				std::string getDryRun()const;
+				void setDryRun(const std::string& dryRun);
+				std::string getClientToken()const;
+				void setClientToken(const std::string& clientToken);
+				std::string getBindInstanceType()const;
+				void setBindInstanceType(const std::string& bindInstanceType);
+				std::string getBindInstanceRegionId()const;
+				void setBindInstanceRegionId(const std::string& bindInstanceRegionId);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getAnycastId()const;
+				void setAnycastId(const std::string& anycastId);
+				std::string getBindInstanceId()const;
+				void setBindInstanceId(const std::string& bindInstanceId);
+
+            private:
+				std::string dryRun_;
+				std::string clientToken_;
+				std::string bindInstanceType_;
+				std::string bindInstanceRegionId_;
+				std::string regionId_;
+				std::string anycastId_;
+				std::string bindInstanceId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_EIPANYCAST_MODEL_UNASSOCIATEANYCASTEIPADDRESSREQUEST_H_

+ 49 - 0
eipanycast/include/alibabacloud/eipanycast/model/UnassociateAnycastEipAddressResult.h

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

+ 413 - 0
eipanycast/src/EipanycastClient.cc

@@ -0,0 +1,413 @@
+/*
+ * 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/eipanycast/EipanycastClient.h>
+#include <alibabacloud/core/SimpleCredentialsProvider.h>
+
+using namespace AlibabaCloud;
+using namespace AlibabaCloud::Location;
+using namespace AlibabaCloud::Eipanycast;
+using namespace AlibabaCloud::Eipanycast::Model;
+
+namespace
+{
+	const std::string SERVICE_NAME = "Eipanycast";
+}
+
+EipanycastClient::EipanycastClient(const Credentials &credentials, const ClientConfiguration &configuration) :
+	RpcServiceClient(SERVICE_NAME, std::make_shared<SimpleCredentialsProvider>(credentials), configuration)
+{
+	auto locationClient = std::make_shared<LocationClient>(credentials, configuration);
+	endpointProvider_ = std::make_shared<EndpointProvider>(locationClient, configuration.regionId(), SERVICE_NAME, "eipanycast");
+}
+
+EipanycastClient::EipanycastClient(const std::shared_ptr<CredentialsProvider>& credentialsProvider, const ClientConfiguration & configuration) :
+	RpcServiceClient(SERVICE_NAME, credentialsProvider, configuration)
+{
+	auto locationClient = std::make_shared<LocationClient>(credentialsProvider, configuration);
+	endpointProvider_ = std::make_shared<EndpointProvider>(locationClient, configuration.regionId(), SERVICE_NAME, "eipanycast");
+}
+
+EipanycastClient::EipanycastClient(const std::string & accessKeyId, const std::string & accessKeySecret, const ClientConfiguration & configuration) :
+	RpcServiceClient(SERVICE_NAME, std::make_shared<SimpleCredentialsProvider>(accessKeyId, accessKeySecret), configuration)
+{
+	auto locationClient = std::make_shared<LocationClient>(accessKeyId, accessKeySecret, configuration);
+	endpointProvider_ = std::make_shared<EndpointProvider>(locationClient, configuration.regionId(), SERVICE_NAME, "eipanycast");
+}
+
+EipanycastClient::~EipanycastClient()
+{}
+
+EipanycastClient::AllocateAnycastEipAddressOutcome EipanycastClient::allocateAnycastEipAddress(const AllocateAnycastEipAddressRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return AllocateAnycastEipAddressOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return AllocateAnycastEipAddressOutcome(AllocateAnycastEipAddressResult(outcome.result()));
+	else
+		return AllocateAnycastEipAddressOutcome(outcome.error());
+}
+
+void EipanycastClient::allocateAnycastEipAddressAsync(const AllocateAnycastEipAddressRequest& request, const AllocateAnycastEipAddressAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, allocateAnycastEipAddress(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+EipanycastClient::AllocateAnycastEipAddressOutcomeCallable EipanycastClient::allocateAnycastEipAddressCallable(const AllocateAnycastEipAddressRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<AllocateAnycastEipAddressOutcome()>>(
+			[this, request]()
+			{
+			return this->allocateAnycastEipAddress(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+EipanycastClient::AssociateAnycastEipAddressOutcome EipanycastClient::associateAnycastEipAddress(const AssociateAnycastEipAddressRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return AssociateAnycastEipAddressOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return AssociateAnycastEipAddressOutcome(AssociateAnycastEipAddressResult(outcome.result()));
+	else
+		return AssociateAnycastEipAddressOutcome(outcome.error());
+}
+
+void EipanycastClient::associateAnycastEipAddressAsync(const AssociateAnycastEipAddressRequest& request, const AssociateAnycastEipAddressAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, associateAnycastEipAddress(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+EipanycastClient::AssociateAnycastEipAddressOutcomeCallable EipanycastClient::associateAnycastEipAddressCallable(const AssociateAnycastEipAddressRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<AssociateAnycastEipAddressOutcome()>>(
+			[this, request]()
+			{
+			return this->associateAnycastEipAddress(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+EipanycastClient::DescribeAnycastEipAddressOutcome EipanycastClient::describeAnycastEipAddress(const DescribeAnycastEipAddressRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeAnycastEipAddressOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeAnycastEipAddressOutcome(DescribeAnycastEipAddressResult(outcome.result()));
+	else
+		return DescribeAnycastEipAddressOutcome(outcome.error());
+}
+
+void EipanycastClient::describeAnycastEipAddressAsync(const DescribeAnycastEipAddressRequest& request, const DescribeAnycastEipAddressAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeAnycastEipAddress(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+EipanycastClient::DescribeAnycastEipAddressOutcomeCallable EipanycastClient::describeAnycastEipAddressCallable(const DescribeAnycastEipAddressRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeAnycastEipAddressOutcome()>>(
+			[this, request]()
+			{
+			return this->describeAnycastEipAddress(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+EipanycastClient::DescribeAnycastPopLocationsOutcome EipanycastClient::describeAnycastPopLocations(const DescribeAnycastPopLocationsRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeAnycastPopLocationsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeAnycastPopLocationsOutcome(DescribeAnycastPopLocationsResult(outcome.result()));
+	else
+		return DescribeAnycastPopLocationsOutcome(outcome.error());
+}
+
+void EipanycastClient::describeAnycastPopLocationsAsync(const DescribeAnycastPopLocationsRequest& request, const DescribeAnycastPopLocationsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeAnycastPopLocations(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+EipanycastClient::DescribeAnycastPopLocationsOutcomeCallable EipanycastClient::describeAnycastPopLocationsCallable(const DescribeAnycastPopLocationsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeAnycastPopLocationsOutcome()>>(
+			[this, request]()
+			{
+			return this->describeAnycastPopLocations(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+EipanycastClient::DescribeAnycastServerRegionsOutcome EipanycastClient::describeAnycastServerRegions(const DescribeAnycastServerRegionsRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeAnycastServerRegionsOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeAnycastServerRegionsOutcome(DescribeAnycastServerRegionsResult(outcome.result()));
+	else
+		return DescribeAnycastServerRegionsOutcome(outcome.error());
+}
+
+void EipanycastClient::describeAnycastServerRegionsAsync(const DescribeAnycastServerRegionsRequest& request, const DescribeAnycastServerRegionsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeAnycastServerRegions(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+EipanycastClient::DescribeAnycastServerRegionsOutcomeCallable EipanycastClient::describeAnycastServerRegionsCallable(const DescribeAnycastServerRegionsRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeAnycastServerRegionsOutcome()>>(
+			[this, request]()
+			{
+			return this->describeAnycastServerRegions(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+EipanycastClient::ListAnycastEipAddressesOutcome EipanycastClient::listAnycastEipAddresses(const ListAnycastEipAddressesRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ListAnycastEipAddressesOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ListAnycastEipAddressesOutcome(ListAnycastEipAddressesResult(outcome.result()));
+	else
+		return ListAnycastEipAddressesOutcome(outcome.error());
+}
+
+void EipanycastClient::listAnycastEipAddressesAsync(const ListAnycastEipAddressesRequest& request, const ListAnycastEipAddressesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, listAnycastEipAddresses(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+EipanycastClient::ListAnycastEipAddressesOutcomeCallable EipanycastClient::listAnycastEipAddressesCallable(const ListAnycastEipAddressesRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ListAnycastEipAddressesOutcome()>>(
+			[this, request]()
+			{
+			return this->listAnycastEipAddresses(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+EipanycastClient::ModifyAnycastEipAddressAttributeOutcome EipanycastClient::modifyAnycastEipAddressAttribute(const ModifyAnycastEipAddressAttributeRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ModifyAnycastEipAddressAttributeOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ModifyAnycastEipAddressAttributeOutcome(ModifyAnycastEipAddressAttributeResult(outcome.result()));
+	else
+		return ModifyAnycastEipAddressAttributeOutcome(outcome.error());
+}
+
+void EipanycastClient::modifyAnycastEipAddressAttributeAsync(const ModifyAnycastEipAddressAttributeRequest& request, const ModifyAnycastEipAddressAttributeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, modifyAnycastEipAddressAttribute(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+EipanycastClient::ModifyAnycastEipAddressAttributeOutcomeCallable EipanycastClient::modifyAnycastEipAddressAttributeCallable(const ModifyAnycastEipAddressAttributeRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ModifyAnycastEipAddressAttributeOutcome()>>(
+			[this, request]()
+			{
+			return this->modifyAnycastEipAddressAttribute(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+EipanycastClient::ModifyAnycastEipAddressSpecOutcome EipanycastClient::modifyAnycastEipAddressSpec(const ModifyAnycastEipAddressSpecRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ModifyAnycastEipAddressSpecOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ModifyAnycastEipAddressSpecOutcome(ModifyAnycastEipAddressSpecResult(outcome.result()));
+	else
+		return ModifyAnycastEipAddressSpecOutcome(outcome.error());
+}
+
+void EipanycastClient::modifyAnycastEipAddressSpecAsync(const ModifyAnycastEipAddressSpecRequest& request, const ModifyAnycastEipAddressSpecAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, modifyAnycastEipAddressSpec(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+EipanycastClient::ModifyAnycastEipAddressSpecOutcomeCallable EipanycastClient::modifyAnycastEipAddressSpecCallable(const ModifyAnycastEipAddressSpecRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ModifyAnycastEipAddressSpecOutcome()>>(
+			[this, request]()
+			{
+			return this->modifyAnycastEipAddressSpec(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+EipanycastClient::ReleaseAnycastEipAddressOutcome EipanycastClient::releaseAnycastEipAddress(const ReleaseAnycastEipAddressRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return ReleaseAnycastEipAddressOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return ReleaseAnycastEipAddressOutcome(ReleaseAnycastEipAddressResult(outcome.result()));
+	else
+		return ReleaseAnycastEipAddressOutcome(outcome.error());
+}
+
+void EipanycastClient::releaseAnycastEipAddressAsync(const ReleaseAnycastEipAddressRequest& request, const ReleaseAnycastEipAddressAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, releaseAnycastEipAddress(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+EipanycastClient::ReleaseAnycastEipAddressOutcomeCallable EipanycastClient::releaseAnycastEipAddressCallable(const ReleaseAnycastEipAddressRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<ReleaseAnycastEipAddressOutcome()>>(
+			[this, request]()
+			{
+			return this->releaseAnycastEipAddress(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+EipanycastClient::UnassociateAnycastEipAddressOutcome EipanycastClient::unassociateAnycastEipAddress(const UnassociateAnycastEipAddressRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return UnassociateAnycastEipAddressOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return UnassociateAnycastEipAddressOutcome(UnassociateAnycastEipAddressResult(outcome.result()));
+	else
+		return UnassociateAnycastEipAddressOutcome(outcome.error());
+}
+
+void EipanycastClient::unassociateAnycastEipAddressAsync(const UnassociateAnycastEipAddressRequest& request, const UnassociateAnycastEipAddressAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, unassociateAnycastEipAddress(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+EipanycastClient::UnassociateAnycastEipAddressOutcomeCallable EipanycastClient::unassociateAnycastEipAddressCallable(const UnassociateAnycastEipAddressRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<UnassociateAnycastEipAddressOutcome()>>(
+			[this, request]()
+			{
+			return this->unassociateAnycastEipAddress(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+

+ 117 - 0
eipanycast/src/model/AllocateAnycastEipAddressRequest.cc

@@ -0,0 +1,117 @@
+/*
+ * 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/eipanycast/model/AllocateAnycastEipAddressRequest.h>
+
+using AlibabaCloud::Eipanycast::Model::AllocateAnycastEipAddressRequest;
+
+AllocateAnycastEipAddressRequest::AllocateAnycastEipAddressRequest() :
+	RpcServiceRequest("eipanycast", "2020-03-09", "AllocateAnycastEipAddress")
+{
+	setMethod(HttpRequest::Method::Post);
+}
+
+AllocateAnycastEipAddressRequest::~AllocateAnycastEipAddressRequest()
+{}
+
+std::string AllocateAnycastEipAddressRequest::getBandwidth()const
+{
+	return bandwidth_;
+}
+
+void AllocateAnycastEipAddressRequest::setBandwidth(const std::string& bandwidth)
+{
+	bandwidth_ = bandwidth;
+	setParameter("Bandwidth", bandwidth);
+}
+
+std::string AllocateAnycastEipAddressRequest::getServiceLocation()const
+{
+	return serviceLocation_;
+}
+
+void AllocateAnycastEipAddressRequest::setServiceLocation(const std::string& serviceLocation)
+{
+	serviceLocation_ = serviceLocation;
+	setParameter("ServiceLocation", serviceLocation);
+}
+
+std::string AllocateAnycastEipAddressRequest::getClientToken()const
+{
+	return clientToken_;
+}
+
+void AllocateAnycastEipAddressRequest::setClientToken(const std::string& clientToken)
+{
+	clientToken_ = clientToken;
+	setParameter("ClientToken", clientToken);
+}
+
+std::string AllocateAnycastEipAddressRequest::getDescription()const
+{
+	return description_;
+}
+
+void AllocateAnycastEipAddressRequest::setDescription(const std::string& description)
+{
+	description_ = description;
+	setParameter("Description", description);
+}
+
+std::string AllocateAnycastEipAddressRequest::getRegionId()const
+{
+	return regionId_;
+}
+
+void AllocateAnycastEipAddressRequest::setRegionId(const std::string& regionId)
+{
+	regionId_ = regionId;
+	setParameter("RegionId", regionId);
+}
+
+std::string AllocateAnycastEipAddressRequest::getInternetChargeType()const
+{
+	return internetChargeType_;
+}
+
+void AllocateAnycastEipAddressRequest::setInternetChargeType(const std::string& internetChargeType)
+{
+	internetChargeType_ = internetChargeType;
+	setParameter("InternetChargeType", internetChargeType);
+}
+
+std::string AllocateAnycastEipAddressRequest::getName()const
+{
+	return name_;
+}
+
+void AllocateAnycastEipAddressRequest::setName(const std::string& name)
+{
+	name_ = name;
+	setParameter("Name", name);
+}
+
+std::string AllocateAnycastEipAddressRequest::getInstanceChargeType()const
+{
+	return instanceChargeType_;
+}
+
+void AllocateAnycastEipAddressRequest::setInstanceChargeType(const std::string& instanceChargeType)
+{
+	instanceChargeType_ = instanceChargeType;
+	setParameter("InstanceChargeType", instanceChargeType);
+}
+

+ 58 - 0
eipanycast/src/model/AllocateAnycastEipAddressResult.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/eipanycast/model/AllocateAnycastEipAddressResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Eipanycast;
+using namespace AlibabaCloud::Eipanycast::Model;
+
+AllocateAnycastEipAddressResult::AllocateAnycastEipAddressResult() :
+	ServiceResult()
+{}
+
+AllocateAnycastEipAddressResult::AllocateAnycastEipAddressResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+AllocateAnycastEipAddressResult::~AllocateAnycastEipAddressResult()
+{}
+
+void AllocateAnycastEipAddressResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	if(!value["AnycastId"].isNull())
+		anycastId_ = value["AnycastId"].asString();
+	if(!value["OrderId"].isNull())
+		orderId_ = value["OrderId"].asString();
+
+}
+
+std::string AllocateAnycastEipAddressResult::getAnycastId()const
+{
+	return anycastId_;
+}
+
+std::string AllocateAnycastEipAddressResult::getOrderId()const
+{
+	return orderId_;
+}
+

+ 106 - 0
eipanycast/src/model/AssociateAnycastEipAddressRequest.cc

@@ -0,0 +1,106 @@
+/*
+ * 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/eipanycast/model/AssociateAnycastEipAddressRequest.h>
+
+using AlibabaCloud::Eipanycast::Model::AssociateAnycastEipAddressRequest;
+
+AssociateAnycastEipAddressRequest::AssociateAnycastEipAddressRequest() :
+	RpcServiceRequest("eipanycast", "2020-03-09", "AssociateAnycastEipAddress")
+{
+	setMethod(HttpRequest::Method::Post);
+}
+
+AssociateAnycastEipAddressRequest::~AssociateAnycastEipAddressRequest()
+{}
+
+bool AssociateAnycastEipAddressRequest::getDryRun()const
+{
+	return dryRun_;
+}
+
+void AssociateAnycastEipAddressRequest::setDryRun(bool dryRun)
+{
+	dryRun_ = dryRun;
+	setParameter("DryRun", dryRun ? "true" : "false");
+}
+
+std::string AssociateAnycastEipAddressRequest::getClientToken()const
+{
+	return clientToken_;
+}
+
+void AssociateAnycastEipAddressRequest::setClientToken(const std::string& clientToken)
+{
+	clientToken_ = clientToken;
+	setParameter("ClientToken", clientToken);
+}
+
+std::string AssociateAnycastEipAddressRequest::getBindInstanceType()const
+{
+	return bindInstanceType_;
+}
+
+void AssociateAnycastEipAddressRequest::setBindInstanceType(const std::string& bindInstanceType)
+{
+	bindInstanceType_ = bindInstanceType;
+	setParameter("BindInstanceType", bindInstanceType);
+}
+
+std::string AssociateAnycastEipAddressRequest::getBindInstanceRegionId()const
+{
+	return bindInstanceRegionId_;
+}
+
+void AssociateAnycastEipAddressRequest::setBindInstanceRegionId(const std::string& bindInstanceRegionId)
+{
+	bindInstanceRegionId_ = bindInstanceRegionId;
+	setParameter("BindInstanceRegionId", bindInstanceRegionId);
+}
+
+std::string AssociateAnycastEipAddressRequest::getRegionId()const
+{
+	return regionId_;
+}
+
+void AssociateAnycastEipAddressRequest::setRegionId(const std::string& regionId)
+{
+	regionId_ = regionId;
+	setParameter("RegionId", regionId);
+}
+
+std::string AssociateAnycastEipAddressRequest::getAnycastId()const
+{
+	return anycastId_;
+}
+
+void AssociateAnycastEipAddressRequest::setAnycastId(const std::string& anycastId)
+{
+	anycastId_ = anycastId;
+	setParameter("AnycastId", anycastId);
+}
+
+std::string AssociateAnycastEipAddressRequest::getBindInstanceId()const
+{
+	return bindInstanceId_;
+}
+
+void AssociateAnycastEipAddressRequest::setBindInstanceId(const std::string& bindInstanceId)
+{
+	bindInstanceId_ = bindInstanceId;
+	setParameter("BindInstanceId", bindInstanceId);
+}
+

+ 44 - 0
eipanycast/src/model/AssociateAnycastEipAddressResult.cc

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

+ 62 - 0
eipanycast/src/model/DescribeAnycastEipAddressRequest.cc

@@ -0,0 +1,62 @@
+/*
+ * 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/eipanycast/model/DescribeAnycastEipAddressRequest.h>
+
+using AlibabaCloud::Eipanycast::Model::DescribeAnycastEipAddressRequest;
+
+DescribeAnycastEipAddressRequest::DescribeAnycastEipAddressRequest() :
+	RpcServiceRequest("eipanycast", "2020-03-09", "DescribeAnycastEipAddress")
+{
+	setMethod(HttpRequest::Method::Post);
+}
+
+DescribeAnycastEipAddressRequest::~DescribeAnycastEipAddressRequest()
+{}
+
+std::string DescribeAnycastEipAddressRequest::getRegionId()const
+{
+	return regionId_;
+}
+
+void DescribeAnycastEipAddressRequest::setRegionId(const std::string& regionId)
+{
+	regionId_ = regionId;
+	setParameter("RegionId", regionId);
+}
+
+std::string DescribeAnycastEipAddressRequest::getAnycastId()const
+{
+	return anycastId_;
+}
+
+void DescribeAnycastEipAddressRequest::setAnycastId(const std::string& anycastId)
+{
+	anycastId_ = anycastId;
+	setParameter("AnycastId", anycastId);
+}
+
+std::string DescribeAnycastEipAddressRequest::getBindInstanceId()const
+{
+	return bindInstanceId_;
+}
+
+void DescribeAnycastEipAddressRequest::setBindInstanceId(const std::string& bindInstanceId)
+{
+	bindInstanceId_ = bindInstanceId;
+	setParameter("BindInstanceId", bindInstanceId);
+}
+

+ 154 - 0
eipanycast/src/model/DescribeAnycastEipAddressResult.cc

@@ -0,0 +1,154 @@
+/*
+ * 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/eipanycast/model/DescribeAnycastEipAddressResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Eipanycast;
+using namespace AlibabaCloud::Eipanycast::Model;
+
+DescribeAnycastEipAddressResult::DescribeAnycastEipAddressResult() :
+	ServiceResult()
+{}
+
+DescribeAnycastEipAddressResult::DescribeAnycastEipAddressResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeAnycastEipAddressResult::~DescribeAnycastEipAddressResult()
+{}
+
+void DescribeAnycastEipAddressResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allAnycastEipBindInfoListNode = value["AnycastEipBindInfoList"]["AnycastEipBindInfo"];
+	for (auto valueAnycastEipBindInfoListAnycastEipBindInfo : allAnycastEipBindInfoListNode)
+	{
+		AnycastEipBindInfo anycastEipBindInfoListObject;
+		if(!valueAnycastEipBindInfoListAnycastEipBindInfo["BindInstanceId"].isNull())
+			anycastEipBindInfoListObject.bindInstanceId = valueAnycastEipBindInfoListAnycastEipBindInfo["BindInstanceId"].asString();
+		if(!valueAnycastEipBindInfoListAnycastEipBindInfo["BindInstanceType"].isNull())
+			anycastEipBindInfoListObject.bindInstanceType = valueAnycastEipBindInfoListAnycastEipBindInfo["BindInstanceType"].asString();
+		if(!valueAnycastEipBindInfoListAnycastEipBindInfo["BindTime"].isNull())
+			anycastEipBindInfoListObject.bindTime = valueAnycastEipBindInfoListAnycastEipBindInfo["BindTime"].asString();
+		if(!valueAnycastEipBindInfoListAnycastEipBindInfo["BindInstanceRegionId"].isNull())
+			anycastEipBindInfoListObject.bindInstanceRegionId = valueAnycastEipBindInfoListAnycastEipBindInfo["BindInstanceRegionId"].asString();
+		anycastEipBindInfoList_.push_back(anycastEipBindInfoListObject);
+	}
+	if(!value["AnycastId"].isNull())
+		anycastId_ = value["AnycastId"].asString();
+	if(!value["IpAddress"].isNull())
+		ipAddress_ = value["IpAddress"].asString();
+	if(!value["Name"].isNull())
+		name_ = value["Name"].asString();
+	if(!value["Description"].isNull())
+		description_ = value["Description"].asString();
+	if(!value["Bandwidth"].isNull())
+		bandwidth_ = std::stoi(value["Bandwidth"].asString());
+	if(!value["InstanceChargeType"].isNull())
+		instanceChargeType_ = value["InstanceChargeType"].asString();
+	if(!value["InternetChargeType"].isNull())
+		internetChargeType_ = value["InternetChargeType"].asString();
+	if(!value["CreateTime"].isNull())
+		createTime_ = value["CreateTime"].asString();
+	if(!value["Status"].isNull())
+		status_ = value["Status"].asString();
+	if(!value["ServiceLocation"].isNull())
+		serviceLocation_ = value["ServiceLocation"].asString();
+	if(!value["AliUid"].isNull())
+		aliUid_ = std::stol(value["AliUid"].asString());
+	if(!value["Bid"].isNull())
+		bid_ = value["Bid"].asString();
+	if(!value["BusinessStatus"].isNull())
+		businessStatus_ = value["BusinessStatus"].asString();
+
+}
+
+std::string DescribeAnycastEipAddressResult::getStatus()const
+{
+	return status_;
+}
+
+std::string DescribeAnycastEipAddressResult::getDescription()const
+{
+	return description_;
+}
+
+std::string DescribeAnycastEipAddressResult::getInstanceChargeType()const
+{
+	return instanceChargeType_;
+}
+
+std::string DescribeAnycastEipAddressResult::getCreateTime()const
+{
+	return createTime_;
+}
+
+std::vector<DescribeAnycastEipAddressResult::AnycastEipBindInfo> DescribeAnycastEipAddressResult::getAnycastEipBindInfoList()const
+{
+	return anycastEipBindInfoList_;
+}
+
+std::string DescribeAnycastEipAddressResult::getBusinessStatus()const
+{
+	return businessStatus_;
+}
+
+std::string DescribeAnycastEipAddressResult::getName()const
+{
+	return name_;
+}
+
+std::string DescribeAnycastEipAddressResult::getInternetChargeType()const
+{
+	return internetChargeType_;
+}
+
+std::string DescribeAnycastEipAddressResult::getAnycastId()const
+{
+	return anycastId_;
+}
+
+std::string DescribeAnycastEipAddressResult::getServiceLocation()const
+{
+	return serviceLocation_;
+}
+
+int DescribeAnycastEipAddressResult::getBandwidth()const
+{
+	return bandwidth_;
+}
+
+std::string DescribeAnycastEipAddressResult::getIpAddress()const
+{
+	return ipAddress_;
+}
+
+std::string DescribeAnycastEipAddressResult::getBid()const
+{
+	return bid_;
+}
+
+long DescribeAnycastEipAddressResult::getAliUid()const
+{
+	return aliUid_;
+}
+

+ 51 - 0
eipanycast/src/model/DescribeAnycastPopLocationsRequest.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/eipanycast/model/DescribeAnycastPopLocationsRequest.h>
+
+using AlibabaCloud::Eipanycast::Model::DescribeAnycastPopLocationsRequest;
+
+DescribeAnycastPopLocationsRequest::DescribeAnycastPopLocationsRequest() :
+	RpcServiceRequest("eipanycast", "2020-03-09", "DescribeAnycastPopLocations")
+{
+	setMethod(HttpRequest::Method::Post);
+}
+
+DescribeAnycastPopLocationsRequest::~DescribeAnycastPopLocationsRequest()
+{}
+
+std::string DescribeAnycastPopLocationsRequest::getServiceLocation()const
+{
+	return serviceLocation_;
+}
+
+void DescribeAnycastPopLocationsRequest::setServiceLocation(const std::string& serviceLocation)
+{
+	serviceLocation_ = serviceLocation;
+	setParameter("ServiceLocation", serviceLocation);
+}
+
+std::string DescribeAnycastPopLocationsRequest::getRegionId()const
+{
+	return regionId_;
+}
+
+void DescribeAnycastPopLocationsRequest::setRegionId(const std::string& regionId)
+{
+	regionId_ = regionId;
+	setParameter("RegionId", regionId);
+}
+

+ 66 - 0
eipanycast/src/model/DescribeAnycastPopLocationsResult.cc

@@ -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.
+ */
+
+#include <alibabacloud/eipanycast/model/DescribeAnycastPopLocationsResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Eipanycast;
+using namespace AlibabaCloud::Eipanycast::Model;
+
+DescribeAnycastPopLocationsResult::DescribeAnycastPopLocationsResult() :
+	ServiceResult()
+{}
+
+DescribeAnycastPopLocationsResult::DescribeAnycastPopLocationsResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeAnycastPopLocationsResult::~DescribeAnycastPopLocationsResult()
+{}
+
+void DescribeAnycastPopLocationsResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allAnycastPopLocationListNode = value["AnycastPopLocationList"]["AnycastPopLocation"];
+	for (auto valueAnycastPopLocationListAnycastPopLocation : allAnycastPopLocationListNode)
+	{
+		AnycastPopLocation anycastPopLocationListObject;
+		if(!valueAnycastPopLocationListAnycastPopLocation["RegionId"].isNull())
+			anycastPopLocationListObject.regionId = valueAnycastPopLocationListAnycastPopLocation["RegionId"].asString();
+		if(!valueAnycastPopLocationListAnycastPopLocation["RegionName"].isNull())
+			anycastPopLocationListObject.regionName = valueAnycastPopLocationListAnycastPopLocation["RegionName"].asString();
+		anycastPopLocationList_.push_back(anycastPopLocationListObject);
+	}
+	if(!value["Count"].isNull())
+		count_ = value["Count"].asString();
+
+}
+
+std::vector<DescribeAnycastPopLocationsResult::AnycastPopLocation> DescribeAnycastPopLocationsResult::getAnycastPopLocationList()const
+{
+	return anycastPopLocationList_;
+}
+
+std::string DescribeAnycastPopLocationsResult::getCount()const
+{
+	return count_;
+}
+

+ 51 - 0
eipanycast/src/model/DescribeAnycastServerRegionsRequest.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/eipanycast/model/DescribeAnycastServerRegionsRequest.h>
+
+using AlibabaCloud::Eipanycast::Model::DescribeAnycastServerRegionsRequest;
+
+DescribeAnycastServerRegionsRequest::DescribeAnycastServerRegionsRequest() :
+	RpcServiceRequest("eipanycast", "2020-03-09", "DescribeAnycastServerRegions")
+{
+	setMethod(HttpRequest::Method::Post);
+}
+
+DescribeAnycastServerRegionsRequest::~DescribeAnycastServerRegionsRequest()
+{}
+
+std::string DescribeAnycastServerRegionsRequest::getServiceLocation()const
+{
+	return serviceLocation_;
+}
+
+void DescribeAnycastServerRegionsRequest::setServiceLocation(const std::string& serviceLocation)
+{
+	serviceLocation_ = serviceLocation;
+	setParameter("ServiceLocation", serviceLocation);
+}
+
+std::string DescribeAnycastServerRegionsRequest::getRegionId()const
+{
+	return regionId_;
+}
+
+void DescribeAnycastServerRegionsRequest::setRegionId(const std::string& regionId)
+{
+	regionId_ = regionId;
+	setParameter("RegionId", regionId);
+}
+

+ 66 - 0
eipanycast/src/model/DescribeAnycastServerRegionsResult.cc

@@ -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.
+ */
+
+#include <alibabacloud/eipanycast/model/DescribeAnycastServerRegionsResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Eipanycast;
+using namespace AlibabaCloud::Eipanycast::Model;
+
+DescribeAnycastServerRegionsResult::DescribeAnycastServerRegionsResult() :
+	ServiceResult()
+{}
+
+DescribeAnycastServerRegionsResult::DescribeAnycastServerRegionsResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeAnycastServerRegionsResult::~DescribeAnycastServerRegionsResult()
+{}
+
+void DescribeAnycastServerRegionsResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allAnycastServerRegionListNode = value["AnycastServerRegionList"]["AnycastServerRegion"];
+	for (auto valueAnycastServerRegionListAnycastServerRegion : allAnycastServerRegionListNode)
+	{
+		AnycastServerRegion anycastServerRegionListObject;
+		if(!valueAnycastServerRegionListAnycastServerRegion["RegionId"].isNull())
+			anycastServerRegionListObject.regionId = valueAnycastServerRegionListAnycastServerRegion["RegionId"].asString();
+		if(!valueAnycastServerRegionListAnycastServerRegion["RegionName"].isNull())
+			anycastServerRegionListObject.regionName = valueAnycastServerRegionListAnycastServerRegion["RegionName"].asString();
+		anycastServerRegionList_.push_back(anycastServerRegionListObject);
+	}
+	if(!value["Count"].isNull())
+		count_ = value["Count"].asString();
+
+}
+
+std::string DescribeAnycastServerRegionsResult::getCount()const
+{
+	return count_;
+}
+
+std::vector<DescribeAnycastServerRegionsResult::AnycastServerRegion> DescribeAnycastServerRegionsResult::getAnycastServerRegionList()const
+{
+	return anycastServerRegionList_;
+}
+

+ 163 - 0
eipanycast/src/model/ListAnycastEipAddressesRequest.cc

@@ -0,0 +1,163 @@
+/*
+ * 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/eipanycast/model/ListAnycastEipAddressesRequest.h>
+
+using AlibabaCloud::Eipanycast::Model::ListAnycastEipAddressesRequest;
+
+ListAnycastEipAddressesRequest::ListAnycastEipAddressesRequest() :
+	RpcServiceRequest("eipanycast", "2020-03-09", "ListAnycastEipAddresses")
+{
+	setMethod(HttpRequest::Method::Post);
+}
+
+ListAnycastEipAddressesRequest::~ListAnycastEipAddressesRequest()
+{}
+
+std::string ListAnycastEipAddressesRequest::getBusinessStatus()const
+{
+	return businessStatus_;
+}
+
+void ListAnycastEipAddressesRequest::setBusinessStatus(const std::string& businessStatus)
+{
+	businessStatus_ = businessStatus;
+	setParameter("BusinessStatus", businessStatus);
+}
+
+std::string ListAnycastEipAddressesRequest::getServiceLocation()const
+{
+	return serviceLocation_;
+}
+
+void ListAnycastEipAddressesRequest::setServiceLocation(const std::string& serviceLocation)
+{
+	serviceLocation_ = serviceLocation;
+	setParameter("ServiceLocation", serviceLocation);
+}
+
+std::string ListAnycastEipAddressesRequest::getAnycastEipAddress()const
+{
+	return anycastEipAddress_;
+}
+
+void ListAnycastEipAddressesRequest::setAnycastEipAddress(const std::string& anycastEipAddress)
+{
+	anycastEipAddress_ = anycastEipAddress;
+	setParameter("AnycastEipAddress", anycastEipAddress);
+}
+
+std::string ListAnycastEipAddressesRequest::getRegionId()const
+{
+	return regionId_;
+}
+
+void ListAnycastEipAddressesRequest::setRegionId(const std::string& regionId)
+{
+	regionId_ = regionId;
+	setParameter("RegionId", regionId);
+}
+
+std::string ListAnycastEipAddressesRequest::getNextToken()const
+{
+	return nextToken_;
+}
+
+void ListAnycastEipAddressesRequest::setNextToken(const std::string& nextToken)
+{
+	nextToken_ = nextToken;
+	setParameter("NextToken", nextToken);
+}
+
+std::string ListAnycastEipAddressesRequest::getInternetChargeType()const
+{
+	return internetChargeType_;
+}
+
+void ListAnycastEipAddressesRequest::setInternetChargeType(const std::string& internetChargeType)
+{
+	internetChargeType_ = internetChargeType;
+	setParameter("InternetChargeType", internetChargeType);
+}
+
+std::string ListAnycastEipAddressesRequest::getAnycastId()const
+{
+	return anycastId_;
+}
+
+void ListAnycastEipAddressesRequest::setAnycastId(const std::string& anycastId)
+{
+	anycastId_ = anycastId;
+	setParameter("AnycastId", anycastId);
+}
+
+std::string ListAnycastEipAddressesRequest::getName()const
+{
+	return name_;
+}
+
+void ListAnycastEipAddressesRequest::setName(const std::string& name)
+{
+	name_ = name;
+	setParameter("Name", name);
+}
+
+std::vector<std::string> ListAnycastEipAddressesRequest::getBindInstanceIds()const
+{
+	return bindInstanceIds_;
+}
+
+void ListAnycastEipAddressesRequest::setBindInstanceIds(const std::vector<std::string>& bindInstanceIds)
+{
+	bindInstanceIds_ = bindInstanceIds;
+	for(int dep1 = 0; dep1!= bindInstanceIds.size(); dep1++) {
+		setParameter("BindInstanceIds."+ std::to_string(dep1), bindInstanceIds.at(dep1));
+	}
+}
+
+int ListAnycastEipAddressesRequest::getMaxResults()const
+{
+	return maxResults_;
+}
+
+void ListAnycastEipAddressesRequest::setMaxResults(int maxResults)
+{
+	maxResults_ = maxResults;
+	setParameter("MaxResults", std::to_string(maxResults));
+}
+
+std::string ListAnycastEipAddressesRequest::getInstanceChargeType()const
+{
+	return instanceChargeType_;
+}
+
+void ListAnycastEipAddressesRequest::setInstanceChargeType(const std::string& instanceChargeType)
+{
+	instanceChargeType_ = instanceChargeType;
+	setParameter("InstanceChargeType", instanceChargeType);
+}
+
+std::string ListAnycastEipAddressesRequest::getStatus()const
+{
+	return status_;
+}
+
+void ListAnycastEipAddressesRequest::setStatus(const std::string& status)
+{
+	status_ = status;
+	setParameter("Status", status);
+}
+

+ 109 - 0
eipanycast/src/model/ListAnycastEipAddressesResult.cc

@@ -0,0 +1,109 @@
+/*
+ * 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/eipanycast/model/ListAnycastEipAddressesResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Eipanycast;
+using namespace AlibabaCloud::Eipanycast::Model;
+
+ListAnycastEipAddressesResult::ListAnycastEipAddressesResult() :
+	ServiceResult()
+{}
+
+ListAnycastEipAddressesResult::ListAnycastEipAddressesResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+ListAnycastEipAddressesResult::~ListAnycastEipAddressesResult()
+{}
+
+void ListAnycastEipAddressesResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allAnycastListNode = value["AnycastList"]["Anycast"];
+	for (auto valueAnycastListAnycast : allAnycastListNode)
+	{
+		Anycast anycastListObject;
+		if(!valueAnycastListAnycast["AnycastId"].isNull())
+			anycastListObject.anycastId = valueAnycastListAnycast["AnycastId"].asString();
+		if(!valueAnycastListAnycast["IpAddress"].isNull())
+			anycastListObject.ipAddress = valueAnycastListAnycast["IpAddress"].asString();
+		if(!valueAnycastListAnycast["Name"].isNull())
+			anycastListObject.name = valueAnycastListAnycast["Name"].asString();
+		if(!valueAnycastListAnycast["Description"].isNull())
+			anycastListObject.description = valueAnycastListAnycast["Description"].asString();
+		if(!valueAnycastListAnycast["Bandwidth"].isNull())
+			anycastListObject.bandwidth = std::stoi(valueAnycastListAnycast["Bandwidth"].asString());
+		if(!valueAnycastListAnycast["InstanceChargeType"].isNull())
+			anycastListObject.instanceChargeType = valueAnycastListAnycast["InstanceChargeType"].asString();
+		if(!valueAnycastListAnycast["InternetChargeType"].isNull())
+			anycastListObject.internetChargeType = valueAnycastListAnycast["InternetChargeType"].asString();
+		if(!valueAnycastListAnycast["CreateTime"].isNull())
+			anycastListObject.createTime = valueAnycastListAnycast["CreateTime"].asString();
+		if(!valueAnycastListAnycast["Status"].isNull())
+			anycastListObject.status = valueAnycastListAnycast["Status"].asString();
+		if(!valueAnycastListAnycast["ServiceLocation"].isNull())
+			anycastListObject.serviceLocation = valueAnycastListAnycast["ServiceLocation"].asString();
+		if(!valueAnycastListAnycast["AliUid"].isNull())
+			anycastListObject.aliUid = std::stol(valueAnycastListAnycast["AliUid"].asString());
+		if(!valueAnycastListAnycast["Bid"].isNull())
+			anycastListObject.bid = valueAnycastListAnycast["Bid"].asString();
+		if(!valueAnycastListAnycast["BusinessStatus"].isNull())
+			anycastListObject.businessStatus = valueAnycastListAnycast["BusinessStatus"].asString();
+		auto allAnycastEipBindInfoListNode = valueAnycastListAnycast["AnycastEipBindInfoList"]["AnycastEipBindInfo"];
+		for (auto valueAnycastListAnycastAnycastEipBindInfoListAnycastEipBindInfo : allAnycastEipBindInfoListNode)
+		{
+			Anycast::AnycastEipBindInfo anycastEipBindInfoListObject;
+			if(!valueAnycastListAnycastAnycastEipBindInfoListAnycastEipBindInfo["BindInstanceId"].isNull())
+				anycastEipBindInfoListObject.bindInstanceId = valueAnycastListAnycastAnycastEipBindInfoListAnycastEipBindInfo["BindInstanceId"].asString();
+			if(!valueAnycastListAnycastAnycastEipBindInfoListAnycastEipBindInfo["BindInstanceType"].isNull())
+				anycastEipBindInfoListObject.bindInstanceType = valueAnycastListAnycastAnycastEipBindInfoListAnycastEipBindInfo["BindInstanceType"].asString();
+			if(!valueAnycastListAnycastAnycastEipBindInfoListAnycastEipBindInfo["BindTime"].isNull())
+				anycastEipBindInfoListObject.bindTime = valueAnycastListAnycastAnycastEipBindInfoListAnycastEipBindInfo["BindTime"].asString();
+			if(!valueAnycastListAnycastAnycastEipBindInfoListAnycastEipBindInfo["BindInstanceRegionId"].isNull())
+				anycastEipBindInfoListObject.bindInstanceRegionId = valueAnycastListAnycastAnycastEipBindInfoListAnycastEipBindInfo["BindInstanceRegionId"].asString();
+			anycastListObject.anycastEipBindInfoList.push_back(anycastEipBindInfoListObject);
+		}
+		anycastList_.push_back(anycastListObject);
+	}
+	if(!value["TotalCount"].isNull())
+		totalCount_ = std::stoi(value["TotalCount"].asString());
+	if(!value["NextToken"].isNull())
+		nextToken_ = value["NextToken"].asString();
+
+}
+
+int ListAnycastEipAddressesResult::getTotalCount()const
+{
+	return totalCount_;
+}
+
+std::vector<ListAnycastEipAddressesResult::Anycast> ListAnycastEipAddressesResult::getAnycastList()const
+{
+	return anycastList_;
+}
+
+std::string ListAnycastEipAddressesResult::getNextToken()const
+{
+	return nextToken_;
+}
+

+ 73 - 0
eipanycast/src/model/ModifyAnycastEipAddressAttributeRequest.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/eipanycast/model/ModifyAnycastEipAddressAttributeRequest.h>
+
+using AlibabaCloud::Eipanycast::Model::ModifyAnycastEipAddressAttributeRequest;
+
+ModifyAnycastEipAddressAttributeRequest::ModifyAnycastEipAddressAttributeRequest() :
+	RpcServiceRequest("eipanycast", "2020-03-09", "ModifyAnycastEipAddressAttribute")
+{
+	setMethod(HttpRequest::Method::Post);
+}
+
+ModifyAnycastEipAddressAttributeRequest::~ModifyAnycastEipAddressAttributeRequest()
+{}
+
+std::string ModifyAnycastEipAddressAttributeRequest::getDescription()const
+{
+	return description_;
+}
+
+void ModifyAnycastEipAddressAttributeRequest::setDescription(const std::string& description)
+{
+	description_ = description;
+	setParameter("Description", description);
+}
+
+std::string ModifyAnycastEipAddressAttributeRequest::getRegionId()const
+{
+	return regionId_;
+}
+
+void ModifyAnycastEipAddressAttributeRequest::setRegionId(const std::string& regionId)
+{
+	regionId_ = regionId;
+	setParameter("RegionId", regionId);
+}
+
+std::string ModifyAnycastEipAddressAttributeRequest::getAnycastId()const
+{
+	return anycastId_;
+}
+
+void ModifyAnycastEipAddressAttributeRequest::setAnycastId(const std::string& anycastId)
+{
+	anycastId_ = anycastId;
+	setParameter("AnycastId", anycastId);
+}
+
+std::string ModifyAnycastEipAddressAttributeRequest::getName()const
+{
+	return name_;
+}
+
+void ModifyAnycastEipAddressAttributeRequest::setName(const std::string& name)
+{
+	name_ = name;
+	setParameter("Name", name);
+}
+

+ 44 - 0
eipanycast/src/model/ModifyAnycastEipAddressAttributeResult.cc

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

+ 62 - 0
eipanycast/src/model/ModifyAnycastEipAddressSpecRequest.cc

@@ -0,0 +1,62 @@
+/*
+ * 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/eipanycast/model/ModifyAnycastEipAddressSpecRequest.h>
+
+using AlibabaCloud::Eipanycast::Model::ModifyAnycastEipAddressSpecRequest;
+
+ModifyAnycastEipAddressSpecRequest::ModifyAnycastEipAddressSpecRequest() :
+	RpcServiceRequest("eipanycast", "2020-03-09", "ModifyAnycastEipAddressSpec")
+{
+	setMethod(HttpRequest::Method::Post);
+}
+
+ModifyAnycastEipAddressSpecRequest::~ModifyAnycastEipAddressSpecRequest()
+{}
+
+std::string ModifyAnycastEipAddressSpecRequest::getBandwidth()const
+{
+	return bandwidth_;
+}
+
+void ModifyAnycastEipAddressSpecRequest::setBandwidth(const std::string& bandwidth)
+{
+	bandwidth_ = bandwidth;
+	setParameter("Bandwidth", bandwidth);
+}
+
+std::string ModifyAnycastEipAddressSpecRequest::getRegionId()const
+{
+	return regionId_;
+}
+
+void ModifyAnycastEipAddressSpecRequest::setRegionId(const std::string& regionId)
+{
+	regionId_ = regionId;
+	setParameter("RegionId", regionId);
+}
+
+std::string ModifyAnycastEipAddressSpecRequest::getAnycastId()const
+{
+	return anycastId_;
+}
+
+void ModifyAnycastEipAddressSpecRequest::setAnycastId(const std::string& anycastId)
+{
+	anycastId_ = anycastId;
+	setParameter("AnycastId", anycastId);
+}
+

+ 44 - 0
eipanycast/src/model/ModifyAnycastEipAddressSpecResult.cc

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

+ 62 - 0
eipanycast/src/model/ReleaseAnycastEipAddressRequest.cc

@@ -0,0 +1,62 @@
+/*
+ * 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/eipanycast/model/ReleaseAnycastEipAddressRequest.h>
+
+using AlibabaCloud::Eipanycast::Model::ReleaseAnycastEipAddressRequest;
+
+ReleaseAnycastEipAddressRequest::ReleaseAnycastEipAddressRequest() :
+	RpcServiceRequest("eipanycast", "2020-03-09", "ReleaseAnycastEipAddress")
+{
+	setMethod(HttpRequest::Method::Post);
+}
+
+ReleaseAnycastEipAddressRequest::~ReleaseAnycastEipAddressRequest()
+{}
+
+std::string ReleaseAnycastEipAddressRequest::getClientToken()const
+{
+	return clientToken_;
+}
+
+void ReleaseAnycastEipAddressRequest::setClientToken(const std::string& clientToken)
+{
+	clientToken_ = clientToken;
+	setParameter("ClientToken", clientToken);
+}
+
+std::string ReleaseAnycastEipAddressRequest::getRegionId()const
+{
+	return regionId_;
+}
+
+void ReleaseAnycastEipAddressRequest::setRegionId(const std::string& regionId)
+{
+	regionId_ = regionId;
+	setParameter("RegionId", regionId);
+}
+
+std::string ReleaseAnycastEipAddressRequest::getAnycastId()const
+{
+	return anycastId_;
+}
+
+void ReleaseAnycastEipAddressRequest::setAnycastId(const std::string& anycastId)
+{
+	anycastId_ = anycastId;
+	setParameter("AnycastId", anycastId);
+}
+

+ 44 - 0
eipanycast/src/model/ReleaseAnycastEipAddressResult.cc

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

+ 106 - 0
eipanycast/src/model/UnassociateAnycastEipAddressRequest.cc

@@ -0,0 +1,106 @@
+/*
+ * 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/eipanycast/model/UnassociateAnycastEipAddressRequest.h>
+
+using AlibabaCloud::Eipanycast::Model::UnassociateAnycastEipAddressRequest;
+
+UnassociateAnycastEipAddressRequest::UnassociateAnycastEipAddressRequest() :
+	RpcServiceRequest("eipanycast", "2020-03-09", "UnassociateAnycastEipAddress")
+{
+	setMethod(HttpRequest::Method::Post);
+}
+
+UnassociateAnycastEipAddressRequest::~UnassociateAnycastEipAddressRequest()
+{}
+
+std::string UnassociateAnycastEipAddressRequest::getDryRun()const
+{
+	return dryRun_;
+}
+
+void UnassociateAnycastEipAddressRequest::setDryRun(const std::string& dryRun)
+{
+	dryRun_ = dryRun;
+	setParameter("DryRun", dryRun);
+}
+
+std::string UnassociateAnycastEipAddressRequest::getClientToken()const
+{
+	return clientToken_;
+}
+
+void UnassociateAnycastEipAddressRequest::setClientToken(const std::string& clientToken)
+{
+	clientToken_ = clientToken;
+	setParameter("ClientToken", clientToken);
+}
+
+std::string UnassociateAnycastEipAddressRequest::getBindInstanceType()const
+{
+	return bindInstanceType_;
+}
+
+void UnassociateAnycastEipAddressRequest::setBindInstanceType(const std::string& bindInstanceType)
+{
+	bindInstanceType_ = bindInstanceType;
+	setParameter("BindInstanceType", bindInstanceType);
+}
+
+std::string UnassociateAnycastEipAddressRequest::getBindInstanceRegionId()const
+{
+	return bindInstanceRegionId_;
+}
+
+void UnassociateAnycastEipAddressRequest::setBindInstanceRegionId(const std::string& bindInstanceRegionId)
+{
+	bindInstanceRegionId_ = bindInstanceRegionId;
+	setParameter("BindInstanceRegionId", bindInstanceRegionId);
+}
+
+std::string UnassociateAnycastEipAddressRequest::getRegionId()const
+{
+	return regionId_;
+}
+
+void UnassociateAnycastEipAddressRequest::setRegionId(const std::string& regionId)
+{
+	regionId_ = regionId;
+	setParameter("RegionId", regionId);
+}
+
+std::string UnassociateAnycastEipAddressRequest::getAnycastId()const
+{
+	return anycastId_;
+}
+
+void UnassociateAnycastEipAddressRequest::setAnycastId(const std::string& anycastId)
+{
+	anycastId_ = anycastId;
+	setParameter("AnycastId", anycastId);
+}
+
+std::string UnassociateAnycastEipAddressRequest::getBindInstanceId()const
+{
+	return bindInstanceId_;
+}
+
+void UnassociateAnycastEipAddressRequest::setBindInstanceId(const std::string& bindInstanceId)
+{
+	bindInstanceId_ = bindInstanceId;
+	setParameter("BindInstanceId", bindInstanceId);
+}
+

+ 44 - 0
eipanycast/src/model/UnassociateAnycastEipAddressResult.cc

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