Quellcode durchsuchen

LUBANCLOUD SDK Auto Released By benxiang.hhq,Version:1.30.0

Signed-off-by: yixiong.jxy <yixiong.jxy@alibaba-inc.com>
yixiong.jxy vor 7 Jahren
Ursprung
Commit
f87f6a1649
31 geänderte Dateien mit 2515 neuen und 2 gelöschten Zeilen
  1. 3 0
      CHANGELOG
  2. 2 1
      CMakeLists.txt
  3. 1 1
      VERSION
  4. 106 0
      lubancloud/CMakeLists.txt
  5. 94 0
      lubancloud/include/alibabacloud/lubancloud/LubancloudClient.h
  6. 32 0
      lubancloud/include/alibabacloud/lubancloud/LubancloudExport.h
  7. 72 0
      lubancloud/include/alibabacloud/lubancloud/model/BuyOriginPicturesRequest.h
  8. 56 0
      lubancloud/include/alibabacloud/lubancloud/model/BuyOriginPicturesResult.h
  9. 48 0
      lubancloud/include/alibabacloud/lubancloud/model/GetStylesRequest.h
  10. 66 0
      lubancloud/include/alibabacloud/lubancloud/model/GetStylesResult.h
  11. 72 0
      lubancloud/include/alibabacloud/lubancloud/model/QueryCutoutTaskResultRequest.h
  12. 71 0
      lubancloud/include/alibabacloud/lubancloud/model/QueryCutoutTaskResultResult.h
  13. 72 0
      lubancloud/include/alibabacloud/lubancloud/model/QueryGenerateTaskResultRequest.h
  14. 70 0
      lubancloud/include/alibabacloud/lubancloud/model/QueryGenerateTaskResultResult.h
  15. 72 0
      lubancloud/include/alibabacloud/lubancloud/model/SubmitCutoutTaskRequest.h
  16. 51 0
      lubancloud/include/alibabacloud/lubancloud/model/SubmitCutoutTaskResult.h
  17. 96 0
      lubancloud/include/alibabacloud/lubancloud/model/SubmitGenerateTaskRequest.h
  18. 51 0
      lubancloud/include/alibabacloud/lubancloud/model/SubmitGenerateTaskResult.h
  19. 269 0
      lubancloud/src/LubancloudClient.cc
  20. 127 0
      lubancloud/src/model/BuyOriginPicturesRequest.cc
  21. 60 0
      lubancloud/src/model/BuyOriginPicturesResult.cc
  22. 38 0
      lubancloud/src/model/GetStylesRequest.cc
  23. 78 0
      lubancloud/src/model/GetStylesResult.cc
  24. 126 0
      lubancloud/src/model/QueryCutoutTaskResultRequest.cc
  25. 105 0
      lubancloud/src/model/QueryCutoutTaskResultResult.cc
  26. 126 0
      lubancloud/src/model/QueryGenerateTaskResultRequest.cc
  27. 103 0
      lubancloud/src/model/QueryGenerateTaskResultResult.cc
  28. 127 0
      lubancloud/src/model/SubmitCutoutTaskRequest.cc
  29. 52 0
      lubancloud/src/model/SubmitCutoutTaskResult.cc
  30. 217 0
      lubancloud/src/model/SubmitGenerateTaskRequest.cc
  31. 52 0
      lubancloud/src/model/SubmitGenerateTaskResult.cc

+ 3 - 0
CHANGELOG

@@ -1,3 +1,6 @@
+2018-11-02 Version: 1.30.0
+1, first version
+
 2018-10-31 Version: 1.29.5
 1, Update SetWaitingRoomConfig.
 

+ 2 - 1
CMakeLists.txt

@@ -90,4 +90,5 @@ add_subdirectory(smartag)
 add_subdirectory(vod)
 add_subdirectory(ccs)
 add_subdirectory(saf)
-add_subdirectory(arms)
+add_subdirectory(arms)
+add_subdirectory(lubancloud)

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.29.5
+1.30.0

+ 106 - 0
lubancloud/CMakeLists.txt

@@ -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.
+#
+
+set(public_header_dir ${CMAKE_CURRENT_SOURCE_DIR}/../include)
+
+set(lubancloud_public_header 
+	include/alibabacloud/lubancloud/LubancloudClient.h
+	include/alibabacloud/lubancloud/LubancloudExport.h )
+
+set(lubancloud_public_header_model 
+	include/alibabacloud/lubancloud/model/QueryCutoutTaskResultRequest.h
+	include/alibabacloud/lubancloud/model/QueryCutoutTaskResultResult.h
+	include/alibabacloud/lubancloud/model/SubmitGenerateTaskRequest.h
+	include/alibabacloud/lubancloud/model/SubmitGenerateTaskResult.h
+	include/alibabacloud/lubancloud/model/BuyOriginPicturesRequest.h
+	include/alibabacloud/lubancloud/model/BuyOriginPicturesResult.h
+	include/alibabacloud/lubancloud/model/SubmitCutoutTaskRequest.h
+	include/alibabacloud/lubancloud/model/SubmitCutoutTaskResult.h
+	include/alibabacloud/lubancloud/model/QueryGenerateTaskResultRequest.h
+	include/alibabacloud/lubancloud/model/QueryGenerateTaskResultResult.h
+	include/alibabacloud/lubancloud/model/GetStylesRequest.h
+	include/alibabacloud/lubancloud/model/GetStylesResult.h )
+
+set(lubancloud_src 
+	src/LubancloudClient.cc
+	src/model/QueryCutoutTaskResultRequest.cc
+	src/model/QueryCutoutTaskResultResult.cc
+	src/model/SubmitGenerateTaskRequest.cc
+	src/model/SubmitGenerateTaskResult.cc
+	src/model/BuyOriginPicturesRequest.cc
+	src/model/BuyOriginPicturesResult.cc
+	src/model/SubmitCutoutTaskRequest.cc
+	src/model/SubmitCutoutTaskResult.cc
+	src/model/QueryGenerateTaskResultRequest.cc
+	src/model/QueryGenerateTaskResultResult.cc
+	src/model/GetStylesRequest.cc
+	src/model/GetStylesResult.cc )
+
+add_library(lubancloud ${LIB_TYPE}
+	${lubancloud_public_header}
+	${lubancloud_public_header_model}
+	${lubancloud_src})
+
+set_target_properties(lubancloud
+	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}lubancloud
+	)
+
+if(${LIB_TYPE} STREQUAL "SHARED")
+	set_target_properties(lubancloud
+		PROPERTIES
+		DEFINE_SYMBOL ALIBABACLOUD_LUBANCLOUD_LIBRARY)
+endif()
+
+target_include_directories(lubancloud
+	PRIVATE include
+		${CMAKE_SOURCE_DIR}/core/include
+	)
+target_link_libraries(lubancloud
+	core)
+
+if(CMAKE_HOST_WIN32)
+	ExternalProject_Get_Property(jsoncpp INSTALL_DIR)
+	set(jsoncpp_install_dir ${INSTALL_DIR})
+	add_dependencies(lubancloud
+		jsoncpp)
+	target_include_directories(lubancloud
+		PRIVATE	${jsoncpp_install_dir}/include)
+	target_link_libraries(lubancloud
+		${jsoncpp_install_dir}/lib/jsoncpp.lib)
+	set_target_properties(lubancloud
+    	PROPERTIES
+    		COMPILE_OPTIONS "/bigobj")
+else()
+	target_include_directories(lubancloud
+		PRIVATE /usr/include/jsoncpp)
+	target_link_libraries(lubancloud
+		jsoncpp)
+endif()
+
+install(FILES ${lubancloud_public_header}
+	DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/alibabacloud/lubancloud)
+install(FILES ${lubancloud_public_header_model}
+	DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/alibabacloud/lubancloud/model)
+install(TARGETS lubancloud
+	ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+	LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+	RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+	)

+ 94 - 0
lubancloud/include/alibabacloud/lubancloud/LubancloudClient.h

