ImmediateDelete.

This commit is contained in:
sdk-team
2020-01-03 10:14:12 +08:00
parent 34e1a5148b
commit d9f10d6933
19 changed files with 397 additions and 15 deletions

View File

@@ -1,3 +1,9 @@
2020-01-03 Version 1.36.230
- ImmediateDelete.
- DescribeInstance CreateTimeUTC ExpireTimeUTC.
- DescribeInstances CreateTimeUTC ExpireTimeUTC.
- DescribeIpWhitelist Groups GroupName.
2019-12-31 Version 1.36.229
- Supported SQL SERVER support delete backup set according to time range.

View File

@@ -1 +1 @@
1.36.229
1.36.230

View File

@@ -53,6 +53,8 @@ set(hbase_public_header_model
include/alibabacloud/hbase/model/DescribeSecurityGroupsResult.h
include/alibabacloud/hbase/model/ListTagResourcesRequest.h
include/alibabacloud/hbase/model/ListTagResourcesResult.h
include/alibabacloud/hbase/model/ListTagsRequest.h
include/alibabacloud/hbase/model/ListTagsResult.h
include/alibabacloud/hbase/model/ModifyInstanceMaintainTimeRequest.h
include/alibabacloud/hbase/model/ModifyInstanceMaintainTimeResult.h
include/alibabacloud/hbase/model/ModifyInstanceNameRequest.h
@@ -118,6 +120,8 @@ set(hbase_src
src/model/DescribeSecurityGroupsResult.cc
src/model/ListTagResourcesRequest.cc
src/model/ListTagResourcesResult.cc
src/model/ListTagsRequest.cc
src/model/ListTagsResult.cc
src/model/ModifyInstanceMaintainTimeRequest.cc
src/model/ModifyInstanceMaintainTimeResult.cc
src/model/ModifyInstanceNameRequest.cc

View File

@@ -54,6 +54,8 @@
#include "model/DescribeSecurityGroupsResult.h"
#include "model/ListTagResourcesRequest.h"
#include "model/ListTagResourcesResult.h"
#include "model/ListTagsRequest.h"
#include "model/ListTagsResult.h"
#include "model/ModifyInstanceMaintainTimeRequest.h"
#include "model/ModifyInstanceMaintainTimeResult.h"
#include "model/ModifyInstanceNameRequest.h"
@@ -141,6 +143,9 @@ namespace AlibabaCloud
typedef Outcome<Error, Model::ListTagResourcesResult> ListTagResourcesOutcome;
typedef std::future<ListTagResourcesOutcome> ListTagResourcesOutcomeCallable;
typedef std::function<void(const HBaseClient*, const Model::ListTagResourcesRequest&, const ListTagResourcesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListTagResourcesAsyncHandler;
typedef Outcome<Error, Model::ListTagsResult> ListTagsOutcome;
typedef std::future<ListTagsOutcome> ListTagsOutcomeCallable;
typedef std::function<void(const HBaseClient*, const Model::ListTagsRequest&, const ListTagsOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ListTagsAsyncHandler;
typedef Outcome<Error, Model::ModifyInstanceMaintainTimeResult> ModifyInstanceMaintainTimeOutcome;
typedef std::future<ModifyInstanceMaintainTimeOutcome> ModifyInstanceMaintainTimeOutcomeCallable;
typedef std::function<void(const HBaseClient*, const Model::ModifyInstanceMaintainTimeRequest&, const ModifyInstanceMaintainTimeOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ModifyInstanceMaintainTimeAsyncHandler;
@@ -239,6 +244,9 @@ namespace AlibabaCloud
ListTagResourcesOutcome listTagResources(const Model::ListTagResourcesRequest &request)const;
void listTagResourcesAsync(const Model::ListTagResourcesRequest& request, const ListTagResourcesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
ListTagResourcesOutcomeCallable listTagResourcesCallable(const Model::ListTagResourcesRequest& request) const;
ListTagsOutcome listTags(const Model::ListTagsRequest &request)const;
void listTagsAsync(const Model::ListTagsRequest& request, const ListTagsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
ListTagsOutcomeCallable listTagsCallable(const Model::ListTagsRequest& request) const;
ModifyInstanceMaintainTimeOutcome modifyInstanceMaintainTime(const Model::ModifyInstanceMaintainTimeRequest &request)const;
void modifyInstanceMaintainTimeAsync(const Model::ModifyInstanceMaintainTimeRequest& request, const ModifyInstanceMaintainTimeAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
ModifyInstanceMaintainTimeOutcomeCallable modifyInstanceMaintainTimeCallable(const Model::ModifyInstanceMaintainTimeRequest& request) const;

View File

@@ -35,10 +35,13 @@ namespace AlibabaCloud
DeleteInstanceRequest();
~DeleteInstanceRequest();
bool getImmediateDeleteFlag()const;
void setImmediateDeleteFlag(bool immediateDeleteFlag);
std::string getClusterId()const;
void setClusterId(const std::string& clusterId);
private:
bool immediateDeleteFlag_;
std::string clusterId_;
};

View File

@@ -56,11 +56,13 @@ namespace AlibabaCloud
std::string getMajorVersion()const;
std::string getCoreDiskCount()const;
int getMasterDiskSize()const;
std::string getExpireTimeUTC()const;
std::string getZoneId()const;
std::string getInstanceId()const;
int getCoreNodeCount()const;
std::string getColdStorageStatus()const;
std::string getMinorVersion()const;
std::string getCreatedTimeUTC()const;
std::string getPayType()const;
std::string getVswitchId()const;
std::string getInstanceName()const;
@@ -89,11 +91,13 @@ namespace AlibabaCloud
std::string majorVersion_;
std::string coreDiskCount_;
int masterDiskSize_;
std::string expireTimeUTC_;
std::string zoneId_;
std::string instanceId_;
int coreNodeCount_;
std::string coldStorageStatus_;
std::string minorVersion_;
std::string createdTimeUTC_;
std::string payType_;
std::string vswitchId_;
std::string instanceName_;

View File

@@ -30,22 +30,36 @@ namespace AlibabaCloud
{
class ALIBABACLOUD_HBASE_EXPORT DescribeInstancesRequest : public RpcServiceRequest
{
struct Tag
{
std::string value;
std::string key;
};
public:
DescribeInstancesRequest();
~DescribeInstancesRequest();
std::string getClusterName()const;
void setClusterName(const std::string& clusterName);
int getPageNumber()const;
void setPageNumber(int pageNumber);
std::string getRegionId()const;
void setRegionId(const std::string& regionId);
int getPageSize()const;
void setPageSize(int pageSize);
std::vector<Tag> getTag()const;
void setTag(const std::vector<Tag>& tag);
std::string getDbType()const;
void setDbType(const std::string& dbType);
private:
std::string clusterName_;
int pageNumber_;
std::string regionId_;
int pageSize_;
std::vector<Tag> tag_;
std::string dbType_;
};
}

View File

@@ -34,28 +34,37 @@ namespace AlibabaCloud
public:
struct Instance
{
std::string status;
std::string majorVersion;
struct Tag
{
std::string value;
std::string key;
};
bool isHa;
std::string createdTime;
std::string masterInstanceType;
std::string networkType;
std::string coreInstanceType;
std::string masterDiskType;
std::vector<Instance::Tag> tags;
std::string engine;
std::string status;
std::string majorVersion;
int masterDiskSize;
std::string expireTimeUTC;
std::string zoneId;
std::string instanceId;
int coreNodeCount;
std::string coldStorageStatus;
std::string createdTimeUTC;
std::string payType;
std::string masterInstanceType;
std::string clusterType;
std::string vswitchId;
std::string instanceName;
int masterNodeCount;
std::string vpcId;
std::string coreDiskType;
std::string networkType;
std::string coreInstanceType;
std::string masterDiskType;
std::string regionId;
std::string expireTime;
std::string engine;
int coreDiskSize;
std::string backupStatus;
};

View File

@@ -32,17 +32,23 @@ namespace AlibabaCloud
class ALIBABACLOUD_HBASE_EXPORT DescribeIpWhitelistResult : public ServiceResult
{
public:
struct Group
{
std::string groupName;
int ipVersion;
std::vector<std::string> ipList;
};
DescribeIpWhitelistResult();
explicit DescribeIpWhitelistResult(const std::string &payload);
~DescribeIpWhitelistResult();
std::vector<std::string> getIpList()const;
std::vector<Group> getGroups()const;
protected:
void parse(const std::string &payload);
private:
std::vector<std::string> ipList_;
std::vector<Group> groups_;
};
}

View File

@@ -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_LISTTAGSREQUEST_H_
#define ALIBABACLOUD_HBASE_MODEL_LISTTAGSREQUEST_H_
#include <string>
#include <vector>
#include <alibabacloud/core/RpcServiceRequest.h>
#include <alibabacloud/hbase/HBaseExport.h>
namespace AlibabaCloud
{
namespace HBase
{
namespace Model
{
class ALIBABACLOUD_HBASE_EXPORT ListTagsRequest : public RpcServiceRequest
{
public:
ListTagsRequest();
~ListTagsRequest();
std::string getRegionId()const;
void setRegionId(const std::string& regionId);
private:
std::string regionId_;
};
}
}
}
#endif // !ALIBABACLOUD_HBASE_MODEL_LISTTAGSREQUEST_H_

View File

@@ -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_HBASE_MODEL_LISTTAGSRESULT_H_
#define ALIBABACLOUD_HBASE_MODEL_LISTTAGSRESULT_H_
#include <string>
#include <vector>
#include <utility>
#include <alibabacloud/core/ServiceResult.h>
#include <alibabacloud/hbase/HBaseExport.h>
namespace AlibabaCloud
{
namespace HBase
{
namespace Model
{
class ALIBABACLOUD_HBASE_EXPORT ListTagsResult : public ServiceResult
{
public:
struct Tag
{
std::string tagKey;
std::string tagValue;
};
ListTagsResult();
explicit ListTagsResult(const std::string &payload);
~ListTagsResult();
std::vector<Tag> getTags()const;
protected:
void parse(const std::string &payload);
private:
std::vector<Tag> tags_;
};
}
}
}
#endif // !ALIBABACLOUD_HBASE_MODEL_LISTTAGSRESULT_H_

View File

@@ -627,6 +627,42 @@ HBaseClient::ListTagResourcesOutcomeCallable HBaseClient::listTagResourcesCallab
return task->get_future();
}
HBaseClient::ListTagsOutcome HBaseClient::listTags(const ListTagsRequest &request) const
{
auto endpointOutcome = endpointProvider_->getEndpoint();
if (!endpointOutcome.isSuccess())
return ListTagsOutcome(endpointOutcome.error());
auto outcome = makeRequest(endpointOutcome.result(), request);
if (outcome.isSuccess())
return ListTagsOutcome(ListTagsResult(outcome.result()));
else
return ListTagsOutcome(outcome.error());
}
void HBaseClient::listTagsAsync(const ListTagsRequest& request, const ListTagsAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
{
auto fn = [this, request, handler, context]()
{
handler(this, request, listTags(request), context);
};
asyncExecute(new Runnable(fn));
}
HBaseClient::ListTagsOutcomeCallable HBaseClient::listTagsCallable(const ListTagsRequest &request) const
{
auto task = std::make_shared<std::packaged_task<ListTagsOutcome()>>(
[this, request]()
{
return this->listTags(request);
});
asyncExecute(new Runnable([task]() { (*task)(); }));
return task->get_future();
}
HBaseClient::ModifyInstanceMaintainTimeOutcome HBaseClient::modifyInstanceMaintainTime(const ModifyInstanceMaintainTimeRequest &request) const
{
auto endpointOutcome = endpointProvider_->getEndpoint();

View File

@@ -27,6 +27,17 @@ DeleteInstanceRequest::DeleteInstanceRequest() :
DeleteInstanceRequest::~DeleteInstanceRequest()
{}
bool DeleteInstanceRequest::getImmediateDeleteFlag()const
{
return immediateDeleteFlag_;
}
void DeleteInstanceRequest::setImmediateDeleteFlag(bool immediateDeleteFlag)
{
immediateDeleteFlag_ = immediateDeleteFlag;
setCoreParameter("ImmediateDeleteFlag", immediateDeleteFlag ? "true" : "false");
}
std::string DeleteInstanceRequest::getClusterId()const
{
return clusterId_;

View File

@@ -105,6 +105,10 @@ void DescribeInstanceResult::parse(const std::string &payload)
maintainStartTime_ = value["MaintainStartTime"].asString();
if(!value["MaintainEndTime"].isNull())
maintainEndTime_ = value["MaintainEndTime"].asString();
if(!value["CreatedTimeUTC"].isNull())
createdTimeUTC_ = value["CreatedTimeUTC"].asString();
if(!value["ExpireTimeUTC"].isNull())
expireTimeUTC_ = value["ExpireTimeUTC"].asString();
}
@@ -178,6 +182,11 @@ int DescribeInstanceResult::getMasterDiskSize()const
return masterDiskSize_;
}
std::string DescribeInstanceResult::getExpireTimeUTC()const
{
return expireTimeUTC_;
}
std::string DescribeInstanceResult::getZoneId()const
{
return zoneId_;
@@ -203,6 +212,11 @@ std::string DescribeInstanceResult::getMinorVersion()const
return minorVersion_;
}
std::string DescribeInstanceResult::getCreatedTimeUTC()const
{
return createdTimeUTC_;
}
std::string DescribeInstanceResult::getPayType()const
{
return payType_;

View File

@@ -27,6 +27,17 @@ DescribeInstancesRequest::DescribeInstancesRequest() :
DescribeInstancesRequest::~DescribeInstancesRequest()
{}
std::string DescribeInstancesRequest::getClusterName()const
{
return clusterName_;
}
void DescribeInstancesRequest::setClusterName(const std::string& clusterName)
{
clusterName_ = clusterName;
setCoreParameter("ClusterName", clusterName);
}
int DescribeInstancesRequest::getPageNumber()const
{
return pageNumber_;
@@ -60,3 +71,30 @@ void DescribeInstancesRequest::setPageSize(int pageSize)
setCoreParameter("PageSize", std::to_string(pageSize));
}
std::vector<DescribeInstancesRequest::Tag> DescribeInstancesRequest::getTag()const
{
return tag_;
}
void DescribeInstancesRequest::setTag(const std::vector<Tag>& tag)
{
tag_ = tag;
for(int dep1 = 0; dep1!= tag.size(); dep1++) {
auto tagObj = tag.at(dep1);
std::string tagObjStr = "Tag." + std::to_string(dep1);
setCoreParameter(tagObjStr + ".Value", tagObj.value);
setCoreParameter(tagObjStr + ".Key", tagObj.key);
}
}
std::string DescribeInstancesRequest::getDbType()const
{
return dbType_;
}
void DescribeInstancesRequest::setDbType(const std::string& dbType)
{
dbType_ = dbType;
setCoreParameter("DbType", dbType);
}

View File

@@ -91,6 +91,22 @@ void DescribeInstancesResult::parse(const std::string &payload)
instancesObject.coldStorageStatus = valueInstancesInstance["ColdStorageStatus"].asString();
if(!valueInstancesInstance["BackupStatus"].isNull())
instancesObject.backupStatus = valueInstancesInstance["BackupStatus"].asString();
if(!valueInstancesInstance["ClusterType"].isNull())
instancesObject.clusterType = valueInstancesInstance["ClusterType"].asString();
if(!valueInstancesInstance["CreatedTimeUTC"].isNull())
instancesObject.createdTimeUTC = valueInstancesInstance["CreatedTimeUTC"].asString();
if(!valueInstancesInstance["ExpireTimeUTC"].isNull())
instancesObject.expireTimeUTC = valueInstancesInstance["ExpireTimeUTC"].asString();
auto allTagsNode = allInstancesNode["Tags"]["Tag"];
for (auto allInstancesNodeTagsTag : allTagsNode)
{
Instance::Tag tagsObject;
if(!allInstancesNodeTagsTag["Key"].isNull())
tagsObject.key = allInstancesNodeTagsTag["Key"].asString();
if(!allInstancesNodeTagsTag["Value"].isNull())
tagsObject.value = allInstancesNodeTagsTag["Value"].asString();
instancesObject.tags.push_back(tagsObject);
}
instances_.push_back(instancesObject);
}
if(!value["TotalCount"].isNull())

View File

@@ -39,14 +39,24 @@ void DescribeIpWhitelistResult::parse(const std::string &payload)
Json::Value value;
reader.parse(payload, value);
setRequestId(value["RequestId"].asString());
auto allIpList = value["IpList"]["IP"];
for (const auto &item : allIpList)
ipList_.push_back(item.asString());
auto allGroupsNode = value["Groups"]["Group"];
for (auto valueGroupsGroup : allGroupsNode)
{
Group groupsObject;
if(!valueGroupsGroup["GroupName"].isNull())
groupsObject.groupName = valueGroupsGroup["GroupName"].asString();
if(!valueGroupsGroup["IpVersion"].isNull())
groupsObject.ipVersion = std::stoi(valueGroupsGroup["IpVersion"].asString());
auto allIpList = value["IpList"]["Ip"];
for (auto value : allIpList)
groupsObject.ipList.push_back(value.asString());
groups_.push_back(groupsObject);
}
}
std::vector<std::string> DescribeIpWhitelistResult::getIpList()const
std::vector<DescribeIpWhitelistResult::Group> DescribeIpWhitelistResult::getGroups()const
{
return ipList_;
return groups_;
}

View File

@@ -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 <alibabacloud/hbase/model/ListTagsRequest.h>
using AlibabaCloud::HBase::Model::ListTagsRequest;
ListTagsRequest::ListTagsRequest() :
RpcServiceRequest("hbase", "2019-01-01", "ListTags")
{
setMethod(HttpRequest::Method::Post);
}
ListTagsRequest::~ListTagsRequest()
{}
std::string ListTagsRequest::getRegionId()const
{
return regionId_;
}
void ListTagsRequest::setRegionId(const std::string& regionId)
{
regionId_ = regionId;
setCoreParameter("RegionId", regionId);
}

View File

@@ -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.
*/
#include <alibabacloud/hbase/model/ListTagsResult.h>
#include <json/json.h>
using namespace AlibabaCloud::HBase;
using namespace AlibabaCloud::HBase::Model;
ListTagsResult::ListTagsResult() :
ServiceResult()
{}
ListTagsResult::ListTagsResult(const std::string &payload) :
ServiceResult()
{
parse(payload);
}
ListTagsResult::~ListTagsResult()
{}
void ListTagsResult::parse(const std::string &payload)
{
Json::Reader reader;
Json::Value value;
reader.parse(payload, value);
setRequestId(value["RequestId"].asString());
auto allTagsNode = value["Tags"]["Tag"];
for (auto valueTagsTag : allTagsNode)
{
Tag tagsObject;
if(!valueTagsTag["TagKey"].isNull())
tagsObject.tagKey = valueTagsTag["TagKey"].asString();
if(!valueTagsTag["TagValue"].isNull())
tagsObject.tagValue = valueTagsTag["TagValue"].asString();
tags_.push_back(tagsObject);
}
}
std::vector<ListTagsResult::Tag> ListTagsResult::getTags()const
{
return tags_;
}