Files
aliyun-openapi-cpp-sdk/domain/src/model/PollTaskResultResult.cc
wb-hx510875 ba463ae2dc fixed #51
2019-09-19 11:14:07 +08:00

124 lines
4.0 KiB
C++

/*
* 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/domain/model/PollTaskResultResult.h>
#include <json/json.h>
using namespace AlibabaCloud::Domain;
using namespace AlibabaCloud::Domain::Model;
PollTaskResultResult::PollTaskResultResult() :
ServiceResult()
{}
PollTaskResultResult::PollTaskResultResult(const std::string &payload) :
ServiceResult()
{
parse(payload);
}
PollTaskResultResult::~PollTaskResultResult()
{}
void PollTaskResultResult::parse(const std::string &payload)
{
Json::Reader reader;
Json::Value value;
reader.parse(payload, value);
setRequestId(value["RequestId"].asString());
auto allDataNode = value["Data"]["TaskDetail"];
for (auto valueDataTaskDetail : allDataNode)
{
TaskDetail dataObject;
if(!valueDataTaskDetail["TaskNo"].isNull())
dataObject.taskNo = valueDataTaskDetail["TaskNo"].asString();
if(!valueDataTaskDetail["TaskDetailNo"].isNull())
dataObject.taskDetailNo = valueDataTaskDetail["TaskDetailNo"].asString();
if(!valueDataTaskDetail["TaskType"].isNull())
dataObject.taskType = valueDataTaskDetail["TaskType"].asString();
if(!valueDataTaskDetail["InstanceId"].isNull())
dataObject.instanceId = valueDataTaskDetail["InstanceId"].asString();
if(!valueDataTaskDetail["DomainName"].isNull())
dataObject.domainName = valueDataTaskDetail["DomainName"].asString();
if(!valueDataTaskDetail["TaskStatus"].isNull())
dataObject.taskStatus = valueDataTaskDetail["TaskStatus"].asString();
if(!valueDataTaskDetail["UpdateTime"].isNull())
dataObject.updateTime = valueDataTaskDetail["UpdateTime"].asString();
if(!valueDataTaskDetail["CreateTime"].isNull())
dataObject.createTime = valueDataTaskDetail["CreateTime"].asString();
if(!valueDataTaskDetail["TryCount"].isNull())
dataObject.tryCount = std::stoi(valueDataTaskDetail["TryCount"].asString());
if(!valueDataTaskDetail["ErrorMsg"].isNull())
dataObject.errorMsg = valueDataTaskDetail["ErrorMsg"].asString();
if(!valueDataTaskDetail["TaskStatusCode"].isNull())
dataObject.taskStatusCode = std::stoi(valueDataTaskDetail["TaskStatusCode"].asString());
if(!valueDataTaskDetail["TaskResult"].isNull())
dataObject.taskResult = valueDataTaskDetail["TaskResult"].asString();
if(!valueDataTaskDetail["TaskTypeDescription"].isNull())
dataObject.taskTypeDescription = valueDataTaskDetail["TaskTypeDescription"].asString();
data_.push_back(dataObject);
}
if(!value["TotalItemNum"].isNull())
totalItemNum_ = std::stoi(value["TotalItemNum"].asString());
if(!value["CurrentPageNum"].isNull())
currentPageNum_ = std::stoi(value["CurrentPageNum"].asString());
if(!value["TotalPageNum"].isNull())
totalPageNum_ = std::stoi(value["TotalPageNum"].asString());
if(!value["PageSize"].isNull())
pageSize_ = std::stoi(value["PageSize"].asString());
if(!value["PrePage"].isNull())
prePage_ = value["PrePage"].asString() == "true";
if(!value["NextPage"].isNull())
nextPage_ = value["NextPage"].asString() == "true";
}
bool PollTaskResultResult::getPrePage()const
{
return prePage_;
}
int PollTaskResultResult::getCurrentPageNum()const
{
return currentPageNum_;
}
int PollTaskResultResult::getPageSize()const
{
return pageSize_;
}
int PollTaskResultResult::getTotalPageNum()const
{
return totalPageNum_;
}
std::vector<PollTaskResultResult::TaskDetail> PollTaskResultResult::getData()const
{
return data_;
}
int PollTaskResultResult::getTotalItemNum()const
{
return totalItemNum_;
}
bool PollTaskResultResult::getNextPage()const
{
return nextPage_;
}