@@ -0,0 +1,94 @@
+/*
+ * 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_LUBANCLOUD_LUBANCLOUDCLIENT_H_
+#define ALIBABACLOUD_LUBANCLOUD_LUBANCLOUDCLIENT_H_
+
+#include <future>
+#include <alibabacloud/core/AsyncCallerContext.h>
+#include <alibabacloud/core/EndpointProvider.h>
+#include <alibabacloud/core/RpcServiceClient.h>
+#include "LubancloudExport.h"
+#include "model/QueryCutoutTaskResultRequest.h"
+#include "model/QueryCutoutTaskResultResult.h"
+#include "model/SubmitGenerateTaskRequest.h"
+#include "model/SubmitGenerateTaskResult.h"
+#include "model/BuyOriginPicturesRequest.h"
+#include "model/BuyOriginPicturesResult.h"
+#include "model/SubmitCutoutTaskRequest.h"
+#include "model/SubmitCutoutTaskResult.h"
+#include "model/QueryGenerateTaskResultRequest.h"
+#include "model/QueryGenerateTaskResultResult.h"
+#include "model/GetStylesRequest.h"
+#include "model/GetStylesResult.h"
+
+
+namespace AlibabaCloud
+{
+	namespace Lubancloud
+	{
+		class ALIBABACLOUD_LUBANCLOUD_EXPORT LubancloudClient : public RpcServiceClient
+		{
+		public:
+			typedef Outcome<Error, Model::QueryCutoutTaskResultResult> QueryCutoutTaskResultOutcome;
+			typedef std::future<QueryCutoutTaskResultOutcome> QueryCutoutTaskResultOutcomeCallable;
+			typedef std::function<void(const LubancloudClient*, const Model::QueryCutoutTaskResultRequest&, const QueryCutoutTaskResultOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> QueryCutoutTaskResultAsyncHandler;
+			typedef Outcome<Error, Model::SubmitGenerateTaskResult> SubmitGenerateTaskOutcome;
+			typedef std::future<SubmitGenerateTaskOutcome> SubmitGenerateTaskOutcomeCallable;
+			typedef std::function<void(const LubancloudClient*, const Model::SubmitGenerateTaskRequest&, const SubmitGenerateTaskOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SubmitGenerateTaskAsyncHandler;
+			typedef Outcome<Error, Model::BuyOriginPicturesResult> BuyOriginPicturesOutcome;
+			typedef std::future<BuyOriginPicturesOutcome> BuyOriginPicturesOutcomeCallable;
+			typedef std::function<void(const LubancloudClient*, const Model::BuyOriginPicturesRequest&, const BuyOriginPicturesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> BuyOriginPicturesAsyncHandler;
+			typedef Outcome<Error, Model::SubmitCutoutTaskResult> SubmitCutoutTaskOutcome;
+			typedef std::future<SubmitCutoutTaskOutcome> SubmitCutoutTaskOutcomeCallable;
+			typedef std::function<void(const LubancloudClient*, const Model::SubmitCutoutTaskRequest&, const SubmitCutoutTaskOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> SubmitCutoutTaskAsyncHandler;
+			typedef Outcome<Error, Model::QueryGenerateTaskResultResult> QueryGenerateTaskResultOutcome;
+			typedef std::future<QueryGenerateTaskResultOutcome> QueryGenerateTaskResultOutcomeCallable;
+			typedef std::function<void(const LubancloudClient*, const Model::QueryGenerateTaskResultRequest&, const QueryGenerateTaskResultOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> QueryGenerateTaskResultAsyncHandler;
+			typedef Outcome<Error, Model::GetStylesResult> GetStylesOutcome;
+			typedef std::future<GetStylesOutcome> GetStylesOutcomeCallable;
+			typedef std::function<void(const LubancloudClient*, const Model::GetStylesRequest&, const GetStylesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetStylesAsyncHandler;
+
+			LubancloudClient(const Credentials &credentials, const ClientConfiguration &configuration);
+			LubancloudClient(const std::shared_ptr<CredentialsProvider> &credentialsProvider, const ClientConfiguration &configuration);
+			LubancloudClient(const std::string &accessKeyId, const std::string &accessKeySecret, const ClientConfiguration &configuration);
+			~LubancloudClient();
+			QueryCutoutTaskResultOutcome queryCutoutTaskResult(const Model::QueryCutoutTaskResultRequest &request)const;
+			void queryCutoutTaskResultAsync(const Model::QueryCutoutTaskResultRequest& request, const QueryCutoutTaskResultAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			QueryCutoutTaskResultOutcomeCallable queryCutoutTaskResultCallable(const Model::QueryCutoutTaskResultRequest& request) const;
+			SubmitGenerateTaskOutcome submitGenerateTask(const Model::SubmitGenerateTaskRequest &request)const;
+			void submitGenerateTaskAsync(const Model::SubmitGenerateTaskRequest& request, const SubmitGenerateTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			SubmitGenerateTaskOutcomeCallable submitGenerateTaskCallable(const Model::SubmitGenerateTaskRequest& request) const;
+			BuyOriginPicturesOutcome buyOriginPictures(const Model::BuyOriginPicturesRequest &request)const;
+			void buyOriginPicturesAsync(const Model::BuyOriginPicturesRequest& request, const BuyOriginPicturesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			BuyOriginPicturesOutcomeCallable buyOriginPicturesCallable(const Model::BuyOriginPicturesRequest& request) const;
+			SubmitCutoutTaskOutcome submitCutoutTask(const Model::SubmitCutoutTaskRequest &request)const;
+			void submitCutoutTaskAsync(const Model::SubmitCutoutTaskRequest& request, const SubmitCutoutTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			SubmitCutoutTaskOutcomeCallable submitCutoutTaskCallable(const Model::SubmitCutoutTaskRequest& request) const;
+			QueryGenerateTaskResultOutcome queryGenerateTaskResult(const Model::QueryGenerateTaskResultRequest &request)const;
+			void queryGenerateTaskResultAsync(const Model::QueryGenerateTaskResultRequest& request, const QueryGenerateTaskResultAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			QueryGenerateTaskResultOutcomeCallable queryGenerateTaskResultCallable(const Model::QueryGenerateTaskResultRequest& request) const;
+			GetStylesOutcome getStyles(const Model::GetStylesRequest &request)const;
+			void getStylesAsync(const Model::GetStylesRequest& request, const GetStylesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetStylesOutcomeCallable getStylesCallable(const Model::GetStylesRequest& request) const;
+	
+		private:
+			std::shared_ptr<EndpointProvider> endpointProvider_;
+		};
+	}
+}
+
+#endif // !ALIBABACLOUD_LUBANCLOUD_LUBANCLOUDCLIENT_H_

+ 32 - 0
lubancloud/include/alibabacloud/lubancloud/LubancloudExport.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_LUBANCLOUD_LUBANCLOUDEXPORT_H_
+#define ALIBABACLOUD_LUBANCLOUD_LUBANCLOUDEXPORT_H_
+
+#include <alibabacloud/core/Global.h>
+
+#if defined(ALIBABACLOUD_SHARED)
+#	if defined(ALIBABACLOUD_LUBANCLOUD_LIBRARY)
+#		define ALIBABACLOUD_LUBANCLOUD_EXPORT ALIBABACLOUD_DECL_EXPORT
+#	else
+#		define ALIBABACLOUD_LUBANCLOUD_EXPORT ALIBABACLOUD_DECL_IMPORT
+#	endif
+#else
+#	define ALIBABACLOUD_LUBANCLOUD_EXPORT
+#endif
+
+#endif // !ALIBABACLOUD_LUBANCLOUD_LUBANCLOUDEXPORT_H_

+ 72 - 0
lubancloud/include/alibabacloud/lubancloud/model/BuyOriginPicturesRequest.h

@@ -0,0 +1,72 @@
+/*
+ * 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_LUBANCLOUD_MODEL_BUYORIGINPICTURESREQUEST_H_
+#define ALIBABACLOUD_LUBANCLOUD_MODEL_BUYORIGINPICTURESREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/lubancloud/LubancloudExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Lubancloud
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_LUBANCLOUD_EXPORT BuyOriginPicturesRequest : public RpcServiceRequest
+			{
+
+			public:
+				BuyOriginPicturesRequest();
+				~BuyOriginPicturesRequest();
+
+				bool getSecurity_transport()const;
+				void setSecurity_transport(bool security_transport);
+				std::string getApp_ip()const;
+				void setApp_ip(const std::string& app_ip);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				long getCallerParentId()const;
+				void setCallerParentId(long callerParentId);
+				std::string getRequestId()const;
+				void setRequestId(const std::string& requestId);
+				std::string getCallerType()const;
+				void setCallerType(const std::string& callerType);
+				bool getAk_mfa_present()const;
+				void setAk_mfa_present(bool ak_mfa_present);
+				long getCallerUid()const;
+				void setCallerUid(long callerUid);
+				std::vector<long> getPictureId()const;
+				void setPictureId(const std::vector<long>& pictureId);
+
+            private:
+				bool security_transport_;
+				std::string app_ip_;
+				std::string regionId_;
+				long callerParentId_;
+				std::string requestId_;
+				std::string callerType_;
+				bool ak_mfa_present_;
+				long callerUid_;
+				std::vector<long> pictureId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_LUBANCLOUD_MODEL_BUYORIGINPICTURESREQUEST_H_

+ 56 - 0
lubancloud/include/alibabacloud/lubancloud/model/BuyOriginPicturesResult.h

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

+ 48 - 0
lubancloud/include/alibabacloud/lubancloud/model/GetStylesRequest.h

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

+ 66 - 0
lubancloud/include/alibabacloud/lubancloud/model/GetStylesResult.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_LUBANCLOUD_MODEL_GETSTYLESRESULT_H_
+#define ALIBABACLOUD_LUBANCLOUD_MODEL_GETSTYLESRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/lubancloud/LubancloudExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Lubancloud
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_LUBANCLOUD_EXPORT GetStylesResult : public ServiceResult
+			{
+			public:
+				struct Style
+				{
+					struct SubStyle
+					{
+						long parentId;
+						std::string previewUrl;
+						long id;
+						std::string name;
+					};
+					long parentId;
+					std::string previewUrl;
+					std::vector<Style::SubStyle> subStyles;
+					long id;
+					std::string name;
+				};
+
+
+				GetStylesResult();
+				explicit GetStylesResult(const std::string &payload);
+				~GetStylesResult();
+				std::vector<Style> getStyles()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<Style> styles_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_LUBANCLOUD_MODEL_GETSTYLESRESULT_H_

+ 72 - 0
lubancloud/include/alibabacloud/lubancloud/model/QueryCutoutTaskResultRequest.h

@@ -0,0 +1,72 @@
+/*
+ * 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_LUBANCLOUD_MODEL_QUERYCUTOUTTASKRESULTREQUEST_H_
+#define ALIBABACLOUD_LUBANCLOUD_MODEL_QUERYCUTOUTTASKRESULTREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/lubancloud/LubancloudExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Lubancloud
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_LUBANCLOUD_EXPORT QueryCutoutTaskResultRequest : public RpcServiceRequest
+			{
+
+			public:
+				QueryCutoutTaskResultRequest();
+				~QueryCutoutTaskResultRequest();
+
+				bool getSecurity_transport()const;
+				void setSecurity_transport(bool security_transport);
+				std::string getApp_ip()const;
+				void setApp_ip(const std::string& app_ip);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getRequestId()const;
+				void setRequestId(const std::string& requestId);
+				long getCallerParentId()const;
+				void setCallerParentId(long callerParentId);
+				std::string getCallerType()const;
+				void setCallerType(const std::string& callerType);
+				bool getAk_mfa_present()const;
+				void setAk_mfa_present(bool ak_mfa_present);
+				long getCallerUid()const;
+				void setCallerUid(long callerUid);
+				long getTaskId()const;
+				void setTaskId(long taskId);
+
+            private:
+				bool security_transport_;
+				std::string app_ip_;
+				std::string regionId_;
+				std::string requestId_;
+				long callerParentId_;
+				std::string callerType_;
+				bool ak_mfa_present_;
+				long callerUid_;
+				long taskId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_LUBANCLOUD_MODEL_QUERYCUTOUTTASKRESULTREQUEST_H_

+ 71 - 0
lubancloud/include/alibabacloud/lubancloud/model/QueryCutoutTaskResultResult.h

@@ -0,0 +1,71 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_LUBANCLOUD_MODEL_QUERYCUTOUTTASKRESULTRESULT_H_
+#define ALIBABACLOUD_LUBANCLOUD_MODEL_QUERYCUTOUTTASKRESULTRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/lubancloud/LubancloudExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Lubancloud
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_LUBANCLOUD_EXPORT QueryCutoutTaskResultResult : public ServiceResult
+			{
+			public:
+				struct Picture
+				{
+					int status;
+					std::string cutoutUrl;
+					std::string originUrl;
+					int height;
+					std::string errorCode;
+					std::string errorMessage;
+					int width;
+				};
+
+
+				QueryCutoutTaskResultResult();
+				explicit QueryCutoutTaskResultResult(const std::string &payload);
+				~QueryCutoutTaskResultResult();
+				std::vector<Picture> getPictures()const;
+				int getStatus()const;
+				int getSuccessSize()const;
+				int getFailSize()const;
+				int getTotalSize()const;
+				int getWaitSize()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<Picture> pictures_;
+				int status_;
+				int successSize_;
+				int failSize_;
+				int totalSize_;
+				int waitSize_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_LUBANCLOUD_MODEL_QUERYCUTOUTTASKRESULTRESULT_H_

+ 72 - 0
lubancloud/include/alibabacloud/lubancloud/model/QueryGenerateTaskResultRequest.h

@@ -0,0 +1,72 @@
+/*
+ * 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_LUBANCLOUD_MODEL_QUERYGENERATETASKRESULTREQUEST_H_
+#define ALIBABACLOUD_LUBANCLOUD_MODEL_QUERYGENERATETASKRESULTREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/lubancloud/LubancloudExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Lubancloud
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_LUBANCLOUD_EXPORT QueryGenerateTaskResultRequest : public RpcServiceRequest
+			{
+
+			public:
+				QueryGenerateTaskResultRequest();
+				~QueryGenerateTaskResultRequest();
+
+				bool getSecurity_transport()const;
+				void setSecurity_transport(bool security_transport);
+				std::string getApp_ip()const;
+				void setApp_ip(const std::string& app_ip);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getRequestId()const;
+				void setRequestId(const std::string& requestId);
+				long getCallerParentId()const;
+				void setCallerParentId(long callerParentId);
+				std::string getCallerType()const;
+				void setCallerType(const std::string& callerType);
+				bool getAk_mfa_present()const;
+				void setAk_mfa_present(bool ak_mfa_present);
+				long getCallerUid()const;
+				void setCallerUid(long callerUid);
+				long getTaskId()const;
+				void setTaskId(long taskId);
+
+            private:
+				bool security_transport_;
+				std::string app_ip_;
+				std::string regionId_;
+				std::string requestId_;
+				long callerParentId_;
+				std::string callerType_;
+				bool ak_mfa_present_;
+				long callerUid_;
+				long taskId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_LUBANCLOUD_MODEL_QUERYGENERATETASKRESULTREQUEST_H_

+ 70 - 0
lubancloud/include/alibabacloud/lubancloud/model/QueryGenerateTaskResultResult.h

@@ -0,0 +1,70 @@
+/*
+ * 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_LUBANCLOUD_MODEL_QUERYGENERATETASKRESULTRESULT_H_
+#define ALIBABACLOUD_LUBANCLOUD_MODEL_QUERYGENERATETASKRESULTRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/lubancloud/LubancloudExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Lubancloud
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_LUBANCLOUD_EXPORT QueryGenerateTaskResultResult : public ServiceResult
+			{
+			public:
+				struct Picture
+				{
+					int status;
+					std::string previewUrl;
+					int height;
+					long id;
+					int width;
+					std::string name;
+				};
+
+
+				QueryGenerateTaskResultResult();
+				explicit QueryGenerateTaskResultResult(const std::string &payload);
+				~QueryGenerateTaskResultResult();
+				std::vector<Picture> getPictures()const;
+				int getStatus()const;
+				int getSuccessSize()const;
+				int getFailSize()const;
+				int getTotalSize()const;
+				int getWaitSize()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<Picture> pictures_;
+				int status_;
+				int successSize_;
+				int failSize_;
+				int totalSize_;
+				int waitSize_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_LUBANCLOUD_MODEL_QUERYGENERATETASKRESULTRESULT_H_

+ 72 - 0
lubancloud/include/alibabacloud/lubancloud/model/SubmitCutoutTaskRequest.h

@@ -0,0 +1,72 @@
+/*
+ * 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_LUBANCLOUD_MODEL_SUBMITCUTOUTTASKREQUEST_H_
+#define ALIBABACLOUD_LUBANCLOUD_MODEL_SUBMITCUTOUTTASKREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/lubancloud/LubancloudExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Lubancloud
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_LUBANCLOUD_EXPORT SubmitCutoutTaskRequest : public RpcServiceRequest
+			{
+
+			public:
+				SubmitCutoutTaskRequest();
+				~SubmitCutoutTaskRequest();
+
+				bool getSecurity_transport()const;
+				void setSecurity_transport(bool security_transport);
+				std::string getApp_ip()const;
+				void setApp_ip(const std::string& app_ip);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				long getCallerParentId()const;
+				void setCallerParentId(long callerParentId);
+				std::string getRequestId()const;
+				void setRequestId(const std::string& requestId);
+				std::string getCallerType()const;
+				void setCallerType(const std::string& callerType);
+				bool getAk_mfa_present()const;
+				void setAk_mfa_present(bool ak_mfa_present);
+				long getCallerUid()const;
+				void setCallerUid(long callerUid);
+				std::vector<std::string> getPictureUrl()const;
+				void setPictureUrl(const std::vector<std::string>& pictureUrl);
+
+            private:
+				bool security_transport_;
+				std::string app_ip_;
+				std::string regionId_;
+				long callerParentId_;
+				std::string requestId_;
+				std::string callerType_;
+				bool ak_mfa_present_;
+				long callerUid_;
+				std::vector<std::string> pictureUrl_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_LUBANCLOUD_MODEL_SUBMITCUTOUTTASKREQUEST_H_

+ 51 - 0
lubancloud/include/alibabacloud/lubancloud/model/SubmitCutoutTaskResult.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_LUBANCLOUD_MODEL_SUBMITCUTOUTTASKRESULT_H_
+#define ALIBABACLOUD_LUBANCLOUD_MODEL_SUBMITCUTOUTTASKRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/lubancloud/LubancloudExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Lubancloud
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_LUBANCLOUD_EXPORT SubmitCutoutTaskResult : public ServiceResult
+			{
+			public:
+
+
+				SubmitCutoutTaskResult();
+				explicit SubmitCutoutTaskResult(const std::string &payload);
+				~SubmitCutoutTaskResult();
+				long getTaskId()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				long taskId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_LUBANCLOUD_MODEL_SUBMITCUTOUTTASKRESULT_H_

+ 96 - 0
lubancloud/include/alibabacloud/lubancloud/model/SubmitGenerateTaskRequest.h

@@ -0,0 +1,96 @@
+/*
+ * Copyright 2009-2017 Alibaba Cloud All rights reserved.
+ * 
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+#ifndef ALIBABACLOUD_LUBANCLOUD_MODEL_SUBMITGENERATETASKREQUEST_H_
+#define ALIBABACLOUD_LUBANCLOUD_MODEL_SUBMITGENERATETASKREQUEST_H_
+
+#include <string>
+#include <vector>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <alibabacloud/lubancloud/LubancloudExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Lubancloud
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_LUBANCLOUD_EXPORT SubmitGenerateTaskRequest : public RpcServiceRequest
+			{
+
+			public:
+				SubmitGenerateTaskRequest();
+				~SubmitGenerateTaskRequest();
+
+				std::string getApp_ip()const;
+				void setApp_ip(const std::string& app_ip);
+				int getImageCount()const;
+				void setImageCount(int imageCount);
+				long getCallerParentId()const;
+				void setCallerParentId(long callerParentId);
+				std::string getActionPoint()const;
+				void setActionPoint(const std::string& actionPoint);
+				std::string getLogoImagePath()const;
+				void setLogoImagePath(const std::string& logoImagePath);
+				int getType()const;
+				void setType(int type);
+				std::string getCallerType()const;
+				void setCallerType(const std::string& callerType);
+				bool getAk_mfa_present()const;
+				void setAk_mfa_present(bool ak_mfa_present);
+				bool getSecurity_transport()const;
+				void setSecurity_transport(bool security_transport);
+				std::vector<std::string> getMajorImagePath()const;
+				void setMajorImagePath(const std::vector<std::string>& majorImagePath);
+				std::string getRegionId()const;
+				void setRegionId(const std::string& regionId);
+				std::string getRequestId()const;
+				void setRequestId(const std::string& requestId);
+				int getWidth()const;
+				void setWidth(int width);
+				std::vector<std::string> getCopyWrite()const;
+				void setCopyWrite(const std::vector<std::string>& copyWrite);
+				std::vector<long> getPropertyId()const;
+				void setPropertyId(const std::vector<long>& propertyId);
+				long getCallerUid()const;
+				void setCallerUid(long callerUid);
+				int getHeight()const;
+				void setHeight(int height);
+
+            private:
+				std::string app_ip_;
+				int imageCount_;
+				long callerParentId_;
+				std::string actionPoint_;
+				std::string logoImagePath_;
+				int type_;
+				std::string callerType_;
+				bool ak_mfa_present_;
+				bool security_transport_;
+				std::vector<std::string> majorImagePath_;
+				std::string regionId_;
+				std::string requestId_;
+				int width_;
+				std::vector<std::string> copyWrite_;
+				std::vector<long> propertyId_;
+				long callerUid_;
+				int height_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_LUBANCLOUD_MODEL_SUBMITGENERATETASKREQUEST_H_

+ 51 - 0
lubancloud/include/alibabacloud/lubancloud/model/SubmitGenerateTaskResult.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_LUBANCLOUD_MODEL_SUBMITGENERATETASKRESULT_H_
+#define ALIBABACLOUD_LUBANCLOUD_MODEL_SUBMITGENERATETASKRESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/lubancloud/LubancloudExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Lubancloud
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_LUBANCLOUD_EXPORT SubmitGenerateTaskResult : public ServiceResult
+			{
+			public:
+
+
+				SubmitGenerateTaskResult();
+				explicit SubmitGenerateTaskResult(const std::string &payload);
+				~SubmitGenerateTaskResult();
+				long getTaskId()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				long taskId_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_LUBANCLOUD_MODEL_SUBMITGENERATETASKRESULT_H_

+ 269 - 0
lubancloud/src/LubancloudClient.cc

@@ -0,0 +1,269 @@
+/*
+ * 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/lubancloud/LubancloudClient.h>
+#include <alibabacloud/core/SimpleCredentialsProvider.h>
+
+using namespace AlibabaCloud;
+using namespace AlibabaCloud::Location;
+using namespace AlibabaCloud::Lubancloud;
+using namespace AlibabaCloud::Lubancloud::Model;
+
+namespace
+{
+	const std::string SERVICE_NAME = "lubancloud";
+}
+
+LubancloudClient::LubancloudClient(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, "luban");
+}
+
+LubancloudClient::LubancloudClient(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, "luban");
+}
+
+LubancloudClient::LubancloudClient(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, "luban");
+}
+
+LubancloudClient::~LubancloudClient()
+{}
+
+LubancloudClient::QueryCutoutTaskResultOutcome LubancloudClient::queryCutoutTaskResult(const QueryCutoutTaskResultRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return QueryCutoutTaskResultOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return QueryCutoutTaskResultOutcome(QueryCutoutTaskResultResult(outcome.result()));
+	else
+		return QueryCutoutTaskResultOutcome(outcome.error());
+}
+
+void LubancloudClient::queryCutoutTaskResultAsync(const QueryCutoutTaskResultRequest& request, const QueryCutoutTaskResultAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, queryCutoutTaskResult(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+LubancloudClient::QueryCutoutTaskResultOutcomeCallable LubancloudClient::queryCutoutTaskResultCallable(const QueryCutoutTaskResultRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<QueryCutoutTaskResultOutcome()>>(
+			[this, request]()
+			{
+			return this->queryCutoutTaskResult(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+LubancloudClient::SubmitGenerateTaskOutcome LubancloudClient::submitGenerateTask(const SubmitGenerateTaskRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return SubmitGenerateTaskOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return SubmitGenerateTaskOutcome(SubmitGenerateTaskResult(outcome.result()));
+	else
+		return SubmitGenerateTaskOutcome(outcome.error());
+}
+
+void LubancloudClient::submitGenerateTaskAsync(const SubmitGenerateTaskRequest& request, const SubmitGenerateTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, submitGenerateTask(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+LubancloudClient::SubmitGenerateTaskOutcomeCallable LubancloudClient::submitGenerateTaskCallable(const SubmitGenerateTaskRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<SubmitGenerateTaskOutcome()>>(
+			[this, request]()
+			{
+			return this->submitGenerateTask(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+LubancloudClient::BuyOriginPicturesOutcome LubancloudClient::buyOriginPictures(const BuyOriginPicturesRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return BuyOriginPicturesOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return BuyOriginPicturesOutcome(BuyOriginPicturesResult(outcome.result()));
+	else
+		return BuyOriginPicturesOutcome(outcome.error());
+}
+
+void LubancloudClient::buyOriginPicturesAsync(const BuyOriginPicturesRequest& request, const BuyOriginPicturesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, buyOriginPictures(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+LubancloudClient::BuyOriginPicturesOutcomeCallable LubancloudClient::buyOriginPicturesCallable(const BuyOriginPicturesRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<BuyOriginPicturesOutcome()>>(
+			[this, request]()
+			{
+			return this->buyOriginPictures(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+LubancloudClient::SubmitCutoutTaskOutcome LubancloudClient::submitCutoutTask(const SubmitCutoutTaskRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return SubmitCutoutTaskOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return SubmitCutoutTaskOutcome(SubmitCutoutTaskResult(outcome.result()));
+	else
+		return SubmitCutoutTaskOutcome(outcome.error());
+}
+
+void LubancloudClient::submitCutoutTaskAsync(const SubmitCutoutTaskRequest& request, const SubmitCutoutTaskAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, submitCutoutTask(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+LubancloudClient::SubmitCutoutTaskOutcomeCallable LubancloudClient::submitCutoutTaskCallable(const SubmitCutoutTaskRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<SubmitCutoutTaskOutcome()>>(
+			[this, request]()
+			{
+			return this->submitCutoutTask(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+LubancloudClient::QueryGenerateTaskResultOutcome LubancloudClient::queryGenerateTaskResult(const QueryGenerateTaskResultRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return QueryGenerateTaskResultOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return QueryGenerateTaskResultOutcome(QueryGenerateTaskResultResult(outcome.result()));
+	else
+		return QueryGenerateTaskResultOutcome(outcome.error());
+}
+
+void LubancloudClient::queryGenerateTaskResultAsync(const QueryGenerateTaskResultRequest& request, const QueryGenerateTaskResultAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, queryGenerateTaskResult(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+LubancloudClient::QueryGenerateTaskResultOutcomeCallable LubancloudClient::queryGenerateTaskResultCallable(const QueryGenerateTaskResultRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<QueryGenerateTaskResultOutcome()>>(
+			[this, request]()
+			{
+			return this->queryGenerateTaskResult(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+LubancloudClient::GetStylesOutcome LubancloudClient::getStyles(const GetStylesRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return GetStylesOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return GetStylesOutcome(GetStylesResult(outcome.result()));
+	else
+		return GetStylesOutcome(outcome.error());
+}
+
+void LubancloudClient::getStylesAsync(const GetStylesRequest& request, const GetStylesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, getStyles(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+LubancloudClient::GetStylesOutcomeCallable LubancloudClient::getStylesCallable(const GetStylesRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<GetStylesOutcome()>>(
+			[this, request]()
+			{
+			return this->getStyles(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+

+ 127 - 0
lubancloud/src/model/BuyOriginPicturesRequest.cc

@@ -0,0 +1,127 @@
+/*
+ * 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/lubancloud/model/BuyOriginPicturesRequest.h>
+
+using AlibabaCloud::Lubancloud::Model::BuyOriginPicturesRequest;
+
+BuyOriginPicturesRequest::BuyOriginPicturesRequest() :
+	RpcServiceRequest("lubancloud", "2018-05-09", "BuyOriginPictures")
+{}
+
+BuyOriginPicturesRequest::~BuyOriginPicturesRequest()
+{}
+
+bool BuyOriginPicturesRequest::getSecurity_transport()const
+{
+	return security_transport_;
+}
+
+void BuyOriginPicturesRequest::setSecurity_transport(bool security_transport)
+{
+	security_transport_ = security_transport;
+	setParameter("Security_transport", std::to_string(security_transport));
+}
+
+std::string BuyOriginPicturesRequest::getApp_ip()const
+{
+	return app_ip_;
+}
+
+void BuyOriginPicturesRequest::setApp_ip(const std::string& app_ip)
+{
+	app_ip_ = app_ip;
+	setParameter("App_ip", app_ip);
+}
+
+std::string BuyOriginPicturesRequest::getRegionId()const
+{
+	return regionId_;
+}
+
+void BuyOriginPicturesRequest::setRegionId(const std::string& regionId)
+{
+	regionId_ = regionId;
+	setParameter("RegionId", regionId);
+}
+
+long BuyOriginPicturesRequest::getCallerParentId()const
+{
+	return callerParentId_;
+}
+
+void BuyOriginPicturesRequest::setCallerParentId(long callerParentId)
+{
+	callerParentId_ = callerParentId;
+	setParameter("CallerParentId", std::to_string(callerParentId));
+}
+
+std::string BuyOriginPicturesRequest::getRequestId()const
+{
+	return requestId_;
+}
+
+void BuyOriginPicturesRequest::setRequestId(const std::string& requestId)
+{
+	requestId_ = requestId;
+	setParameter("RequestId", requestId);
+}
+
+std::string BuyOriginPicturesRequest::getCallerType()const
+{
+	return callerType_;
+}
+
+void BuyOriginPicturesRequest::setCallerType(const std::string& callerType)
+{
+	callerType_ = callerType;
+	setParameter("CallerType", callerType);
+}
+
+bool BuyOriginPicturesRequest::getAk_mfa_present()const
+{
+	return ak_mfa_present_;
+}
+
+void BuyOriginPicturesRequest::setAk_mfa_present(bool ak_mfa_present)
+{
+	ak_mfa_present_ = ak_mfa_present;
+	setParameter("Ak_mfa_present", std::to_string(ak_mfa_present));
+}
+
+long BuyOriginPicturesRequest::getCallerUid()const
+{
+	return callerUid_;
+}
+
+void BuyOriginPicturesRequest::setCallerUid(long callerUid)
+{
+	callerUid_ = callerUid;
+	setParameter("CallerUid", std::to_string(callerUid));
+}
+
+std::vector<long> BuyOriginPicturesRequest::getPictureId()const
+{
+	return pictureId_;
+}
+
+void BuyOriginPicturesRequest::setPictureId(const std::vector<long>& pictureId)
+{
+	pictureId_ = pictureId;
+	for(int i = 0; i!= pictureId.size(); i++)
+		setParameter("PictureId."+ std::to_string(i), std::to_string(pictureId.at(i)));
+}
+

+ 60 - 0
lubancloud/src/model/BuyOriginPicturesResult.cc

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

+ 38 - 0
lubancloud/src/model/GetStylesRequest.cc

@@ -0,0 +1,38 @@
+/*
+ * 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/lubancloud/model/GetStylesRequest.h>
+
+using AlibabaCloud::Lubancloud::Model::GetStylesRequest;
+
+GetStylesRequest::GetStylesRequest() :
+	RpcServiceRequest("lubancloud", "2018-05-09", "GetStyles")
+{}
+
+GetStylesRequest::~GetStylesRequest()
+{}
+
+std::string GetStylesRequest::getRegionId()const
+{
+	return regionId_;
+}
+
+void GetStylesRequest::setRegionId(const std::string& regionId)
+{
+	regionId_ = regionId;
+	setParameter("RegionId", regionId);
+}
+

+ 78 - 0
lubancloud/src/model/GetStylesResult.cc

@@ -0,0 +1,78 @@
+/*
+ * 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/lubancloud/model/GetStylesResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Lubancloud;
+using namespace AlibabaCloud::Lubancloud::Model;
+
+GetStylesResult::GetStylesResult() :
+	ServiceResult()
+{}
+
+GetStylesResult::GetStylesResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+GetStylesResult::~GetStylesResult()
+{}
+
+void GetStylesResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	auto allStyles = value["Styles"]["Style"];
+	for (auto value : allStyles)
+	{
+		Style stylesObject;
+		if(!value["Id"].isNull())
+			stylesObject.id = std::stol(value["Id"].asString());
+		if(!value["Name"].isNull())
+			stylesObject.name = value["Name"].asString();
+		if(!value["ParentId"].isNull())
+			stylesObject.parentId = std::stol(value["ParentId"].asString());
+		if(!value["PreviewUrl"].isNull())
+			stylesObject.previewUrl = value["PreviewUrl"].asString();
+		auto allSubStyles = value["SubStyles"]["SubStyle"];
+		for (auto value : allSubStyles)
+		{
+			Style::SubStyle subStylesObject;
+			if(!value["Id"].isNull())
+				subStylesObject.id = std::stol(value["Id"].asString());
+			if(!value["Name"].isNull())
+				subStylesObject.name = value["Name"].asString();
+			if(!value["ParentId"].isNull())
+				subStylesObject.parentId = std::stol(value["ParentId"].asString());
+			if(!value["PreviewUrl"].isNull())
+				subStylesObject.previewUrl = value["PreviewUrl"].asString();
+			stylesObject.subStyles.push_back(subStylesObject);
+		}
+		styles_.push_back(stylesObject);
+	}
+
+}
+
+std::vector<GetStylesResult::Style> GetStylesResult::getStyles()const
+{
+	return styles_;
+}
+

+ 126 - 0
lubancloud/src/model/QueryCutoutTaskResultRequest.cc

@@ -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.
+ */
+
+#include <alibabacloud/lubancloud/model/QueryCutoutTaskResultRequest.h>
+
+using AlibabaCloud::Lubancloud::Model::QueryCutoutTaskResultRequest;
+
+QueryCutoutTaskResultRequest::QueryCutoutTaskResultRequest() :
+	RpcServiceRequest("lubancloud", "2018-05-09", "QueryCutoutTaskResult")
+{}
+
+QueryCutoutTaskResultRequest::~QueryCutoutTaskResultRequest()
+{}
+
+bool QueryCutoutTaskResultRequest::getSecurity_transport()const
+{
+	return security_transport_;
+}
+
+void QueryCutoutTaskResultRequest::setSecurity_transport(bool security_transport)
+{
+	security_transport_ = security_transport;
+	setParameter("Security_transport", std::to_string(security_transport));
+}
+
+std::string QueryCutoutTaskResultRequest::getApp_ip()const
+{
+	return app_ip_;
+}
+
+void QueryCutoutTaskResultRequest::setApp_ip(const std::string& app_ip)
+{
+	app_ip_ = app_ip;
+	setParameter("App_ip", app_ip);
+}
+
+std::string QueryCutoutTaskResultRequest::getRegionId()const
+{
+	return regionId_;
+}
+
+void QueryCutoutTaskResultRequest::setRegionId(const std::string& regionId)
+{
+	regionId_ = regionId;
+	setParameter("RegionId", regionId);
+}
+
+std::string QueryCutoutTaskResultRequest::getRequestId()const
+{
+	return requestId_;
+}
+
+void QueryCutoutTaskResultRequest::setRequestId(const std::string& requestId)
+{
+	requestId_ = requestId;
+	setParameter("RequestId", requestId);
+}
+
+long QueryCutoutTaskResultRequest::getCallerParentId()const
+{
+	return callerParentId_;
+}
+
+void QueryCutoutTaskResultRequest::setCallerParentId(long callerParentId)
+{
+	callerParentId_ = callerParentId;
+	setParameter("CallerParentId", std::to_string(callerParentId));
+}
+
+std::string QueryCutoutTaskResultRequest::getCallerType()const
+{
+	return callerType_;
+}
+
+void QueryCutoutTaskResultRequest::setCallerType(const std::string& callerType)
+{
+	callerType_ = callerType;
+	setParameter("CallerType", callerType);
+}
+
+bool QueryCutoutTaskResultRequest::getAk_mfa_present()const
+{
+	return ak_mfa_present_;
+}
+
+void QueryCutoutTaskResultRequest::setAk_mfa_present(bool ak_mfa_present)
+{
+	ak_mfa_present_ = ak_mfa_present;
+	setParameter("Ak_mfa_present", std::to_string(ak_mfa_present));
+}
+
+long QueryCutoutTaskResultRequest::getCallerUid()const
+{
+	return callerUid_;
+}
+
+void QueryCutoutTaskResultRequest::setCallerUid(long callerUid)
+{
+	callerUid_ = callerUid;
+	setParameter("CallerUid", std::to_string(callerUid));
+}
+
+long QueryCutoutTaskResultRequest::getTaskId()const
+{
+	return taskId_;
+}
+
+void QueryCutoutTaskResultRequest::setTaskId(long taskId)
+{
+	taskId_ = taskId;
+	setParameter("TaskId", std::to_string(taskId));
+}
+

