Support create for serverlesshbase.

This commit is contained in:
sdk-team
2020-10-16 08:14:07 +00:00
parent 076ff65f85
commit e72934f959
10 changed files with 269 additions and 0 deletions

View File

@@ -45,6 +45,8 @@ set(hbase_public_header_model
include/alibabacloud/hbase/model/DeleteInstanceResult.h
include/alibabacloud/hbase/model/DeleteMultiZoneClusterRequest.h
include/alibabacloud/hbase/model/DeleteMultiZoneClusterResult.h
include/alibabacloud/hbase/model/DeleteServerlessClusterRequest.h
include/alibabacloud/hbase/model/DeleteServerlessClusterResult.h
include/alibabacloud/hbase/model/DeleteUserHdfsInfoRequest.h
include/alibabacloud/hbase/model/DeleteUserHdfsInfoResult.h
include/alibabacloud/hbase/model/DescribeAvailableResourceRequest.h
@@ -174,6 +176,8 @@ set(hbase_src
src/model/DeleteInstanceResult.cc
src/model/DeleteMultiZoneClusterRequest.cc
src/model/DeleteMultiZoneClusterResult.cc
src/model/DeleteServerlessClusterRequest.cc
src/model/DeleteServerlessClusterResult.cc
src/model/DeleteUserHdfsInfoRequest.cc
src/model/DeleteUserHdfsInfoResult.cc
src/model/DescribeAvailableResourceRequest.cc

View File

@@ -46,6 +46,8 @@
#include "model/DeleteInstanceResult.h"
#include "model/DeleteMultiZoneClusterRequest.h"
#include "model/DeleteMultiZoneClusterResult.h"
#include "model/DeleteServerlessClusterRequest.h"
#include "model/DeleteServerlessClusterResult.h"
#include "model/DeleteUserHdfsInfoRequest.h"
#include "model/DeleteUserHdfsInfoResult.h"
#include "model/DescribeAvailableResourceRequest.h"
@@ -193,6 +195,9 @@ namespace AlibabaCloud
typedef Outcome<Error, Model::DeleteMultiZoneClusterResult> DeleteMultiZoneClusterOutcome;
typedef std::future<DeleteMultiZoneClusterOutcome> DeleteMultiZoneClusterOutcomeCallable;
typedef std::function<void(const HBaseClient*, const Model::DeleteMultiZoneClusterRequest&, const DeleteMultiZoneClusterOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteMultiZoneClusterAsyncHandler;
typedef Outcome<Error, Model::DeleteServerlessClusterResult> DeleteServerlessClusterOutcome;
typedef std::future<DeleteServerlessClusterOutcome> DeleteServerlessClusterOutcomeCallable;
typedef std::function<void(const HBaseClient*, const Model::DeleteServerlessClusterRequest&, const DeleteServerlessClusterOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteServerlessClusterAsyncHandler;
typedef Outcome<Error, Model::DeleteUserHdfsInfoResult> DeleteUserHdfsInfoOutcome;
typedef std::future<DeleteUserHdfsInfoOutcome> DeleteUserHdfsInfoOutcomeCallable;
typedef std::function<void(const HBaseClient*, const Model::DeleteUserHdfsInfoRequest&, const DeleteUserHdfsInfoOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteUserHdfsInfoAsyncHandler;
@@ -387,6 +392,9 @@ namespace AlibabaCloud
DeleteMultiZoneClusterOutcome deleteMultiZoneCluster(const Model::DeleteMultiZoneClusterRequest &request)const;
void deleteMultiZoneClusterAsync(const Model::DeleteMultiZoneClusterRequest& request, const DeleteMultiZoneClusterAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
DeleteMultiZoneClusterOutcomeCallable deleteMultiZoneClusterCallable(const Model::DeleteMultiZoneClusterRequest& request) const;
DeleteServerlessClusterOutcome deleteServerlessCluster(const Model::DeleteServerlessClusterRequest &request)const;
void deleteServerlessClusterAsync(const Model::DeleteServerlessClusterRequest& request, const DeleteServerlessClusterAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
DeleteServerlessClusterOutcomeCallable deleteServerlessClusterCallable(const Model::DeleteServerlessClusterRequest& request) const;
DeleteUserHdfsInfoOutcome deleteUserHdfsInfo(const Model::DeleteUserHdfsInfoRequest &request)const;
void deleteUserHdfsInfoAsync(const Model::DeleteUserHdfsInfoRequest& request, const DeleteUserHdfsInfoAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
DeleteUserHdfsInfoOutcomeCallable deleteUserHdfsInfoCallable(const Model::DeleteUserHdfsInfoRequest& request) const;

View File

@@ -39,12 +39,14 @@ namespace AlibabaCloud
~CreateServerlessClusterResult();
std::string getClusterId()const;
std::string getOrderId()const;
std::string getPassWord()const;
protected:
void parse(const std::string &payload);
private:
std::string clusterId_;
std::string orderId_;
std::string passWord_;
};
}

View File

@@ -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_DELETESERVERLESSCLUSTERREQUEST_H_
#define ALIBABACLOUD_HBASE_MODEL_DELETESERVERLESSCLUSTERREQUEST_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 DeleteServerlessClusterRequest : public RpcServiceRequest
{
public:
DeleteServerlessClusterRequest();
~DeleteServerlessClusterRequest();
std::string getClusterId()const;
void setClusterId(const std::string& clusterId);
std::string getRegionId()const;
void setRegionId(const std::string& regionId);
std::string getZoneId()const;
void setZoneId(const std::string& zoneId);
private:
std::string clusterId_;
std::string regionId_;
std::string zoneId_;
};
}
}
}
#endif // !ALIBABACLOUD_HBASE_MODEL_DELETESERVERLESSCLUSTERREQUEST_H_

View File

@@ -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_DELETESERVERLESSCLUSTERRESULT_H_
#define ALIBABACLOUD_HBASE_MODEL_DELETESERVERLESSCLUSTERRESULT_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 DeleteServerlessClusterResult : public ServiceResult
{
public:
DeleteServerlessClusterResult();
explicit DeleteServerlessClusterResult(const std::string &payload);
~DeleteServerlessClusterResult();
protected:
void parse(const std::string &payload);
private:
};
}
}
}
#endif // !ALIBABACLOUD_HBASE_MODEL_DELETESERVERLESSCLUSTERRESULT_H_

