ARMS SDK Auto Released By qikai.yangqikai,Version:1.28.1

Signed-off-by: yixiong.jxy <yixiong.jxy@alibaba-inc.com>
This commit is contained in:
yixiong.jxy
2018-10-16 15:15:31 +08:00
parent 59a99f2145
commit bc8404e573
15 changed files with 1124 additions and 2 deletions

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.
*/
#ifndef ALIBABACLOUD_ARMS_ARMSCLIENT_H_
#define ALIBABACLOUD_ARMS_ARMSCLIENT_H_
#include <future>
#include <alibabacloud/core/AsyncCallerContext.h>
#include <alibabacloud/core/EndpointProvider.h>
#include <alibabacloud/core/RpcServiceClient.h>
#include "ARMSExport.h"
#include "model/ARMSQueryDataSetRequest.h"
#include "model/ARMSQueryDataSetResult.h"
#include "model/MetricQueryRequest.h"
#include "model/MetricQueryResult.h"
namespace AlibabaCloud
{
namespace ARMS
{
class ALIBABACLOUD_ARMS_EXPORT ARMSClient : public RpcServiceClient
{
public:
typedef Outcome<Error, Model::ARMSQueryDataSetResult> ARMSQueryDataSetOutcome;
typedef std::future<ARMSQueryDataSetOutcome> ARMSQueryDataSetOutcomeCallable;
typedef std::function<void(const ARMSClient*, const Model::ARMSQueryDataSetRequest&, const ARMSQueryDataSetOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> ARMSQueryDataSetAsyncHandler;
typedef Outcome<Error, Model::MetricQueryResult> MetricQueryOutcome;
typedef std::future<MetricQueryOutcome> MetricQueryOutcomeCallable;
typedef std::function<void(const ARMSClient*, const Model::MetricQueryRequest&, const MetricQueryOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> MetricQueryAsyncHandler;
ARMSClient(const Credentials &credentials, const ClientConfiguration &configuration);
ARMSClient(const std::shared_ptr<CredentialsProvider> &credentialsProvider, const ClientConfiguration &configuration);
ARMSClient(const std::string &accessKeyId, const std::string &accessKeySecret, const ClientConfiguration &configuration);
~ARMSClient();
ARMSQueryDataSetOutcome aRMSQueryDataSet(const Model::ARMSQueryDataSetRequest &request)const;
void aRMSQueryDataSetAsync(const Model::ARMSQueryDataSetRequest& request, const ARMSQueryDataSetAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
ARMSQueryDataSetOutcomeCallable aRMSQueryDataSetCallable(const Model::ARMSQueryDataSetRequest& request) const;
MetricQueryOutcome metricQuery(const Model::MetricQueryRequest &request)const;
void metricQueryAsync(const Model::MetricQueryRequest& request, const MetricQueryAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
MetricQueryOutcomeCallable metricQueryCallable(const Model::MetricQueryRequest& request) const;
private:
std::shared_ptr<EndpointProvider> endpointProvider_;
};
}
}
#endif // !ALIBABACLOUD_ARMS_ARMSCLIENT_H_

View File

@@ -0,0 +1,32 @@
/*
* 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_ARMS_ARMSEXPORT_H_
#define ALIBABACLOUD_ARMS_ARMSEXPORT_H_
#include <alibabacloud/core/Global.h>
#if defined(ALIBABACLOUD_SHARED)
# if defined(ALIBABACLOUD_ARMS_LIBRARY)
# define ALIBABACLOUD_ARMS_EXPORT ALIBABACLOUD_DECL_EXPORT
# else
# define ALIBABACLOUD_ARMS_EXPORT ALIBABACLOUD_DECL_IMPORT
# endif
#else
# define ALIBABACLOUD_ARMS_EXPORT
#endif
#endif // !ALIBABACLOUD_ARMS_ARMSEXPORT_H_

View File

@@ -0,0 +1,114 @@
/*
* 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_ARMS_MODEL_ARMSQUERYDATASETREQUEST_H_
#define ALIBABACLOUD_ARMS_MODEL_ARMSQUERYDATASETREQUEST_H_
#include <string>
#include <vector>
#include <alibabacloud/core/RpcServiceRequest.h>
#include <alibabacloud/arms/ARMSExport.h>
namespace AlibabaCloud
{
namespace ARMS
{
namespace Model
{
class ALIBABACLOUD_ARMS_EXPORT ARMSQueryDataSetRequest : public RpcServiceRequest
{
struct OptionalDims
{
std::string type;
std::string value;
std::string key;
};
struct RequiredDims
{
std::string type;
std::string value;
std::string key;
};
struct Dimensions
{
std::string type;
std::string value;
std::string key;
};
public:
ARMSQueryDataSetRequest();
~ARMSQueryDataSetRequest();
std::string getDateStr()const;
void setDateStr(const std::string& dateStr);
long getMinTime()const;
void setMinTime(long minTime);
bool getReduceTail()const;
void setReduceTail(bool reduceTail);
long getMaxTime()const;
void setMaxTime(long maxTime);
std::string getAccessKeyId()const;
void setAccessKeyId(const std::string& accessKeyId);
std::vector<OptionalDims> getOptionalDims()const;
void setOptionalDims(const std::vector<OptionalDims>& optionalDims);
std::vector<std::string> getMeasures()const;
void setMeasures(const std::vector<std::string>& measures);
int getIntervalInSec()const;
void setIntervalInSec(int intervalInSec);
bool getIsDrillDown()const;
void setIsDrillDown(bool isDrillDown);
bool getHungryMode()const;
void setHungryMode(bool hungryMode);
std::string getSecurityToken()const;
void setSecurityToken(const std::string& securityToken);
std::string getRegionId()const;
void setRegionId(const std::string& regionId);
std::string getOrderByKey()const;
void setOrderByKey(const std::string& orderByKey);
int getLimit()const;
void setLimit(int limit);
std::vector<RequiredDims> getRequiredDims()const;
void setRequiredDims(const std::vector<RequiredDims>& requiredDims);
long getDatasetId()const;
void setDatasetId(long datasetId);
std::vector<Dimensions> getDimensions()const;
void setDimensions(const std::vector<Dimensions>& dimensions);
private:
std::string dateStr_;
long minTime_;
bool reduceTail_;
long maxTime_;
std::string accessKeyId_;
std::vector<OptionalDims> optionalDims_;
std::vector<std::string> measures_;
int intervalInSec_;
bool isDrillDown_;
bool hungryMode_;
std::string securityToken_;
std::string regionId_;
std::string orderByKey_;
int limit_;
std::vector<RequiredDims> requiredDims_;
long datasetId_;
std::vector<Dimensions> dimensions_;
};
}
}
}
#endif // !ALIBABACLOUD_ARMS_MODEL_ARMSQUERYDATASETREQUEST_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_ARMS_MODEL_ARMSQUERYDATASETRESULT_H_
#define ALIBABACLOUD_ARMS_MODEL_ARMSQUERYDATASETRESULT_H_
#include <string>
#include <vector>
#include <utility>
#include <alibabacloud/core/ServiceResult.h>
#include <alibabacloud/arms/ARMSExport.h>
namespace AlibabaCloud
{
namespace ARMS
{
namespace Model
{
class ALIBABACLOUD_ARMS_EXPORT ARMSQueryDataSetResult : public ServiceResult
{
public:
ARMSQueryDataSetResult();
explicit ARMSQueryDataSetResult(const std::string &payload);
~ARMSQueryDataSetResult();
std::string getData()const;
protected:
void parse(const std::string &payload);
private:
std::string data_;
};
}
}
}
#endif // !ALIBABACLOUD_ARMS_MODEL_ARMSQUERYDATASETRESULT_H_

View File

@@ -0,0 +1,86 @@
/*
* 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_ARMS_MODEL_METRICQUERYREQUEST_H_
#define ALIBABACLOUD_ARMS_MODEL_METRICQUERYREQUEST_H_
#include <string>
#include <vector>
#include <alibabacloud/core/RpcServiceRequest.h>
#include <alibabacloud/arms/ARMSExport.h>
namespace AlibabaCloud
{
namespace ARMS
{
namespace Model
{
class ALIBABACLOUD_ARMS_EXPORT MetricQueryRequest : public RpcServiceRequest
{
struct Filters
{
std::string value;
std::string key;
};
public:
MetricQueryRequest();
~MetricQueryRequest();
int getIintervalInSec()const;
void setIintervalInSec(int iintervalInSec);
std::vector<std::string> getMeasures()const;
void setMeasures(const std::vector<std::string>& measures);
std::string getMetric()const;
void setMetric(const std::string& metric);
std::string getSecurityToken()const;
void setSecurityToken(const std::string& securityToken);
int getLimit()const;
void setLimit(int limit);
long getEndTime()const;
void setEndTime(long endTime);
std::string getOrderBy()const;
void setOrderBy(const std::string& orderBy);
long getStartTime()const;
void setStartTime(long startTime);
std::vector<Filters> getFilters()const;
void setFilters(const std::vector<Filters>& filters);
std::vector<std::string> getDimensions()const;
void setDimensions(const std::vector<std::string>& dimensions);
std::string getOrder()const;
void setOrder(const std::string& order);
std::string getAccessKeyId()const;
void setAccessKeyId(const std::string& accessKeyId);
private:
int iintervalInSec_;
std::vector<std::string> measures_;
std::string metric_;
std::string securityToken_;
int limit_;
long endTime_;
std::string orderBy_;
long startTime_;
std::vector<Filters> filters_;
std::vector<std::string> dimensions_;
std::string order_;
std::string accessKeyId_;
};
}
}
}
#endif // !ALIBABACLOUD_ARMS_MODEL_METRICQUERYREQUEST_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_ARMS_MODEL_METRICQUERYRESULT_H_
#define ALIBABACLOUD_ARMS_MODEL_METRICQUERYRESULT_H_
#include <string>
#include <vector>
#include <utility>
#include <alibabacloud/core/ServiceResult.h>
#include <alibabacloud/arms/ARMSExport.h>
namespace AlibabaCloud
{
namespace ARMS
{
namespace Model
{
class ALIBABACLOUD_ARMS_EXPORT MetricQueryResult : public ServiceResult
{
public:
MetricQueryResult();
explicit MetricQueryResult(const std::string &payload);
~MetricQueryResult();
std::string getData()const;
protected:
void parse(const std::string &payload);
private:
std::string data_;
};
}
}
}
#endif // !ALIBABACLOUD_ARMS_MODEL_METRICQUERYRESULT_H_