+ 105 - 0
lubancloud/src/model/QueryCutoutTaskResultResult.cc

@@ -0,0 +1,105 @@
+/*
+ * 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/lubancloud/model/QueryCutoutTaskResultResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Lubancloud;
+using namespace AlibabaCloud::Lubancloud::Model;
+
+QueryCutoutTaskResultResult::QueryCutoutTaskResultResult() :
+	ServiceResult()
+{}
+
+QueryCutoutTaskResultResult::QueryCutoutTaskResultResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+QueryCutoutTaskResultResult::~QueryCutoutTaskResultResult()
+{}
+
+void QueryCutoutTaskResultResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	auto allPictures = value["Pictures"]["Picture"];
+	for (auto value : allPictures)
+	{
+		Picture picturesObject;
+		if(!value["OriginUrl"].isNull())
+			picturesObject.originUrl = value["OriginUrl"].asString();
+		if(!value["CutoutUrl"].isNull())
+			picturesObject.cutoutUrl = value["CutoutUrl"].asString();
+		if(!value["Width"].isNull())
+			picturesObject.width = std::stoi(value["Width"].asString());
+		if(!value["Height"].isNull())
+			picturesObject.height = std::stoi(value["Height"].asString());
+		if(!value["Status"].isNull())
+			picturesObject.status = std::stoi(value["Status"].asString());
+		if(!value["ErrorCode"].isNull())
+			picturesObject.errorCode = value["ErrorCode"].asString();
+		if(!value["ErrorMessage"].isNull())
+			picturesObject.errorMessage = value["ErrorMessage"].asString();
+		pictures_.push_back(picturesObject);
+	}
+	if(!value["TotalSize"].isNull())
+		totalSize_ = std::stoi(value["TotalSize"].asString());
+	if(!value["WaitSize"].isNull())
+		waitSize_ = std::stoi(value["WaitSize"].asString());
+	if(!value["SuccessSize"].isNull())
+		successSize_ = std::stoi(value["SuccessSize"].asString());
+	if(!value["FailSize"].isNull())
+		failSize_ = std::stoi(value["FailSize"].asString());
+	if(!value["Status"].isNull())
+		status_ = std::stoi(value["Status"].asString());
+
+}
+
+std::vector<QueryCutoutTaskResultResult::Picture> QueryCutoutTaskResultResult::getPictures()const
+{
+	return pictures_;
+}
+
+int QueryCutoutTaskResultResult::getStatus()const
+{
+	return status_;
+}
+
+int QueryCutoutTaskResultResult::getSuccessSize()const
+{
+	return successSize_;
+}
+
+int QueryCutoutTaskResultResult::getFailSize()const
+{
+	return failSize_;
+}
+
+int QueryCutoutTaskResultResult::getTotalSize()const
+{
+	return totalSize_;
+}
+
+int QueryCutoutTaskResultResult::getWaitSize()const
+{
+	return waitSize_;
+}
+

+ 126 - 0
lubancloud/src/model/QueryGenerateTaskResultRequest.cc

@@ -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.
+ */
+
+#include <alibabacloud/lubancloud/model/QueryGenerateTaskResultRequest.h>
+
+using AlibabaCloud::Lubancloud::Model::QueryGenerateTaskResultRequest;
+
+QueryGenerateTaskResultRequest::QueryGenerateTaskResultRequest() :
+	RpcServiceRequest("lubancloud", "2018-05-09", "QueryGenerateTaskResult")
+{}
+
+QueryGenerateTaskResultRequest::~QueryGenerateTaskResultRequest()
+{}
+
+bool QueryGenerateTaskResultRequest::getSecurity_transport()const
+{
+	return security_transport_;
+}
+
+void QueryGenerateTaskResultRequest::setSecurity_transport(bool security_transport)
+{
+	security_transport_ = security_transport;
+	setParameter("Security_transport", std::to_string(security_transport));
+}
+
+std::string QueryGenerateTaskResultRequest::getApp_ip()const
+{
+	return app_ip_;
+}
+
+void QueryGenerateTaskResultRequest::setApp_ip(const std::string& app_ip)
+{
+	app_ip_ = app_ip;
+	setParameter("App_ip", app_ip);
+}
+
+std::string QueryGenerateTaskResultRequest::getRegionId()const
+{
+	return regionId_;
+}
+
+void QueryGenerateTaskResultRequest::setRegionId(const std::string& regionId)
+{
+	regionId_ = regionId;
+	setParameter("RegionId", regionId);
+}
+
+std::string QueryGenerateTaskResultRequest::getRequestId()const
+{
+	return requestId_;
+}
+
+void QueryGenerateTaskResultRequest::setRequestId(const std::string& requestId)
+{
+	requestId_ = requestId;
+	setParameter("RequestId", requestId);
+}
+
+long QueryGenerateTaskResultRequest::getCallerParentId()const
+{
+	return callerParentId_;
+}
+
+void QueryGenerateTaskResultRequest::setCallerParentId(long callerParentId)
+{
+	callerParentId_ = callerParentId;
+	setParameter("CallerParentId", std::to_string(callerParentId));
+}
+
+std::string QueryGenerateTaskResultRequest::getCallerType()const
+{
+	return callerType_;
+}
+
+void QueryGenerateTaskResultRequest::setCallerType(const std::string& callerType)
+{
+	callerType_ = callerType;
+	setParameter("CallerType", callerType);
+}
+
+bool QueryGenerateTaskResultRequest::getAk_mfa_present()const
+{
+	return ak_mfa_present_;
+}
+
+void QueryGenerateTaskResultRequest::setAk_mfa_present(bool ak_mfa_present)
+{
+	ak_mfa_present_ = ak_mfa_present;
+	setParameter("Ak_mfa_present", std::to_string(ak_mfa_present));
+}
+
+long QueryGenerateTaskResultRequest::getCallerUid()const
+{
+	return callerUid_;
+}
+
+void QueryGenerateTaskResultRequest::setCallerUid(long callerUid)
+{
+	callerUid_ = callerUid;
+	setParameter("CallerUid", std::to_string(callerUid));
+}
+
+long QueryGenerateTaskResultRequest::getTaskId()const
+{
+	return taskId_;
+}
+
+void QueryGenerateTaskResultRequest::setTaskId(long taskId)
+{
+	taskId_ = taskId;
+	setParameter("TaskId", std::to_string(taskId));
+}
+

