Add support for create hbaseue multizone instance.

This commit is contained in:
sdk-team
2020-05-27 14:17:37 +08:00
parent 95a93b89f1
commit ec5269015c
17 changed files with 878 additions and 1 deletions

View File

@@ -32,12 +32,16 @@
#include "model/CreateClusterResult.h"
#include "model/CreateHbaseHaSlbRequest.h"
#include "model/CreateHbaseHaSlbResult.h"
#include "model/CreateMultiZoneClusterRequest.h"
#include "model/CreateMultiZoneClusterResult.h"
#include "model/CreateRestorePlanRequest.h"
#include "model/CreateRestorePlanResult.h"
#include "model/DeleteHbaseHaSlbRequest.h"
#include "model/DeleteHbaseHaSlbResult.h"
#include "model/DeleteInstanceRequest.h"
#include "model/DeleteInstanceResult.h"
#include "model/DeleteMultiZoneClusterRequest.h"
#include "model/DeleteMultiZoneClusterResult.h"
#include "model/DeleteUserHdfsInfoRequest.h"
#include "model/DeleteUserHdfsInfoResult.h"
#include "model/DescribeAvailableResourceRequest.h"
@@ -142,6 +146,9 @@ namespace AlibabaCloud
typedef Outcome<Error, Model::CreateHbaseHaSlbResult> CreateHbaseHaSlbOutcome;
typedef std::future<CreateHbaseHaSlbOutcome> CreateHbaseHaSlbOutcomeCallable;
typedef std::function<void(const HBaseClient*, const Model::CreateHbaseHaSlbRequest&, const CreateHbaseHaSlbOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateHbaseHaSlbAsyncHandler;
typedef Outcome<Error, Model::CreateMultiZoneClusterResult> CreateMultiZoneClusterOutcome;
typedef std::future<CreateMultiZoneClusterOutcome> CreateMultiZoneClusterOutcomeCallable;
typedef std::function<void(const HBaseClient*, const Model::CreateMultiZoneClusterRequest&, const CreateMultiZoneClusterOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateMultiZoneClusterAsyncHandler;
typedef Outcome<Error, Model::CreateRestorePlanResult> CreateRestorePlanOutcome;
typedef std::future<CreateRestorePlanOutcome> CreateRestorePlanOutcomeCallable;
typedef std::function<void(const HBaseClient*, const Model::CreateRestorePlanRequest&, const CreateRestorePlanOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> CreateRestorePlanAsyncHandler;
@@ -151,6 +158,9 @@ namespace AlibabaCloud
typedef Outcome<Error, Model::DeleteInstanceResult> DeleteInstanceOutcome;
typedef std::future<DeleteInstanceOutcome> DeleteInstanceOutcomeCallable;
typedef std::function<void(const HBaseClient*, const Model::DeleteInstanceRequest&, const DeleteInstanceOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DeleteInstanceAsyncHandler;
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::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;
@@ -291,6 +301,9 @@ namespace AlibabaCloud
CreateHbaseHaSlbOutcome createHbaseHaSlb(const Model::CreateHbaseHaSlbRequest &request)const;
void createHbaseHaSlbAsync(const Model::CreateHbaseHaSlbRequest& request, const CreateHbaseHaSlbAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
CreateHbaseHaSlbOutcomeCallable createHbaseHaSlbCallable(const Model::CreateHbaseHaSlbRequest& request) const;
CreateMultiZoneClusterOutcome createMultiZoneCluster(const Model::CreateMultiZoneClusterRequest &request)const;
void createMultiZoneClusterAsync(const Model::CreateMultiZoneClusterRequest& request, const CreateMultiZoneClusterAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
CreateMultiZoneClusterOutcomeCallable createMultiZoneClusterCallable(const Model::CreateMultiZoneClusterRequest& request) const;
CreateRestorePlanOutcome createRestorePlan(const Model::CreateRestorePlanRequest &request)const;
void createRestorePlanAsync(const Model::CreateRestorePlanRequest& request, const CreateRestorePlanAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
CreateRestorePlanOutcomeCallable createRestorePlanCallable(const Model::CreateRestorePlanRequest& request) const;
@@ -300,6 +313,9 @@ namespace AlibabaCloud
DeleteInstanceOutcome deleteInstance(const Model::DeleteInstanceRequest &request)const;
void deleteInstanceAsync(const Model::DeleteInstanceRequest& request, const DeleteInstanceAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
DeleteInstanceOutcomeCallable deleteInstanceCallable(const Model::DeleteInstanceRequest& request) const;
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;
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

@@ -0,0 +1,129 @@
/*
* 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_CREATEMULTIZONECLUSTERREQUEST_H_
#define ALIBABACLOUD_HBASE_MODEL_CREATEMULTIZONECLUSTERREQUEST_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 CreateMultiZoneClusterRequest : public RpcServiceRequest
{
public:
CreateMultiZoneClusterRequest();
~CreateMultiZoneClusterRequest();
std::string getArchVersion()const;
void setArchVersion(const std::string& archVersion);
std::string getClusterName()const;
void setClusterName(const std::string& clusterName);
std::string getEngineVersion()const;
void setEngineVersion(const std::string& engineVersion);
std::string getLogDiskType()const;
void setLogDiskType(const std::string& logDiskType);
std::string getPrimaryVSwitchId()const;
void setPrimaryVSwitchId(const std::string& primaryVSwitchId);
std::string getLogInstanceType()const;
void setLogInstanceType(const std::string& logInstanceType);
int getAutoRenewPeriod()const;
void setAutoRenewPeriod(int autoRenewPeriod);
int getPeriod()const;
void setPeriod(int period);
int getLogNodeCount()const;
void setLogNodeCount(int logNodeCount);
std::string getSecurityIPList()const;
void setSecurityIPList(const std::string& securityIPList);
std::string getPeriodUnit()const;
void setPeriodUnit(const std::string& periodUnit);
std::string getCoreDiskType()const;
void setCoreDiskType(const std::string& coreDiskType);
std::string getArbiterZoneId()const;
void setArbiterZoneId(const std::string& arbiterZoneId);
std::string getClientToken()const;
void setClientToken(const std::string& clientToken);
std::string getMultiZoneCombination()const;
void setMultiZoneCombination(const std::string& multiZoneCombination);
std::string getPrimaryZoneId()const;
void setPrimaryZoneId(const std::string& primaryZoneId);
std::string getEngine()const;
void setEngine(const std::string& engine);
std::string getRegionId()const;
void setRegionId(const std::string& regionId);
std::string getStandbyVSwitchId()const;
void setStandbyVSwitchId(const std::string& standbyVSwitchId);
std::string getStandbyZoneId()const;
void setStandbyZoneId(const std::string& standbyZoneId);
std::string getMasterInstanceType()const;
void setMasterInstanceType(const std::string& masterInstanceType);
int getCoreNodeCount()const;
void setCoreNodeCount(int coreNodeCount);
int getLogDiskSize()const;
void setLogDiskSize(int logDiskSize);
std::string getCoreInstanceType()const;
void setCoreInstanceType(const std::string& coreInstanceType);
int getCoreDiskSize()const;
void setCoreDiskSize(int coreDiskSize);
std::string getVpcId()const;
void setVpcId(const std::string& vpcId);
std::string getPayType()const;
void setPayType(const std::string& payType);
std::string getArbiterVSwitchId()const;
void setArbiterVSwitchId(const std::string& arbiterVSwitchId);
private:
std::string archVersion_;
std::string clusterName_;
std::string engineVersion_;
std::string logDiskType_;
std::string primaryVSwitchId_;
std::string logInstanceType_;
int autoRenewPeriod_;
int period_;
int logNodeCount_;
std::string securityIPList_;
std::string periodUnit_;
std::string coreDiskType_;
std::string arbiterZoneId_;
std::string clientToken_;
std::string multiZoneCombination_;
std::string primaryZoneId_;
std::string engine_;
std::string regionId_;
std::string standbyVSwitchId_;
std::string standbyZoneId_;
std::string masterInstanceType_;
int coreNodeCount_;
int logDiskSize_;
std::string coreInstanceType_;
int coreDiskSize_;
std::string vpcId_;
std::string payType_;
std::string arbiterVSwitchId_;
};
}
}
}
#endif // !ALIBABACLOUD_HBASE_MODEL_CREATEMULTIZONECLUSTERREQUEST_H_

View File

@@ -0,0 +1,53 @@
/*
* 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_CREATEMULTIZONECLUSTERRESULT_H_
#define ALIBABACLOUD_HBASE_MODEL_CREATEMULTIZONECLUSTERRESULT_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 CreateMultiZoneClusterResult : public ServiceResult
{
public:
CreateMultiZoneClusterResult();
explicit CreateMultiZoneClusterResult(const std::string &payload);
~CreateMultiZoneClusterResult();
std::string getClusterId()const;
std::string getOrderId()const;
protected:
void parse(const std::string &payload);
private:
std::string clusterId_;
std::string orderId_;
};
}
}
}
#endif // !ALIBABACLOUD_HBASE_MODEL_CREATEMULTIZONECLUSTERRESULT_H_

View File

@@ -0,0 +1,51 @@
/*
* 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_DELETEMULTIZONECLUSTERREQUEST_H_
#define ALIBABACLOUD_HBASE_MODEL_DELETEMULTIZONECLUSTERREQUEST_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 DeleteMultiZoneClusterRequest : public RpcServiceRequest
{
public:
DeleteMultiZoneClusterRequest();
~DeleteMultiZoneClusterRequest();
bool getImmediateDeleteFlag()const;
void setImmediateDeleteFlag(bool immediateDeleteFlag);
std::string getClusterId()const;
void setClusterId(const std::string& clusterId);
private:
bool immediateDeleteFlag_;
std::string clusterId_;
};
}
}
}
#endif // !ALIBABACLOUD_HBASE_MODEL_DELETEMULTIZONECLUSTERREQUEST_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_DELETEMULTIZONECLUSTERRESULT_H_
#define ALIBABACLOUD_HBASE_MODEL_DELETEMULTIZONECLUSTERRESULT_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 DeleteMultiZoneClusterResult : public ServiceResult
{
public:
DeleteMultiZoneClusterResult();
explicit DeleteMultiZoneClusterResult(const std::string &payload);
~DeleteMultiZoneClusterResult();
protected:
void parse(const std::string &payload);
private:
};
}
}
}
#endif // !ALIBABACLOUD_HBASE_MODEL_DELETEMULTIZONECLUSTERRESULT_H_

View File

@@ -58,6 +58,7 @@ namespace AlibabaCloud
InstanceTypeDetail instanceTypeDetail;
DBInstanceStorageRange dBInstanceStorageRange;
std::string instanceType;
int maxCoreCount;
};
std::string storageType;
std::vector<SupportedStorageType::CoreResource> coreResources;

View File

@@ -54,6 +54,7 @@ namespace AlibabaCloud
std::string status;
std::string majorVersion;
std::string parentId;
std::string coreDiskCount;
int masterDiskSize;
std::string expireTimeUTC;
std::string zoneId;