View File

@@ -483,6 +483,42 @@ HBaseClient::DeleteMultiZoneClusterOutcomeCallable HBaseClient::deleteMultiZoneC
return task->get_future();
}
HBaseClient::DeleteServerlessClusterOutcome HBaseClient::deleteServerlessCluster(const DeleteServerlessClusterRequest &request) const
{
auto endpointOutcome = endpointProvider_->getEndpoint();
if (!endpointOutcome.isSuccess())
return DeleteServerlessClusterOutcome(endpointOutcome.error());
auto outcome = makeRequest(endpointOutcome.result(), request);
if (outcome.isSuccess())
return DeleteServerlessClusterOutcome(DeleteServerlessClusterResult(outcome.result()));
else
return DeleteServerlessClusterOutcome(outcome.error());
}
void HBaseClient::deleteServerlessClusterAsync(const DeleteServerlessClusterRequest& request, const DeleteServerlessClusterAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
{
auto fn = [this, request, handler, context]()
{
handler(this, request, deleteServerlessCluster(request), context);
};
asyncExecute(new Runnable(fn));
}
HBaseClient::DeleteServerlessClusterOutcomeCallable HBaseClient::deleteServerlessClusterCallable(const DeleteServerlessClusterRequest &request) const
{
auto task = std::make_shared<std::packaged_task<DeleteServerlessClusterOutcome()>>(
[this, request]()
{
return this->deleteServerlessCluster(request);
});
asyncExecute(new Runnable([task]() { (*task)(); }));
return task->get_future();
}
HBaseClient::DeleteUserHdfsInfoOutcome HBaseClient::deleteUserHdfsInfo(const DeleteUserHdfsInfoRequest &request) const
{
auto endpointOutcome = endpointProvider_->getEndpoint();

View File

@@ -43,6 +43,8 @@ void CreateServerlessClusterResult::parse(const std::string &payload)
clusterId_ = value["ClusterId"].asString();
if(!value["OrderId"].isNull())
orderId_ = value["OrderId"].asString();
if(!value["PassWord"].isNull())
passWord_ = value["PassWord"].asString();
}
@@ -56,3 +58,8 @@ std::string CreateServerlessClusterResult::getOrderId()const
return orderId_;
}
std::string CreateServerlessClusterResult::getPassWord()const
{
return passWord_;
}

View File

@@ -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 <alibabacloud/hbase/model/DeleteServerlessClusterRequest.h>
using AlibabaCloud::HBase::Model::DeleteServerlessClusterRequest;
DeleteServerlessClusterRequest::DeleteServerlessClusterRequest() :
RpcServiceRequest("hbase", "2019-01-01", "DeleteServerlessCluster")
{
setMethod(HttpRequest::Method::Post);
}
DeleteServerlessClusterRequest::~DeleteServerlessClusterRequest()
{}
std::string DeleteServerlessClusterRequest::getClusterId()const
{
return clusterId_;
}
void DeleteServerlessClusterRequest::setClusterId(const std::string& clusterId)
{
clusterId_ = clusterId;
setParameter("ClusterId", clusterId);
}
std::string DeleteServerlessClusterRequest::getRegionId()const
{
return regionId_;
}
void DeleteServerlessClusterRequest::setRegionId(const std::string& regionId)
{
regionId_ = regionId;
setParameter("RegionId", regionId);
}
std::string DeleteServerlessClusterRequest::getZoneId()const
{
return zoneId_;
}
void DeleteServerlessClusterRequest::setZoneId(const std::string& zoneId)
{
zoneId_ = zoneId;
setParameter("ZoneId", zoneId);
}

View File

@@ -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 <alibabacloud/hbase/model/DeleteServerlessClusterResult.h>
#include <json/json.h>
using namespace AlibabaCloud::HBase;
using namespace AlibabaCloud::HBase::Model;
DeleteServerlessClusterResult::DeleteServerlessClusterResult() :
ServiceResult()
{}
DeleteServerlessClusterResult::DeleteServerlessClusterResult(const std::string &payload) :
ServiceResult()
{
parse(payload);
}
DeleteServerlessClusterResult::~DeleteServerlessClusterResult()
{}
void DeleteServerlessClusterResult::parse(const std::string &payload)
{
Json::Reader reader;
Json::Value value;
reader.parse(payload, value);
setRequestId(value["RequestId"].asString());
}