+ 103 - 0
lubancloud/src/model/QueryGenerateTaskResultResult.cc

@@ -0,0 +1,103 @@
+/*
+ * 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/lubancloud/model/QueryGenerateTaskResultResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Lubancloud;
+using namespace AlibabaCloud::Lubancloud::Model;
+
+QueryGenerateTaskResultResult::QueryGenerateTaskResultResult() :
+	ServiceResult()
+{}
+
+QueryGenerateTaskResultResult::QueryGenerateTaskResultResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+QueryGenerateTaskResultResult::~QueryGenerateTaskResultResult()
+{}
+
+void QueryGenerateTaskResultResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+
+	setRequestId(value["RequestId"].asString());
+	auto allPictures = value["Pictures"]["Picture"];
+	for (auto value : allPictures)
+	{
+		Picture picturesObject;
+		if(!value["Id"].isNull())
+			picturesObject.id = std::stol(value["Id"].asString());
+		if(!value["Name"].isNull())
+			picturesObject.name = value["Name"].asString();
+		if(!value["PreviewUrl"].isNull())
+			picturesObject.previewUrl = value["PreviewUrl"].asString();
+		if(!value["Width"].isNull())
+			picturesObject.width = std::stoi(value["Width"].asString());
+		if(!value["Height"].isNull())
+			picturesObject.height = std::stoi(value["Height"].asString());
+		if(!value["Status"].isNull())
+			picturesObject.status = std::stoi(value["Status"].asString());
+		pictures_.push_back(picturesObject);
+	}
+	if(!value["TotalSize"].isNull())
+		totalSize_ = std::stoi(value["TotalSize"].asString());
+	if(!value["WaitSize"].isNull())
+		waitSize_ = std::stoi(value["WaitSize"].asString());
+	if(!value["SuccessSize"].isNull())
+		successSize_ = std::stoi(value["SuccessSize"].asString());
+	if(!value["FailSize"].isNull())
+		failSize_ = std::stoi(value["FailSize"].asString());
+	if(!value["Status"].isNull())
+		status_ = std::stoi(value["Status"].asString());
+
+}
+
+std::vector<QueryGenerateTaskResultResult::Picture> QueryGenerateTaskResultResult::getPictures()const
+{
+	return pictures_;
+}
+
+int QueryGenerateTaskResultResult::getStatus()const
+{
+	return status_;
+}
+
+int QueryGenerateTaskResultResult::getSuccessSize()const
+{
+	return successSize_;
+}
+
+int QueryGenerateTaskResultResult::getFailSize()const
+{
+	return failSize_;
+}
+
+int QueryGenerateTaskResultResult::getTotalSize()const
+{
+	return totalSize_;
+}
+
+int QueryGenerateTaskResultResult::getWaitSize()const
+{
+	return waitSize_;
+}
+

+ 127 - 0
lubancloud/src/model/SubmitCutoutTaskRequest.cc

@@ -0,0 +1,127 @@
+/*
+ * 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/lubancloud/model/SubmitCutoutTaskRequest.h>
+
+using AlibabaCloud::Lubancloud::Model::SubmitCutoutTaskRequest;
+
+SubmitCutoutTaskRequest::SubmitCutoutTaskRequest() :
+	RpcServiceRequest("lubancloud", "2018-05-09", "SubmitCutoutTask")
+{}
+
+SubmitCutoutTaskRequest::~SubmitCutoutTaskRequest()
+{}
+
+bool SubmitCutoutTaskRequest::getSecurity_transport()const
+{
+	return security_transport_;
+}
+
+void SubmitCutoutTaskRequest::setSecurity_transport(bool security_transport)
+{
+	security_transport_ = security_transport;
+	setParameter("Security_transport", std::to_string(security_transport));
+}
+
+std::string SubmitCutoutTaskRequest::getApp_ip()const
+{
+	return app_ip_;
+}
+
+void SubmitCutoutTaskRequest::setApp_ip(const std::string& app_ip)
+{
+	app_ip_ = app_ip;
+	setParameter("App_ip", app_ip);
+}
+
+std::string SubmitCutoutTaskRequest::getRegionId()const
+{
+	return regionId_;
+}
+
+void SubmitCutoutTaskRequest::setRegionId(const std::string& regionId)
+{
+	regionId_ = regionId;
+	setParameter("RegionId", regionId);
+}
+
+long SubmitCutoutTaskRequest::getCallerParentId()const
+{
+	return callerParentId_;
+}
+
+void SubmitCutoutTaskRequest::setCallerParentId(long callerParentId)
+{
+	callerParentId_ = callerParentId;
+	setParameter("CallerParentId", std::to_string(callerParentId));
+}
+
+std::string SubmitCutoutTaskRequest::getRequestId()const
+{
+	return requestId_;
+}
+
+void SubmitCutoutTaskRequest::setRequestId(const std::string& requestId)
+{
+	requestId_ = requestId;
+	setParameter("RequestId", requestId);
+}
+
+std::string SubmitCutoutTaskRequest::getCallerType()const
+{
+	return callerType_;
+}
+
+void SubmitCutoutTaskRequest::setCallerType(const std::string& callerType)
+{
+	callerType_ = callerType;
+	setParameter("CallerType", callerType);
+}
+
+bool SubmitCutoutTaskRequest::getAk_mfa_present()const
+{
+	return ak_mfa_present_;
+}
+
+void SubmitCutoutTaskRequest::setAk_mfa_present(bool ak_mfa_present)
+{
+	ak_mfa_present_ = ak_mfa_present;
+	setParameter("Ak_mfa_present", std::to_string(ak_mfa_present));
+}
+
+long SubmitCutoutTaskRequest::getCallerUid()const
+{
+	return callerUid_;
+}
+
+void SubmitCutoutTaskRequest::setCallerUid(long callerUid)
+{
+	callerUid_ = callerUid;
+	setParameter("CallerUid", std::to_string(callerUid));
+}
+
+std::vector<std::string> SubmitCutoutTaskRequest::getPictureUrl()const
+{
+	return pictureUrl_;
+}
+
+void SubmitCutoutTaskRequest::setPictureUrl(const std::vector<std::string>& pictureUrl)
+{
+	pictureUrl_ = pictureUrl;
+	for(int i = 0; i!= pictureUrl.size(); i++)
+		setParameter("PictureUrl."+ std::to_string(i), pictureUrl.at(i));
+}
+

+ 52 - 0
lubancloud/src/model/SubmitCutoutTaskResult.cc

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

+ 217 - 0
lubancloud/src/model/SubmitGenerateTaskRequest.cc

@@ -0,0 +1,217 @@
+/*
+ * 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/lubancloud/model/SubmitGenerateTaskRequest.h>
+
+using AlibabaCloud::Lubancloud::Model::SubmitGenerateTaskRequest;
+
+SubmitGenerateTaskRequest::SubmitGenerateTaskRequest() :
+	RpcServiceRequest("lubancloud", "2018-05-09", "SubmitGenerateTask")
+{}
+
+SubmitGenerateTaskRequest::~SubmitGenerateTaskRequest()
+{}
+
+std::string SubmitGenerateTaskRequest::getApp_ip()const
+{
+	return app_ip_;
+}
+
+void SubmitGenerateTaskRequest::setApp_ip(const std::string& app_ip)
+{
+	app_ip_ = app_ip;
+	setParameter("App_ip", app_ip);
+}
+
+int SubmitGenerateTaskRequest::getImageCount()const
+{
+	return imageCount_;
+}
+
+void SubmitGenerateTaskRequest::setImageCount(int imageCount)
+{
+	imageCount_ = imageCount;
+	setParameter("ImageCount", std::to_string(imageCount));
+}
+
+long SubmitGenerateTaskRequest::getCallerParentId()const
+{
+	return callerParentId_;
+}
+
+void SubmitGenerateTaskRequest::setCallerParentId(long callerParentId)
+{
+	callerParentId_ = callerParentId;
+	setParameter("CallerParentId", std::to_string(callerParentId));
+}
+
+std::string SubmitGenerateTaskRequest::getActionPoint()const
+{
+	return actionPoint_;
+}
+
+void SubmitGenerateTaskRequest::setActionPoint(const std::string& actionPoint)
+{
+	actionPoint_ = actionPoint;
+	setParameter("ActionPoint", actionPoint);
+}
+
+std::string SubmitGenerateTaskRequest::getLogoImagePath()const
+{
+	return logoImagePath_;
+}
+
+void SubmitGenerateTaskRequest::setLogoImagePath(const std::string& logoImagePath)
+{
+	logoImagePath_ = logoImagePath;
+	setParameter("LogoImagePath", logoImagePath);
+}
+
+int SubmitGenerateTaskRequest::getType()const
+{
+	return type_;
+}
+
+void SubmitGenerateTaskRequest::setType(int type)
+{
+	type_ = type;
+	setParameter("Type", std::to_string(type));
+}
+
+std::string SubmitGenerateTaskRequest::getCallerType()const
+{
+	return callerType_;
+}
+
+void SubmitGenerateTaskRequest::setCallerType(const std::string& callerType)
+{
+	callerType_ = callerType;
+	setParameter("CallerType", callerType);
+}
+
+bool SubmitGenerateTaskRequest::getAk_mfa_present()const
+{
+	return ak_mfa_present_;
+}
+
+void SubmitGenerateTaskRequest::setAk_mfa_present(bool ak_mfa_present)
+{
+	ak_mfa_present_ = ak_mfa_present;
+	setParameter("Ak_mfa_present", std::to_string(ak_mfa_present));
+}
+
+bool SubmitGenerateTaskRequest::getSecurity_transport()const
+{
+	return security_transport_;
+}
+
+void SubmitGenerateTaskRequest::setSecurity_transport(bool security_transport)
+{
+	security_transport_ = security_transport;
+	setParameter("Security_transport", std::to_string(security_transport));
+}
+
+std::vector<std::string> SubmitGenerateTaskRequest::getMajorImagePath()const
+{
+	return majorImagePath_;
+}
+
+void SubmitGenerateTaskRequest::setMajorImagePath(const std::vector<std::string>& majorImagePath)
+{
+	majorImagePath_ = majorImagePath;
+	for(int i = 0; i!= majorImagePath.size(); i++)
+		setParameter("MajorImagePath."+ std::to_string(i), majorImagePath.at(i));
+}
+
+std::string SubmitGenerateTaskRequest::getRegionId()const
+{
+	return regionId_;
+}
+
+void SubmitGenerateTaskRequest::setRegionId(const std::string& regionId)
+{
+	regionId_ = regionId;
+	setParameter("RegionId", regionId);
+}
+
+std::string SubmitGenerateTaskRequest::getRequestId()const
+{
+	return requestId_;
+}
+
+void SubmitGenerateTaskRequest::setRequestId(const std::string& requestId)
+{
+	requestId_ = requestId;
+	setParameter("RequestId", requestId);
+}
+
+int SubmitGenerateTaskRequest::getWidth()const
+{
+	return width_;
+}
+
+void SubmitGenerateTaskRequest::setWidth(int width)
+{
+	width_ = width;
+	setParameter("Width", std::to_string(width));
+}
+
+std::vector<std::string> SubmitGenerateTaskRequest::getCopyWrite()const
+{
+	return copyWrite_;
+}
+
+void SubmitGenerateTaskRequest::setCopyWrite(const std::vector<std::string>& copyWrite)
+{
+	copyWrite_ = copyWrite;
+	for(int i = 0; i!= copyWrite.size(); i++)
+		setParameter("CopyWrite."+ std::to_string(i), copyWrite.at(i));
+}
+
+std::vector<long> SubmitGenerateTaskRequest::getPropertyId()const
+{
+	return propertyId_;
+}
+
+void SubmitGenerateTaskRequest::setPropertyId(const std::vector<long>& propertyId)
+{
+	propertyId_ = propertyId;
+	for(int i = 0; i!= propertyId.size(); i++)
+		setParameter("PropertyId."+ std::to_string(i), std::to_string(propertyId.at(i)));
+}
+
+long SubmitGenerateTaskRequest::getCallerUid()const
+{
+	return callerUid_;
+}
+
+void SubmitGenerateTaskRequest::setCallerUid(long callerUid)
+{
+	callerUid_ = callerUid;
+	setParameter("CallerUid", std::to_string(callerUid));
+}
+
+int SubmitGenerateTaskRequest::getHeight()const
+{
+	return height_;
+}
+
+void SubmitGenerateTaskRequest::setHeight(int height)
+{
+	height_ = height;
+	setParameter("Height", std::to_string(height));
+}
+

+ 52 - 0
lubancloud/src/model/SubmitGenerateTaskResult.cc

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