diff --git a/CHANGELOG b/CHANGELOG index 42d1d2268..d25ea0d6a 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,6 @@ +2020-10-19 Version: patch +- Add a new interface for asynchronous image translation. + 2020-10-19 Version: patch - Metering 1019. diff --git a/alimt/CMakeLists.txt b/alimt/CMakeLists.txt index bd94bf07a..a8fbfdd99 100644 --- a/alimt/CMakeLists.txt +++ b/alimt/CMakeLists.txt @@ -23,6 +23,8 @@ set(alimt_public_header set(alimt_public_header_model include/alibabacloud/alimt/model/CreateDocTranslateTaskRequest.h include/alibabacloud/alimt/model/CreateDocTranslateTaskResult.h + include/alibabacloud/alimt/model/CreateImageTranslateTaskRequest.h + include/alibabacloud/alimt/model/CreateImageTranslateTaskResult.h include/alibabacloud/alimt/model/GetDetectLanguageRequest.h include/alibabacloud/alimt/model/GetDetectLanguageResult.h include/alibabacloud/alimt/model/GetDocTranslateTaskRequest.h @@ -31,6 +33,8 @@ set(alimt_public_header_model include/alibabacloud/alimt/model/GetImageDiagnoseResult.h include/alibabacloud/alimt/model/GetImageTranslateRequest.h include/alibabacloud/alimt/model/GetImageTranslateResult.h + include/alibabacloud/alimt/model/GetImageTranslateTaskRequest.h + include/alibabacloud/alimt/model/GetImageTranslateTaskResult.h include/alibabacloud/alimt/model/GetTitleDiagnoseRequest.h include/alibabacloud/alimt/model/GetTitleDiagnoseResult.h include/alibabacloud/alimt/model/GetTitleGenerateRequest.h @@ -50,6 +54,8 @@ set(alimt_src src/AlimtClient.cc src/model/CreateDocTranslateTaskRequest.cc src/model/CreateDocTranslateTaskResult.cc + src/model/CreateImageTranslateTaskRequest.cc + src/model/CreateImageTranslateTaskResult.cc src/model/GetDetectLanguageRequest.cc src/model/GetDetectLanguageResult.cc src/model/GetDocTranslateTaskRequest.cc @@ -58,6 +64,8 @@ set(alimt_src src/model/GetImageDiagnoseResult.cc src/model/GetImageTranslateRequest.cc src/model/GetImageTranslateResult.cc + src/model/GetImageTranslateTaskRequest.cc + src/model/GetImageTranslateTaskResult.cc src/model/GetTitleDiagnoseRequest.cc src/model/GetTitleDiagnoseResult.cc src/model/GetTitleGenerateRequest.cc diff --git a/alimt/include/alibabacloud/alimt/AlimtClient.h b/alimt/include/alibabacloud/alimt/AlimtClient.h index dd8379a2e..9cc5b182f 100644 --- a/alimt/include/alibabacloud/alimt/AlimtClient.h +++ b/alimt/include/alibabacloud/alimt/AlimtClient.h @@ -24,6 +24,8 @@ #include "AlimtExport.h" #include "model/CreateDocTranslateTaskRequest.h" #include "model/CreateDocTranslateTaskResult.h" +#include "model/CreateImageTranslateTaskRequest.h" +#include "model/CreateImageTranslateTaskResult.h" #include "model/GetDetectLanguageRequest.h" #include "model/GetDetectLanguageResult.h" #include "model/GetDocTranslateTaskRequest.h" @@ -32,6 +34,8 @@ #include "model/GetImageDiagnoseResult.h" #include "model/GetImageTranslateRequest.h" #include "model/GetImageTranslateResult.h" +#include "model/GetImageTranslateTaskRequest.h" +#include "model/GetImageTranslateTaskResult.h" #include "model/GetTitleDiagnoseRequest.h" #include "model/GetTitleDiagnoseResult.h" #include "model/GetTitleGenerateRequest.h" @@ -58,6 +62,9 @@ namespace AlibabaCloud typedef Outcome CreateDocTranslateTaskOutcome; typedef std::future CreateDocTranslateTaskOutcomeCallable; typedef std::function&)> CreateDocTranslateTaskAsyncHandler; + typedef Outcome CreateImageTranslateTaskOutcome; + typedef std::future CreateImageTranslateTaskOutcomeCallable; + typedef std::function&)> CreateImageTranslateTaskAsyncHandler; typedef Outcome GetDetectLanguageOutcome; typedef std::future GetDetectLanguageOutcomeCallable; typedef std::function&)> GetDetectLanguageAsyncHandler; @@ -70,6 +77,9 @@ namespace AlibabaCloud typedef Outcome GetImageTranslateOutcome; typedef std::future GetImageTranslateOutcomeCallable; typedef std::function&)> GetImageTranslateAsyncHandler; + typedef Outcome GetImageTranslateTaskOutcome; + typedef std::future GetImageTranslateTaskOutcomeCallable; + typedef std::function&)> GetImageTranslateTaskAsyncHandler; typedef Outcome GetTitleDiagnoseOutcome; typedef std::future GetTitleDiagnoseOutcomeCallable; typedef std::function&)> GetTitleDiagnoseAsyncHandler; @@ -99,6 +109,9 @@ namespace AlibabaCloud CreateDocTranslateTaskOutcome createDocTranslateTask(const Model::CreateDocTranslateTaskRequest &request)const; void createDocTranslateTaskAsync(const Model::CreateDocTranslateTaskRequest& request, const CreateDocTranslateTaskAsyncHandler& handler, const std::shared_ptr& context = nullptr) const; CreateDocTranslateTaskOutcomeCallable createDocTranslateTaskCallable(const Model::CreateDocTranslateTaskRequest& request) const; + CreateImageTranslateTaskOutcome createImageTranslateTask(const Model::CreateImageTranslateTaskRequest &request)const; + void createImageTranslateTaskAsync(const Model::CreateImageTranslateTaskRequest& request, const CreateImageTranslateTaskAsyncHandler& handler, const std::shared_ptr& context = nullptr) const; + CreateImageTranslateTaskOutcomeCallable createImageTranslateTaskCallable(const Model::CreateImageTranslateTaskRequest& request) const; GetDetectLanguageOutcome getDetectLanguage(const Model::GetDetectLanguageRequest &request)const; void getDetectLanguageAsync(const Model::GetDetectLanguageRequest& request, const GetDetectLanguageAsyncHandler& handler, const std::shared_ptr& context = nullptr) const; GetDetectLanguageOutcomeCallable getDetectLanguageCallable(const Model::GetDetectLanguageRequest& request) const; @@ -111,6 +124,9 @@ namespace AlibabaCloud GetImageTranslateOutcome getImageTranslate(const Model::GetImageTranslateRequest &request)const; void getImageTranslateAsync(const Model::GetImageTranslateRequest& request, const GetImageTranslateAsyncHandler& handler, const std::shared_ptr& context = nullptr) const; GetImageTranslateOutcomeCallable getImageTranslateCallable(const Model::GetImageTranslateRequest& request) const; + GetImageTranslateTaskOutcome getImageTranslateTask(const Model::GetImageTranslateTaskRequest &request)const; + void getImageTranslateTaskAsync(const Model::GetImageTranslateTaskRequest& request, const GetImageTranslateTaskAsyncHandler& handler, const std::shared_ptr& context = nullptr) const; + GetImageTranslateTaskOutcomeCallable getImageTranslateTaskCallable(const Model::GetImageTranslateTaskRequest& request) const; GetTitleDiagnoseOutcome getTitleDiagnose(const Model::GetTitleDiagnoseRequest &request)const; void getTitleDiagnoseAsync(const Model::GetTitleDiagnoseRequest& request, const GetTitleDiagnoseAsyncHandler& handler, const std::shared_ptr& context = nullptr) const; GetTitleDiagnoseOutcomeCallable getTitleDiagnoseCallable(const Model::GetTitleDiagnoseRequest& request) const; diff --git a/alimt/include/alibabacloud/alimt/model/CreateImageTranslateTaskRequest.h b/alimt/include/alibabacloud/alimt/model/CreateImageTranslateTaskRequest.h new file mode 100644 index 000000000..a2a1138de --- /dev/null +++ b/alimt/include/alibabacloud/alimt/model/CreateImageTranslateTaskRequest.h @@ -0,0 +1,60 @@ +/* + * Copyright 2009-2017 Alibaba Cloud All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef ALIBABACLOUD_ALIMT_MODEL_CREATEIMAGETRANSLATETASKREQUEST_H_ +#define ALIBABACLOUD_ALIMT_MODEL_CREATEIMAGETRANSLATETASKREQUEST_H_ + +#include +#include +#include +#include + +namespace AlibabaCloud +{ + namespace Alimt + { + namespace Model + { + class ALIBABACLOUD_ALIMT_EXPORT CreateImageTranslateTaskRequest : public RpcServiceRequest + { + + public: + CreateImageTranslateTaskRequest(); + ~CreateImageTranslateTaskRequest(); + + std::string getSourceLanguage()const; + void setSourceLanguage(const std::string& sourceLanguage); + std::string getClientToken()const; + void setClientToken(const std::string& clientToken); + std::string getUrlList()const; + void setUrlList(const std::string& urlList); + std::string getExtra()const; + void setExtra(const std::string& extra); + std::string getTargetLanguage()const; + void setTargetLanguage(const std::string& targetLanguage); + + private: + std::string sourceLanguage_; + std::string clientToken_; + std::string urlList_; + std::string extra_; + std::string targetLanguage_; + + }; + } + } +} +#endif // !ALIBABACLOUD_ALIMT_MODEL_CREATEIMAGETRANSLATETASKREQUEST_H_ \ No newline at end of file diff --git a/alimt/include/alibabacloud/alimt/model/CreateImageTranslateTaskResult.h b/alimt/include/alibabacloud/alimt/model/CreateImageTranslateTaskResult.h new file mode 100644 index 000000000..5668624aa --- /dev/null +++ b/alimt/include/alibabacloud/alimt/model/CreateImageTranslateTaskResult.h @@ -0,0 +1,59 @@ +/* + * 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_ALIMT_MODEL_CREATEIMAGETRANSLATETASKRESULT_H_ +#define ALIBABACLOUD_ALIMT_MODEL_CREATEIMAGETRANSLATETASKRESULT_H_ + +#include +#include +#include +#include +#include + +namespace AlibabaCloud +{ + namespace Alimt + { + namespace Model + { + class ALIBABACLOUD_ALIMT_EXPORT CreateImageTranslateTaskResult : public ServiceResult + { + public: + struct Data + { + std::string taskId; + }; + + + CreateImageTranslateTaskResult(); + explicit CreateImageTranslateTaskResult(const std::string &payload); + ~CreateImageTranslateTaskResult(); + std::string getMessage()const; + Data getData()const; + int getCode()const; + + protected: + void parse(const std::string &payload); + private: + std::string message_; + Data data_; + int code_; + + }; + } + } +} +#endif // !ALIBABACLOUD_ALIMT_MODEL_CREATEIMAGETRANSLATETASKRESULT_H_ \ No newline at end of file diff --git a/alimt/include/alibabacloud/alimt/model/GetImageTranslateTaskRequest.h b/alimt/include/alibabacloud/alimt/model/GetImageTranslateTaskRequest.h new file mode 100644 index 000000000..01f925e5d --- /dev/null +++ b/alimt/include/alibabacloud/alimt/model/GetImageTranslateTaskRequest.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_ALIMT_MODEL_GETIMAGETRANSLATETASKREQUEST_H_ +#define ALIBABACLOUD_ALIMT_MODEL_GETIMAGETRANSLATETASKREQUEST_H_ + +#include +#include +#include +#include + +namespace AlibabaCloud +{ + namespace Alimt + { + namespace Model + { + class ALIBABACLOUD_ALIMT_EXPORT GetImageTranslateTaskRequest : public RpcServiceRequest + { + + public: + GetImageTranslateTaskRequest(); + ~GetImageTranslateTaskRequest(); + + std::string getTaskId()const; + void setTaskId(const std::string& taskId); + + private: + std::string taskId_; + + }; + } + } +} +#endif // !ALIBABACLOUD_ALIMT_MODEL_GETIMAGETRANSLATETASKREQUEST_H_ \ No newline at end of file diff --git a/alimt/include/alibabacloud/alimt/model/GetImageTranslateTaskResult.h b/alimt/include/alibabacloud/alimt/model/GetImageTranslateTaskResult.h new file mode 100644 index 000000000..f8c4c04ee --- /dev/null +++ b/alimt/include/alibabacloud/alimt/model/GetImageTranslateTaskResult.h @@ -0,0 +1,59 @@ +/* + * 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_ALIMT_MODEL_GETIMAGETRANSLATETASKRESULT_H_ +#define ALIBABACLOUD_ALIMT_MODEL_GETIMAGETRANSLATETASKRESULT_H_ + +#include +#include +#include +#include +#include + +namespace AlibabaCloud +{ + namespace Alimt + { + namespace Model + { + class ALIBABACLOUD_ALIMT_EXPORT GetImageTranslateTaskResult : public ServiceResult + { + public: + struct Data + { + std::string imageData; + }; + + + GetImageTranslateTaskResult(); + explicit GetImageTranslateTaskResult(const std::string &payload); + ~GetImageTranslateTaskResult(); + std::string getMessage()const; + Data getData()const; + int getCode()const; + + protected: + void parse(const std::string &payload); + private: + std::string message_; + Data data_; + int code_; + + }; + } + } +} +#endif // !ALIBABACLOUD_ALIMT_MODEL_GETIMAGETRANSLATETASKRESULT_H_ \ No newline at end of file diff --git a/alimt/src/AlimtClient.cc b/alimt/src/AlimtClient.cc index e381e64ab..2cad59c2a 100644 --- a/alimt/src/AlimtClient.cc +++ b/alimt/src/AlimtClient.cc @@ -87,6 +87,42 @@ AlimtClient::CreateDocTranslateTaskOutcomeCallable AlimtClient::createDocTransla return task->get_future(); } +AlimtClient::CreateImageTranslateTaskOutcome AlimtClient::createImageTranslateTask(const CreateImageTranslateTaskRequest &request) const +{ + auto endpointOutcome = endpointProvider_->getEndpoint(); + if (!endpointOutcome.isSuccess()) + return CreateImageTranslateTaskOutcome(endpointOutcome.error()); + + auto outcome = makeRequest(endpointOutcome.result(), request); + + if (outcome.isSuccess()) + return CreateImageTranslateTaskOutcome(CreateImageTranslateTaskResult(outcome.result())); + else + return CreateImageTranslateTaskOutcome(outcome.error()); +} + +void AlimtClient::createImageTranslateTaskAsync(const CreateImageTranslateTaskRequest& request, const CreateImageTranslateTaskAsyncHandler& handler, const std::shared_ptr& context) const +{ + auto fn = [this, request, handler, context]() + { + handler(this, request, createImageTranslateTask(request), context); + }; + + asyncExecute(new Runnable(fn)); +} + +AlimtClient::CreateImageTranslateTaskOutcomeCallable AlimtClient::createImageTranslateTaskCallable(const CreateImageTranslateTaskRequest &request) const +{ + auto task = std::make_shared>( + [this, request]() + { + return this->createImageTranslateTask(request); + }); + + asyncExecute(new Runnable([task]() { (*task)(); })); + return task->get_future(); +} + AlimtClient::GetDetectLanguageOutcome AlimtClient::getDetectLanguage(const GetDetectLanguageRequest &request) const { auto endpointOutcome = endpointProvider_->getEndpoint(); @@ -231,6 +267,42 @@ AlimtClient::GetImageTranslateOutcomeCallable AlimtClient::getImageTranslateCall return task->get_future(); } +AlimtClient::GetImageTranslateTaskOutcome AlimtClient::getImageTranslateTask(const GetImageTranslateTaskRequest &request) const +{ + auto endpointOutcome = endpointProvider_->getEndpoint(); + if (!endpointOutcome.isSuccess()) + return GetImageTranslateTaskOutcome(endpointOutcome.error()); + + auto outcome = makeRequest(endpointOutcome.result(), request); + + if (outcome.isSuccess()) + return GetImageTranslateTaskOutcome(GetImageTranslateTaskResult(outcome.result())); + else + return GetImageTranslateTaskOutcome(outcome.error()); +} + +void AlimtClient::getImageTranslateTaskAsync(const GetImageTranslateTaskRequest& request, const GetImageTranslateTaskAsyncHandler& handler, const std::shared_ptr& context) const +{ + auto fn = [this, request, handler, context]() + { + handler(this, request, getImageTranslateTask(request), context); + }; + + asyncExecute(new Runnable(fn)); +} + +AlimtClient::GetImageTranslateTaskOutcomeCallable AlimtClient::getImageTranslateTaskCallable(const GetImageTranslateTaskRequest &request) const +{ + auto task = std::make_shared>( + [this, request]() + { + return this->getImageTranslateTask(request); + }); + + asyncExecute(new Runnable([task]() { (*task)(); })); + return task->get_future(); +} + AlimtClient::GetTitleDiagnoseOutcome AlimtClient::getTitleDiagnose(const GetTitleDiagnoseRequest &request) const { auto endpointOutcome = endpointProvider_->getEndpoint(); diff --git a/alimt/src/model/CreateImageTranslateTaskRequest.cc b/alimt/src/model/CreateImageTranslateTaskRequest.cc new file mode 100644 index 000000000..13cc59831 --- /dev/null +++ b/alimt/src/model/CreateImageTranslateTaskRequest.cc @@ -0,0 +1,84 @@ +/* + * Copyright 2009-2017 Alibaba Cloud All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include + +using AlibabaCloud::Alimt::Model::CreateImageTranslateTaskRequest; + +CreateImageTranslateTaskRequest::CreateImageTranslateTaskRequest() : + RpcServiceRequest("alimt", "2018-10-12", "CreateImageTranslateTask") +{ + setMethod(HttpRequest::Method::Post); +} + +CreateImageTranslateTaskRequest::~CreateImageTranslateTaskRequest() +{} + +std::string CreateImageTranslateTaskRequest::getSourceLanguage()const +{ + return sourceLanguage_; +} + +void CreateImageTranslateTaskRequest::setSourceLanguage(const std::string& sourceLanguage) +{ + sourceLanguage_ = sourceLanguage; + setBodyParameter("SourceLanguage", sourceLanguage); +} + +std::string CreateImageTranslateTaskRequest::getClientToken()const +{ + return clientToken_; +} + +void CreateImageTranslateTaskRequest::setClientToken(const std::string& clientToken) +{ + clientToken_ = clientToken; + setBodyParameter("ClientToken", clientToken); +} + +std::string CreateImageTranslateTaskRequest::getUrlList()const +{ + return urlList_; +} + +void CreateImageTranslateTaskRequest::setUrlList(const std::string& urlList) +{ + urlList_ = urlList; + setBodyParameter("UrlList", urlList); +} + +std::string CreateImageTranslateTaskRequest::getExtra()const +{ + return extra_; +} + +void CreateImageTranslateTaskRequest::setExtra(const std::string& extra) +{ + extra_ = extra; + setBodyParameter("Extra", extra); +} + +std::string CreateImageTranslateTaskRequest::getTargetLanguage()const +{ + return targetLanguage_; +} + +void CreateImageTranslateTaskRequest::setTargetLanguage(const std::string& targetLanguage) +{ + targetLanguage_ = targetLanguage; + setBodyParameter("TargetLanguage", targetLanguage); +} + diff --git a/alimt/src/model/CreateImageTranslateTaskResult.cc b/alimt/src/model/CreateImageTranslateTaskResult.cc new file mode 100644 index 000000000..23455ad3e --- /dev/null +++ b/alimt/src/model/CreateImageTranslateTaskResult.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 +#include + +using namespace AlibabaCloud::Alimt; +using namespace AlibabaCloud::Alimt::Model; + +CreateImageTranslateTaskResult::CreateImageTranslateTaskResult() : + ServiceResult() +{} + +CreateImageTranslateTaskResult::CreateImageTranslateTaskResult(const std::string &payload) : + ServiceResult() +{ + parse(payload); +} + +CreateImageTranslateTaskResult::~CreateImageTranslateTaskResult() +{} + +void CreateImageTranslateTaskResult::parse(const std::string &payload) +{ + Json::Reader reader; + Json::Value value; + reader.parse(payload, value); + setRequestId(value["RequestId"].asString()); + auto dataNode = value["Data"]; + if(!dataNode["TaskId"].isNull()) + data_.taskId = dataNode["TaskId"].asString(); + if(!value["Code"].isNull()) + code_ = std::stoi(value["Code"].asString()); + if(!value["Message"].isNull()) + message_ = value["Message"].asString(); + +} + +std::string CreateImageTranslateTaskResult::getMessage()const +{ + return message_; +} + +CreateImageTranslateTaskResult::Data CreateImageTranslateTaskResult::getData()const +{ + return data_; +} + +int CreateImageTranslateTaskResult::getCode()const +{ + return code_; +} + diff --git a/alimt/src/model/GetImageTranslateTaskRequest.cc b/alimt/src/model/GetImageTranslateTaskRequest.cc new file mode 100644 index 000000000..d2440655c --- /dev/null +++ b/alimt/src/model/GetImageTranslateTaskRequest.cc @@ -0,0 +1,40 @@ +/* + * 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 + +using AlibabaCloud::Alimt::Model::GetImageTranslateTaskRequest; + +GetImageTranslateTaskRequest::GetImageTranslateTaskRequest() : + RpcServiceRequest("alimt", "2018-10-12", "GetImageTranslateTask") +{ + setMethod(HttpRequest::Method::Post); +} + +GetImageTranslateTaskRequest::~GetImageTranslateTaskRequest() +{} + +std::string GetImageTranslateTaskRequest::getTaskId()const +{ + return taskId_; +} + +void GetImageTranslateTaskRequest::setTaskId(const std::string& taskId) +{ + taskId_ = taskId; + setBodyParameter("TaskId", taskId); +} + diff --git a/alimt/src/model/GetImageTranslateTaskResult.cc b/alimt/src/model/GetImageTranslateTaskResult.cc new file mode 100644 index 000000000..2d8718b0c --- /dev/null +++ b/alimt/src/model/GetImageTranslateTaskResult.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 +#include + +using namespace AlibabaCloud::Alimt; +using namespace AlibabaCloud::Alimt::Model; + +GetImageTranslateTaskResult::GetImageTranslateTaskResult() : + ServiceResult() +{} + +GetImageTranslateTaskResult::GetImageTranslateTaskResult(const std::string &payload) : + ServiceResult() +{ + parse(payload); +} + +GetImageTranslateTaskResult::~GetImageTranslateTaskResult() +{} + +void GetImageTranslateTaskResult::parse(const std::string &payload) +{ + Json::Reader reader; + Json::Value value; + reader.parse(payload, value); + setRequestId(value["RequestId"].asString()); + auto dataNode = value["Data"]; + if(!dataNode["ImageData"].isNull()) + data_.imageData = dataNode["ImageData"].asString(); + if(!value["Code"].isNull()) + code_ = std::stoi(value["Code"].asString()); + if(!value["Message"].isNull()) + message_ = value["Message"].asString(); + +} + +std::string GetImageTranslateTaskResult::getMessage()const +{ + return message_; +} + +GetImageTranslateTaskResult::Data GetImageTranslateTaskResult::getData()const +{ + return data_; +} + +int GetImageTranslateTaskResult::getCode()const +{ + return code_; +} +