diff --git a/CHANGELOG b/CHANGELOG index 45f661b6d..f86f286a4 100644 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,3 +1,6 @@ +2020-06-03 Version: 1.36.444 +- Describe describeAvailableResource. + 2020-06-03 Version: 1.36.443 - Generated 2019-01-01 for `Cassandra`. diff --git a/VERSION b/VERSION index ff2987697..3c0139ef0 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.36.443 \ No newline at end of file +1.36.444 \ No newline at end of file diff --git a/hbase/CMakeLists.txt b/hbase/CMakeLists.txt index 849239abd..4216cfc14 100644 --- a/hbase/CMakeLists.txt +++ b/hbase/CMakeLists.txt @@ -55,6 +55,8 @@ set(hbase_public_header_model include/alibabacloud/hbase/model/DescribeBackupTablesResult.h include/alibabacloud/hbase/model/DescribeDBInstanceUsageRequest.h include/alibabacloud/hbase/model/DescribeDBInstanceUsageResult.h + include/alibabacloud/hbase/model/DescribeDeletedInstancesRequest.h + include/alibabacloud/hbase/model/DescribeDeletedInstancesResult.h include/alibabacloud/hbase/model/DescribeEndpointsRequest.h include/alibabacloud/hbase/model/DescribeEndpointsResult.h include/alibabacloud/hbase/model/DescribeInstanceRequest.h @@ -101,6 +103,8 @@ set(hbase_public_header_model include/alibabacloud/hbase/model/ModifySecurityGroupsResult.h include/alibabacloud/hbase/model/ModifyUIAccountPasswordRequest.h include/alibabacloud/hbase/model/ModifyUIAccountPasswordResult.h + include/alibabacloud/hbase/model/PurgeInstanceRequest.h + include/alibabacloud/hbase/model/PurgeInstanceResult.h include/alibabacloud/hbase/model/QueryHBaseHaDBRequest.h include/alibabacloud/hbase/model/QueryHBaseHaDBResult.h include/alibabacloud/hbase/model/QueryXpackRelateDBRequest.h @@ -158,6 +162,8 @@ set(hbase_src src/model/DescribeBackupTablesResult.cc src/model/DescribeDBInstanceUsageRequest.cc src/model/DescribeDBInstanceUsageResult.cc + src/model/DescribeDeletedInstancesRequest.cc + src/model/DescribeDeletedInstancesResult.cc src/model/DescribeEndpointsRequest.cc src/model/DescribeEndpointsResult.cc src/model/DescribeInstanceRequest.cc @@ -204,6 +210,8 @@ set(hbase_src src/model/ModifySecurityGroupsResult.cc src/model/ModifyUIAccountPasswordRequest.cc src/model/ModifyUIAccountPasswordResult.cc + src/model/PurgeInstanceRequest.cc + src/model/PurgeInstanceResult.cc src/model/QueryHBaseHaDBRequest.cc src/model/QueryHBaseHaDBResult.cc src/model/QueryXpackRelateDBRequest.cc diff --git a/hbase/include/alibabacloud/hbase/HBaseClient.h b/hbase/include/alibabacloud/hbase/HBaseClient.h index 3b702143c..a86d5d103 100644 --- a/hbase/include/alibabacloud/hbase/HBaseClient.h +++ b/hbase/include/alibabacloud/hbase/HBaseClient.h @@ -56,6 +56,8 @@ #include "model/DescribeBackupTablesResult.h" #include "model/DescribeDBInstanceUsageRequest.h" #include "model/DescribeDBInstanceUsageResult.h" +#include "model/DescribeDeletedInstancesRequest.h" +#include "model/DescribeDeletedInstancesResult.h" #include "model/DescribeEndpointsRequest.h" #include "model/DescribeEndpointsResult.h" #include "model/DescribeInstanceRequest.h" @@ -102,6 +104,8 @@ #include "model/ModifySecurityGroupsResult.h" #include "model/ModifyUIAccountPasswordRequest.h" #include "model/ModifyUIAccountPasswordResult.h" +#include "model/PurgeInstanceRequest.h" +#include "model/PurgeInstanceResult.h" #include "model/QueryHBaseHaDBRequest.h" #include "model/QueryHBaseHaDBResult.h" #include "model/QueryXpackRelateDBRequest.h" @@ -182,6 +186,9 @@ namespace AlibabaCloud typedef Outcome DescribeDBInstanceUsageOutcome; typedef std::future DescribeDBInstanceUsageOutcomeCallable; typedef std::function&)> DescribeDBInstanceUsageAsyncHandler; + typedef Outcome DescribeDeletedInstancesOutcome; + typedef std::future DescribeDeletedInstancesOutcomeCallable; + typedef std::function&)> DescribeDeletedInstancesAsyncHandler; typedef Outcome DescribeEndpointsOutcome; typedef std::future DescribeEndpointsOutcomeCallable; typedef std::function&)> DescribeEndpointsAsyncHandler; @@ -251,6 +258,9 @@ namespace AlibabaCloud typedef Outcome ModifyUIAccountPasswordOutcome; typedef std::future ModifyUIAccountPasswordOutcomeCallable; typedef std::function&)> ModifyUIAccountPasswordAsyncHandler; + typedef Outcome PurgeInstanceOutcome; + typedef std::future PurgeInstanceOutcomeCallable; + typedef std::function&)> PurgeInstanceAsyncHandler; typedef Outcome QueryHBaseHaDBOutcome; typedef std::future QueryHBaseHaDBOutcomeCallable; typedef std::function&)> QueryHBaseHaDBAsyncHandler; @@ -337,6 +347,9 @@ namespace AlibabaCloud DescribeDBInstanceUsageOutcome describeDBInstanceUsage(const Model::DescribeDBInstanceUsageRequest &request)const; void describeDBInstanceUsageAsync(const Model::DescribeDBInstanceUsageRequest& request, const DescribeDBInstanceUsageAsyncHandler& handler, const std::shared_ptr& context = nullptr) const; DescribeDBInstanceUsageOutcomeCallable describeDBInstanceUsageCallable(const Model::DescribeDBInstanceUsageRequest& request) const; + DescribeDeletedInstancesOutcome describeDeletedInstances(const Model::DescribeDeletedInstancesRequest &request)const; + void describeDeletedInstancesAsync(const Model::DescribeDeletedInstancesRequest& request, const DescribeDeletedInstancesAsyncHandler& handler, const std::shared_ptr& context = nullptr) const; + DescribeDeletedInstancesOutcomeCallable describeDeletedInstancesCallable(const Model::DescribeDeletedInstancesRequest& request) const; DescribeEndpointsOutcome describeEndpoints(const Model::DescribeEndpointsRequest &request)const; void describeEndpointsAsync(const Model::DescribeEndpointsRequest& request, const DescribeEndpointsAsyncHandler& handler, const std::shared_ptr& context = nullptr) const; DescribeEndpointsOutcomeCallable describeEndpointsCallable(const Model::DescribeEndpointsRequest& request) const; @@ -406,6 +419,9 @@ namespace AlibabaCloud ModifyUIAccountPasswordOutcome modifyUIAccountPassword(const Model::ModifyUIAccountPasswordRequest &request)const; void modifyUIAccountPasswordAsync(const Model::ModifyUIAccountPasswordRequest& request, const ModifyUIAccountPasswordAsyncHandler& handler, const std::shared_ptr& context = nullptr) const; ModifyUIAccountPasswordOutcomeCallable modifyUIAccountPasswordCallable(const Model::ModifyUIAccountPasswordRequest& request) const; + PurgeInstanceOutcome purgeInstance(const Model::PurgeInstanceRequest &request)const; + void purgeInstanceAsync(const Model::PurgeInstanceRequest& request, const PurgeInstanceAsyncHandler& handler, const std::shared_ptr& context = nullptr) const; + PurgeInstanceOutcomeCallable purgeInstanceCallable(const Model::PurgeInstanceRequest& request) const; QueryHBaseHaDBOutcome queryHBaseHaDB(const Model::QueryHBaseHaDBRequest &request)const; void queryHBaseHaDBAsync(const Model::QueryHBaseHaDBRequest& request, const QueryHBaseHaDBAsyncHandler& handler, const std::shared_ptr& context = nullptr) const; QueryHBaseHaDBOutcomeCallable queryHBaseHaDBCallable(const Model::QueryHBaseHaDBRequest& request) const; diff --git a/hbase/include/alibabacloud/hbase/model/DescribeDeletedInstancesRequest.h b/hbase/include/alibabacloud/hbase/model/DescribeDeletedInstancesRequest.h new file mode 100644 index 000000000..bfa41b468 --- /dev/null +++ b/hbase/include/alibabacloud/hbase/model/DescribeDeletedInstancesRequest.h @@ -0,0 +1,54 @@ +/* + * Copyright 2009-2017 Alibaba Cloud All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef ALIBABACLOUD_HBASE_MODEL_DESCRIBEDELETEDINSTANCESREQUEST_H_ +#define ALIBABACLOUD_HBASE_MODEL_DESCRIBEDELETEDINSTANCESREQUEST_H_ + +#include +#include +#include +#include + +namespace AlibabaCloud +{ + namespace HBase + { + namespace Model + { + class ALIBABACLOUD_HBASE_EXPORT DescribeDeletedInstancesRequest : public RpcServiceRequest + { + + public: + DescribeDeletedInstancesRequest(); + ~DescribeDeletedInstancesRequest(); + + int getPageNumber()const; + void setPageNumber(int pageNumber); + std::string getRegionId()const; + void setRegionId(const std::string& regionId); + int getPageSize()const; + void setPageSize(int pageSize); + + private: + int pageNumber_; + std::string regionId_; + int pageSize_; + + }; + } + } +} +#endif // !ALIBABACLOUD_HBASE_MODEL_DESCRIBEDELETEDINSTANCESREQUEST_H_ \ No newline at end of file diff --git a/hbase/include/alibabacloud/hbase/model/DescribeDeletedInstancesResult.h b/hbase/include/alibabacloud/hbase/model/DescribeDeletedInstancesResult.h new file mode 100644 index 000000000..c723de93c --- /dev/null +++ b/hbase/include/alibabacloud/hbase/model/DescribeDeletedInstancesResult.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_HBASE_MODEL_DESCRIBEDELETEDINSTANCESRESULT_H_ +#define ALIBABACLOUD_HBASE_MODEL_DESCRIBEDELETEDINSTANCESRESULT_H_ + +#include +#include +#include +#include +#include + +namespace AlibabaCloud +{ + namespace HBase + { + namespace Model + { + class ALIBABACLOUD_HBASE_EXPORT DescribeDeletedInstancesResult : public ServiceResult + { + public: + struct Instance + { + std::string instanceName; + std::string status; + std::string majorVersion; + std::string moduleStackVersion; + std::string parentId; + std::string createdTime; + std::string zoneId; + std::string instanceId; + std::string deleteTime; + std::string regionId; + std::string clusterType; + std::string engine; + }; + + + DescribeDeletedInstancesResult(); + explicit DescribeDeletedInstancesResult(const std::string &payload); + ~DescribeDeletedInstancesResult(); + std::vector getInstances()const; + long getTotalCount()const; + int getPageSize()const; + int getPageNumber()const; + + protected: + void parse(const std::string &payload); + private: + std::vector instances_; + long totalCount_; + int pageSize_; + int pageNumber_; + + }; + } + } +} +#endif // !ALIBABACLOUD_HBASE_MODEL_DESCRIBEDELETEDINSTANCESRESULT_H_ \ No newline at end of file diff --git a/hbase/include/alibabacloud/hbase/model/DescribeInstanceResult.h b/hbase/include/alibabacloud/hbase/model/DescribeInstanceResult.h index 6906070c0..6e102dd67 100644 --- a/hbase/include/alibabacloud/hbase/model/DescribeInstanceResult.h +++ b/hbase/include/alibabacloud/hbase/model/DescribeInstanceResult.h @@ -70,6 +70,7 @@ namespace AlibabaCloud std::string getColdStorageStatus()const; std::string getMinorVersion()const; std::string getCreatedTimeUTC()const; + int getDuration()const; std::string getPayType()const; bool getIsMultiModel()const; std::string getClusterType()const; @@ -77,6 +78,7 @@ namespace AlibabaCloud std::string getInstanceName()const; int getMasterNodeCount()const; std::string getVpcId()const; + bool getAutoRenewal()const; std::string getCoreDiskType()const; std::string getRegionId()const; std::string getExpireTime()const; @@ -114,6 +116,7 @@ namespace AlibabaCloud std::string coldStorageStatus_; std::string minorVersion_; std::string createdTimeUTC_; + int duration_; std::string payType_; bool isMultiModel_; std::string clusterType_; @@ -121,6 +124,7 @@ namespace AlibabaCloud std::string instanceName_; int masterNodeCount_; std::string vpcId_; + bool autoRenewal_; std::string coreDiskType_; std::string regionId_; std::string expireTime_; diff --git a/hbase/include/alibabacloud/hbase/model/DescribeInstancesResult.h b/hbase/include/alibabacloud/hbase/model/DescribeInstancesResult.h index 84f3ecdb6..0b16c95a5 100644 --- a/hbase/include/alibabacloud/hbase/model/DescribeInstancesResult.h +++ b/hbase/include/alibabacloud/hbase/model/DescribeInstancesResult.h @@ -63,12 +63,14 @@ namespace AlibabaCloud std::string clusterId; std::string coldStorageStatus; std::string createdTimeUTC; + int duration; std::string payType; std::string clusterType; std::string vswitchId; std::string instanceName; int masterNodeCount; std::string vpcId; + bool autoRenewal; std::string coreDiskType; std::string regionId; std::string expireTime; diff --git a/hbase/include/alibabacloud/hbase/model/PurgeInstanceRequest.h b/hbase/include/alibabacloud/hbase/model/PurgeInstanceRequest.h new file mode 100644 index 000000000..7f62d50f3 --- /dev/null +++ b/hbase/include/alibabacloud/hbase/model/PurgeInstanceRequest.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_HBASE_MODEL_PURGEINSTANCEREQUEST_H_ +#define ALIBABACLOUD_HBASE_MODEL_PURGEINSTANCEREQUEST_H_ + +#include +#include +#include +#include + +namespace AlibabaCloud +{ + namespace HBase + { + namespace Model + { + class ALIBABACLOUD_HBASE_EXPORT PurgeInstanceRequest : public RpcServiceRequest + { + + public: + PurgeInstanceRequest(); + ~PurgeInstanceRequest(); + + std::string getClusterId()const; + void setClusterId(const std::string& clusterId); + + private: + std::string clusterId_; + + }; + } + } +} +#endif // !ALIBABACLOUD_HBASE_MODEL_PURGEINSTANCEREQUEST_H_ \ No newline at end of file diff --git a/hbase/include/alibabacloud/hbase/model/PurgeInstanceResult.h b/hbase/include/alibabacloud/hbase/model/PurgeInstanceResult.h new file mode 100644 index 000000000..e5002788d --- /dev/null +++ b/hbase/include/alibabacloud/hbase/model/PurgeInstanceResult.h @@ -0,0 +1,49 @@ +/* + * Copyright 2009-2017 Alibaba Cloud All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#ifndef ALIBABACLOUD_HBASE_MODEL_PURGEINSTANCERESULT_H_ +#define ALIBABACLOUD_HBASE_MODEL_PURGEINSTANCERESULT_H_ + +#include +#include +#include +#include +#include + +namespace AlibabaCloud +{ + namespace HBase + { + namespace Model + { + class ALIBABACLOUD_HBASE_EXPORT PurgeInstanceResult : public ServiceResult + { + public: + + + PurgeInstanceResult(); + explicit PurgeInstanceResult(const std::string &payload); + ~PurgeInstanceResult(); + + protected: + void parse(const std::string &payload); + private: + + }; + } + } +} +#endif // !ALIBABACLOUD_HBASE_MODEL_PURGEINSTANCERESULT_H_ \ No newline at end of file diff --git a/hbase/src/HBaseClient.cc b/hbase/src/HBaseClient.cc index d15dec6ba..cca0abd67 100644 --- a/hbase/src/HBaseClient.cc +++ b/hbase/src/HBaseClient.cc @@ -663,6 +663,42 @@ HBaseClient::DescribeDBInstanceUsageOutcomeCallable HBaseClient::describeDBInsta return task->get_future(); } +HBaseClient::DescribeDeletedInstancesOutcome HBaseClient::describeDeletedInstances(const DescribeDeletedInstancesRequest &request) const +{ + auto endpointOutcome = endpointProvider_->getEndpoint(); + if (!endpointOutcome.isSuccess()) + return DescribeDeletedInstancesOutcome(endpointOutcome.error()); + + auto outcome = makeRequest(endpointOutcome.result(), request); + + if (outcome.isSuccess()) + return DescribeDeletedInstancesOutcome(DescribeDeletedInstancesResult(outcome.result())); + else + return DescribeDeletedInstancesOutcome(outcome.error()); +} + +void HBaseClient::describeDeletedInstancesAsync(const DescribeDeletedInstancesRequest& request, const DescribeDeletedInstancesAsyncHandler& handler, const std::shared_ptr& context) const +{ + auto fn = [this, request, handler, context]() + { + handler(this, request, describeDeletedInstances(request), context); + }; + + asyncExecute(new Runnable(fn)); +} + +HBaseClient::DescribeDeletedInstancesOutcomeCallable HBaseClient::describeDeletedInstancesCallable(const DescribeDeletedInstancesRequest &request) const +{ + auto task = std::make_shared>( + [this, request]() + { + return this->describeDeletedInstances(request); + }); + + asyncExecute(new Runnable([task]() { (*task)(); })); + return task->get_future(); +} + HBaseClient::DescribeEndpointsOutcome HBaseClient::describeEndpoints(const DescribeEndpointsRequest &request) const { auto endpointOutcome = endpointProvider_->getEndpoint(); @@ -1491,6 +1527,42 @@ HBaseClient::ModifyUIAccountPasswordOutcomeCallable HBaseClient::modifyUIAccount return task->get_future(); } +HBaseClient::PurgeInstanceOutcome HBaseClient::purgeInstance(const PurgeInstanceRequest &request) const +{ + auto endpointOutcome = endpointProvider_->getEndpoint(); + if (!endpointOutcome.isSuccess()) + return PurgeInstanceOutcome(endpointOutcome.error()); + + auto outcome = makeRequest(endpointOutcome.result(), request); + + if (outcome.isSuccess()) + return PurgeInstanceOutcome(PurgeInstanceResult(outcome.result())); + else + return PurgeInstanceOutcome(outcome.error()); +} + +void HBaseClient::purgeInstanceAsync(const PurgeInstanceRequest& request, const PurgeInstanceAsyncHandler& handler, const std::shared_ptr& context) const +{ + auto fn = [this, request, handler, context]() + { + handler(this, request, purgeInstance(request), context); + }; + + asyncExecute(new Runnable(fn)); +} + +HBaseClient::PurgeInstanceOutcomeCallable HBaseClient::purgeInstanceCallable(const PurgeInstanceRequest &request) const +{ + auto task = std::make_shared>( + [this, request]() + { + return this->purgeInstance(request); + }); + + asyncExecute(new Runnable([task]() { (*task)(); })); + return task->get_future(); +} + HBaseClient::QueryHBaseHaDBOutcome HBaseClient::queryHBaseHaDB(const QueryHBaseHaDBRequest &request) const { auto endpointOutcome = endpointProvider_->getEndpoint(); diff --git a/hbase/src/model/DescribeDeletedInstancesRequest.cc b/hbase/src/model/DescribeDeletedInstancesRequest.cc new file mode 100644 index 000000000..c24a36e95 --- /dev/null +++ b/hbase/src/model/DescribeDeletedInstancesRequest.cc @@ -0,0 +1,62 @@ +/* + * Copyright 2009-2017 Alibaba Cloud All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include + +using AlibabaCloud::HBase::Model::DescribeDeletedInstancesRequest; + +DescribeDeletedInstancesRequest::DescribeDeletedInstancesRequest() : + RpcServiceRequest("hbase", "2019-01-01", "DescribeDeletedInstances") +{ + setMethod(HttpRequest::Method::Post); +} + +DescribeDeletedInstancesRequest::~DescribeDeletedInstancesRequest() +{} + +int DescribeDeletedInstancesRequest::getPageNumber()const +{ + return pageNumber_; +} + +void DescribeDeletedInstancesRequest::setPageNumber(int pageNumber) +{ + pageNumber_ = pageNumber; + setParameter("PageNumber", std::to_string(pageNumber)); +} + +std::string DescribeDeletedInstancesRequest::getRegionId()const +{ + return regionId_; +} + +void DescribeDeletedInstancesRequest::setRegionId(const std::string& regionId) +{ + regionId_ = regionId; + setParameter("RegionId", regionId); +} + +int DescribeDeletedInstancesRequest::getPageSize()const +{ + return pageSize_; +} + +void DescribeDeletedInstancesRequest::setPageSize(int pageSize) +{ + pageSize_ = pageSize; + setParameter("PageSize", std::to_string(pageSize)); +} + diff --git a/hbase/src/model/DescribeDeletedInstancesResult.cc b/hbase/src/model/DescribeDeletedInstancesResult.cc new file mode 100644 index 000000000..22d6c9bad --- /dev/null +++ b/hbase/src/model/DescribeDeletedInstancesResult.cc @@ -0,0 +1,100 @@ +/* + * 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::HBase; +using namespace AlibabaCloud::HBase::Model; + +DescribeDeletedInstancesResult::DescribeDeletedInstancesResult() : + ServiceResult() +{} + +DescribeDeletedInstancesResult::DescribeDeletedInstancesResult(const std::string &payload) : + ServiceResult() +{ + parse(payload); +} + +DescribeDeletedInstancesResult::~DescribeDeletedInstancesResult() +{} + +void DescribeDeletedInstancesResult::parse(const std::string &payload) +{ + Json::Reader reader; + Json::Value value; + reader.parse(payload, value); + setRequestId(value["RequestId"].asString()); + auto allInstancesNode = value["Instances"]["Instance"]; + for (auto valueInstancesInstance : allInstancesNode) + { + Instance instancesObject; + if(!valueInstancesInstance["InstanceId"].isNull()) + instancesObject.instanceId = valueInstancesInstance["InstanceId"].asString(); + if(!valueInstancesInstance["InstanceName"].isNull()) + instancesObject.instanceName = valueInstancesInstance["InstanceName"].asString(); + if(!valueInstancesInstance["Status"].isNull()) + instancesObject.status = valueInstancesInstance["Status"].asString(); + if(!valueInstancesInstance["MajorVersion"].isNull()) + instancesObject.majorVersion = valueInstancesInstance["MajorVersion"].asString(); + if(!valueInstancesInstance["Engine"].isNull()) + instancesObject.engine = valueInstancesInstance["Engine"].asString(); + if(!valueInstancesInstance["RegionId"].isNull()) + instancesObject.regionId = valueInstancesInstance["RegionId"].asString(); + if(!valueInstancesInstance["ZoneId"].isNull()) + instancesObject.zoneId = valueInstancesInstance["ZoneId"].asString(); + if(!valueInstancesInstance["CreatedTime"].isNull()) + instancesObject.createdTime = valueInstancesInstance["CreatedTime"].asString(); + if(!valueInstancesInstance["DeleteTime"].isNull()) + instancesObject.deleteTime = valueInstancesInstance["DeleteTime"].asString(); + if(!valueInstancesInstance["ClusterType"].isNull()) + instancesObject.clusterType = valueInstancesInstance["ClusterType"].asString(); + if(!valueInstancesInstance["ModuleStackVersion"].isNull()) + instancesObject.moduleStackVersion = valueInstancesInstance["ModuleStackVersion"].asString(); + if(!valueInstancesInstance["ParentId"].isNull()) + instancesObject.parentId = valueInstancesInstance["ParentId"].asString(); + instances_.push_back(instancesObject); + } + if(!value["TotalCount"].isNull()) + totalCount_ = std::stol(value["TotalCount"].asString()); + if(!value["PageNumber"].isNull()) + pageNumber_ = std::stoi(value["PageNumber"].asString()); + if(!value["PageSize"].isNull()) + pageSize_ = std::stoi(value["PageSize"].asString()); + +} + +std::vector DescribeDeletedInstancesResult::getInstances()const +{ + return instances_; +} + +long DescribeDeletedInstancesResult::getTotalCount()const +{ + return totalCount_; +} + +int DescribeDeletedInstancesResult::getPageSize()const +{ + return pageSize_; +} + +int DescribeDeletedInstancesResult::getPageNumber()const +{ + return pageNumber_; +} + diff --git a/hbase/src/model/DescribeInstanceResult.cc b/hbase/src/model/DescribeInstanceResult.cc index 7651d765d..3c5e6fa3f 100644 --- a/hbase/src/model/DescribeInstanceResult.cc +++ b/hbase/src/model/DescribeInstanceResult.cc @@ -127,6 +127,10 @@ void DescribeInstanceResult::parse(const std::string &payload) moduleId_ = std::stoi(value["ModuleId"].asString()); if(!value["ModuleStackVersion"].isNull()) moduleStackVersion_ = value["ModuleStackVersion"].asString(); + if(!value["AutoRenewal"].isNull()) + autoRenewal_ = value["AutoRenewal"].asString() == "true"; + if(!value["Duration"].isNull()) + duration_ = std::stoi(value["Duration"].asString()); } @@ -270,6 +274,11 @@ std::string DescribeInstanceResult::getCreatedTimeUTC()const return createdTimeUTC_; } +int DescribeInstanceResult::getDuration()const +{ + return duration_; +} + std::string DescribeInstanceResult::getPayType()const { return payType_; @@ -305,6 +314,11 @@ std::string DescribeInstanceResult::getVpcId()const return vpcId_; } +bool DescribeInstanceResult::getAutoRenewal()const +{ + return autoRenewal_; +} + std::string DescribeInstanceResult::getCoreDiskType()const { return coreDiskType_; diff --git a/hbase/src/model/DescribeInstancesResult.cc b/hbase/src/model/DescribeInstancesResult.cc index 3ca566315..fb472670e 100644 --- a/hbase/src/model/DescribeInstancesResult.cc +++ b/hbase/src/model/DescribeInstancesResult.cc @@ -111,6 +111,10 @@ void DescribeInstancesResult::parse(const std::string &payload) instancesObject.moduleStackVersion = valueInstancesInstance["ModuleStackVersion"].asString(); if(!valueInstancesInstance["CoreDiskCount"].isNull()) instancesObject.coreDiskCount = valueInstancesInstance["CoreDiskCount"].asString(); + if(!valueInstancesInstance["AutoRenewal"].isNull()) + instancesObject.autoRenewal = valueInstancesInstance["AutoRenewal"].asString() == "true"; + if(!valueInstancesInstance["Duration"].isNull()) + instancesObject.duration = std::stoi(valueInstancesInstance["Duration"].asString()); auto allTagsNode = allInstancesNode["Tags"]["Tag"]; for (auto allInstancesNodeTagsTag : allTagsNode) { diff --git a/hbase/src/model/PurgeInstanceRequest.cc b/hbase/src/model/PurgeInstanceRequest.cc new file mode 100644 index 000000000..2594fd503 --- /dev/null +++ b/hbase/src/model/PurgeInstanceRequest.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::HBase::Model::PurgeInstanceRequest; + +PurgeInstanceRequest::PurgeInstanceRequest() : + RpcServiceRequest("hbase", "2019-01-01", "PurgeInstance") +{ + setMethod(HttpRequest::Method::Post); +} + +PurgeInstanceRequest::~PurgeInstanceRequest() +{} + +std::string PurgeInstanceRequest::getClusterId()const +{ + return clusterId_; +} + +void PurgeInstanceRequest::setClusterId(const std::string& clusterId) +{ + clusterId_ = clusterId; + setParameter("ClusterId", clusterId); +} + diff --git a/hbase/src/model/PurgeInstanceResult.cc b/hbase/src/model/PurgeInstanceResult.cc new file mode 100644 index 000000000..868bbcabb --- /dev/null +++ b/hbase/src/model/PurgeInstanceResult.cc @@ -0,0 +1,44 @@ +/* + * Copyright 2009-2017 Alibaba Cloud All rights reserved. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +#include +#include + +using namespace AlibabaCloud::HBase; +using namespace AlibabaCloud::HBase::Model; + +PurgeInstanceResult::PurgeInstanceResult() : + ServiceResult() +{} + +PurgeInstanceResult::PurgeInstanceResult(const std::string &payload) : + ServiceResult() +{ + parse(payload); +} + +PurgeInstanceResult::~PurgeInstanceResult() +{} + +void PurgeInstanceResult::parse(const std::string &payload) +{ + Json::Reader reader; + Json::Value value; + reader.parse(payload, value); + setRequestId(value["RequestId"].asString()); + +} +