Browse Source

-DescribeVodCertificateDetail, DescribeVodCertificateList增加返回参数

sdk-team 2 years ago
parent
commit
8f4a119a7e
26 changed files with 730 additions and 14 deletions
  1. 1 1
      VERSION
  2. 8 0
      vod/CMakeLists.txt
  3. 16 0
      vod/include/alibabacloud/vod/VodClient.h
  4. 3 0
      vod/include/alibabacloud/vod/model/CreateAppInfoRequest.h
  5. 8 1
      vod/include/alibabacloud/vod/model/DescribeVodCertificateListResult.h
  6. 1 0
      vod/include/alibabacloud/vod/model/DescribeVodDomainDetailResult.h
  7. 57 0
      vod/include/alibabacloud/vod/model/DescribeVodTieringStorageDataRequest.h
  8. 59 0
      vod/include/alibabacloud/vod/model/DescribeVodTieringStorageDataResult.h
  9. 57 0
      vod/include/alibabacloud/vod/model/DescribeVodTieringStorageRetrievalDataRequest.h
  10. 61 0
      vod/include/alibabacloud/vod/model/DescribeVodTieringStorageRetrievalDataResult.h
  11. 1 0
      vod/include/alibabacloud/vod/model/GetAppInfosResult.h
  12. 3 0
      vod/include/alibabacloud/vod/model/ListAppInfoRequest.h
  13. 1 0
      vod/include/alibabacloud/vod/model/ListAppInfoResult.h
  14. 12 3
      vod/include/alibabacloud/vod/model/PreloadVodObjectCachesRequest.h
  15. 72 0
      vod/src/VodClient.cc
  16. 9 0
      vod/src/model/CreateAppInfoRequest.cc
  17. 14 0
      vod/src/model/DescribeVodCertificateListResult.cc
  18. 2 0
      vod/src/model/DescribeVodDomainDetailResult.cc
  19. 81 0
      vod/src/model/DescribeVodTieringStorageDataRequest.cc
  20. 65 0
      vod/src/model/DescribeVodTieringStorageDataResult.cc
  21. 81 0
      vod/src/model/DescribeVodTieringStorageRetrievalDataRequest.cc
  22. 69 0
      vod/src/model/DescribeVodTieringStorageRetrievalDataResult.cc
  23. 2 0
      vod/src/model/GetAppInfosResult.cc
  24. 9 0
      vod/src/model/ListAppInfoRequest.cc
  25. 2 0
      vod/src/model/ListAppInfoResult.cc
  26. 36 9
      vod/src/model/PreloadVodObjectCachesRequest.cc

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.36.1969
+1.36.1970

+ 8 - 0
vod/CMakeLists.txt

@@ -161,6 +161,10 @@ set(vod_public_header_model
 	include/alibabacloud/vod/model/DescribeVodRefreshTasksResult.h
 	include/alibabacloud/vod/model/DescribeVodStorageDataRequest.h
 	include/alibabacloud/vod/model/DescribeVodStorageDataResult.h
+	include/alibabacloud/vod/model/DescribeVodTieringStorageDataRequest.h
+	include/alibabacloud/vod/model/DescribeVodTieringStorageDataResult.h
+	include/alibabacloud/vod/model/DescribeVodTieringStorageRetrievalDataRequest.h
+	include/alibabacloud/vod/model/DescribeVodTieringStorageRetrievalDataResult.h
 	include/alibabacloud/vod/model/DescribeVodTranscodeDataRequest.h
 	include/alibabacloud/vod/model/DescribeVodTranscodeDataResult.h
 	include/alibabacloud/vod/model/DescribeVodUserDomainsRequest.h
@@ -500,6 +504,10 @@ set(vod_src
 	src/model/DescribeVodRefreshTasksResult.cc
 	src/model/DescribeVodStorageDataRequest.cc
 	src/model/DescribeVodStorageDataResult.cc
+	src/model/DescribeVodTieringStorageDataRequest.cc
+	src/model/DescribeVodTieringStorageDataResult.cc
+	src/model/DescribeVodTieringStorageRetrievalDataRequest.cc
+	src/model/DescribeVodTieringStorageRetrievalDataResult.cc
 	src/model/DescribeVodTranscodeDataRequest.cc
 	src/model/DescribeVodTranscodeDataResult.cc
 	src/model/DescribeVodUserDomainsRequest.cc

+ 16 - 0
vod/include/alibabacloud/vod/VodClient.h

@@ -162,6 +162,10 @@
 #include "model/DescribeVodRefreshTasksResult.h"
 #include "model/DescribeVodStorageDataRequest.h"
 #include "model/DescribeVodStorageDataResult.h"
+#include "model/DescribeVodTieringStorageDataRequest.h"
+#include "model/DescribeVodTieringStorageDataResult.h"
+#include "model/DescribeVodTieringStorageRetrievalDataRequest.h"
+#include "model/DescribeVodTieringStorageRetrievalDataResult.h"
 #include "model/DescribeVodTranscodeDataRequest.h"
 #include "model/DescribeVodTranscodeDataResult.h"
 #include "model/DescribeVodUserDomainsRequest.h"
@@ -577,6 +581,12 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::DescribeVodStorageDataResult> DescribeVodStorageDataOutcome;
 			typedef std::future<DescribeVodStorageDataOutcome> DescribeVodStorageDataOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::DescribeVodStorageDataRequest&, const DescribeVodStorageDataOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeVodStorageDataAsyncHandler;
+			typedef Outcome<Error, Model::DescribeVodTieringStorageDataResult> DescribeVodTieringStorageDataOutcome;
+			typedef std::future<DescribeVodTieringStorageDataOutcome> DescribeVodTieringStorageDataOutcomeCallable;
+			typedef std::function<void(const VodClient*, const Model::DescribeVodTieringStorageDataRequest&, const DescribeVodTieringStorageDataOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeVodTieringStorageDataAsyncHandler;
+			typedef Outcome<Error, Model::DescribeVodTieringStorageRetrievalDataResult> DescribeVodTieringStorageRetrievalDataOutcome;
+			typedef std::future<DescribeVodTieringStorageRetrievalDataOutcome> DescribeVodTieringStorageRetrievalDataOutcomeCallable;
+			typedef std::function<void(const VodClient*, const Model::DescribeVodTieringStorageRetrievalDataRequest&, const DescribeVodTieringStorageRetrievalDataOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeVodTieringStorageRetrievalDataAsyncHandler;
 			typedef Outcome<Error, Model::DescribeVodTranscodeDataResult> DescribeVodTranscodeDataOutcome;
 			typedef std::future<DescribeVodTranscodeDataOutcome> DescribeVodTranscodeDataOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::DescribeVodTranscodeDataRequest&, const DescribeVodTranscodeDataOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeVodTranscodeDataAsyncHandler;
@@ -1086,6 +1096,12 @@ namespace AlibabaCloud
 			DescribeVodStorageDataOutcome describeVodStorageData(const Model::DescribeVodStorageDataRequest &request)const;
 			void describeVodStorageDataAsync(const Model::DescribeVodStorageDataRequest& request, const DescribeVodStorageDataAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DescribeVodStorageDataOutcomeCallable describeVodStorageDataCallable(const Model::DescribeVodStorageDataRequest& request) const;
+			DescribeVodTieringStorageDataOutcome describeVodTieringStorageData(const Model::DescribeVodTieringStorageDataRequest &request)const;
+			void describeVodTieringStorageDataAsync(const Model::DescribeVodTieringStorageDataRequest& request, const DescribeVodTieringStorageDataAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeVodTieringStorageDataOutcomeCallable describeVodTieringStorageDataCallable(const Model::DescribeVodTieringStorageDataRequest& request) const;
+			DescribeVodTieringStorageRetrievalDataOutcome describeVodTieringStorageRetrievalData(const Model::DescribeVodTieringStorageRetrievalDataRequest &request)const;
+			void describeVodTieringStorageRetrievalDataAsync(const Model::DescribeVodTieringStorageRetrievalDataRequest& request, const DescribeVodTieringStorageRetrievalDataAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeVodTieringStorageRetrievalDataOutcomeCallable describeVodTieringStorageRetrievalDataCallable(const Model::DescribeVodTieringStorageRetrievalDataRequest& request) const;
 			DescribeVodTranscodeDataOutcome describeVodTranscodeData(const Model::DescribeVodTranscodeDataRequest &request)const;
 			void describeVodTranscodeDataAsync(const Model::DescribeVodTranscodeDataRequest& request, const DescribeVodTranscodeDataAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DescribeVodTranscodeDataOutcomeCallable describeVodTranscodeDataCallable(const Model::DescribeVodTranscodeDataRequest& request) const;

+ 3 - 0
vod/include/alibabacloud/vod/model/CreateAppInfoRequest.h

@@ -36,6 +36,8 @@ public:
 	void setResourceRealOwnerId(long resourceRealOwnerId);
 	std::string getAccessKeyId() const;
 	void setAccessKeyId(const std::string &accessKeyId);
+	std::string getResourceGroupId() const;
+	void setResourceGroupId(const std::string &resourceGroupId);
 	std::string getAppName() const;
 	void setAppName(const std::string &appName);
 
@@ -43,6 +45,7 @@ private:
 	std::string description_;
 	long resourceRealOwnerId_;
 	std::string accessKeyId_;
+	std::string resourceGroupId_;
 	std::string appName_;
 };
 } // namespace Model

+ 8 - 1
vod/include/alibabacloud/vod/model/DescribeVodCertificateListResult.h

@@ -37,11 +37,18 @@ namespace AlibabaCloud
 					struct Cert
 					{
 						std::string fingerprint;
+						long endTime;
 						std::string issuer;
+						std::string instanceId;
 						long certId;
+						long createTime;
+						std::string algorithm;
+						bool domainMatchCert;
+						std::string common;
+						std::string certIdentifier;
 						std::string certName;
 						long lastTime;
-						std::string common;
+						std::string signAlgorithm;
 					};
 					std::vector<Cert> certList;
 					int count;

+ 1 - 0
vod/include/alibabacloud/vod/model/DescribeVodDomainDetailResult.h

@@ -41,6 +41,7 @@ namespace AlibabaCloud
 						std::string content;
 						int port;
 						std::string enabled;
+						std::string weight;
 					};
 					std::string description;
 					std::string scope;

+ 57 - 0
vod/include/alibabacloud/vod/model/DescribeVodTieringStorageDataRequest.h

@@ -0,0 +1,57 @@
+/*
+ * 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_VOD_MODEL_DESCRIBEVODTIERINGSTORAGEDATAREQUEST_H_
+#define ALIBABACLOUD_VOD_MODEL_DESCRIBEVODTIERINGSTORAGEDATAREQUEST_H_
+
+#include <alibabacloud/vod/VodExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Vod {
+namespace Model {
+class ALIBABACLOUD_VOD_EXPORT DescribeVodTieringStorageDataRequest : public RpcServiceRequest {
+public:
+	DescribeVodTieringStorageDataRequest();
+	~DescribeVodTieringStorageDataRequest();
+	std::string getStartTime() const;
+	void setStartTime(const std::string &startTime);
+	std::string getSplitBy() const;
+	void setSplitBy(const std::string &splitBy);
+	std::string getEndTime() const;
+	void setEndTime(const std::string &endTime);
+	long getOwnerId() const;
+	void setOwnerId(long ownerId);
+	std::string getStorageClass() const;
+	void setStorageClass(const std::string &storageClass);
+	std::string getRegion() const;
+	void setRegion(const std::string &region);
+
+private:
+	std::string startTime_;
+	std::string splitBy_;
+	std::string endTime_;
+	long ownerId_;
+	std::string storageClass_;
+	std::string region_;
+};
+} // namespace Model
+} // namespace Vod
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_VOD_MODEL_DESCRIBEVODTIERINGSTORAGEDATAREQUEST_H_

+ 59 - 0
vod/include/alibabacloud/vod/model/DescribeVodTieringStorageDataResult.h

@@ -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.
+ */
+
+#ifndef ALIBABACLOUD_VOD_MODEL_DESCRIBEVODTIERINGSTORAGEDATARESULT_H_
+#define ALIBABACLOUD_VOD_MODEL_DESCRIBEVODTIERINGSTORAGEDATARESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT DescribeVodTieringStorageDataResult : public ServiceResult
+			{
+			public:
+				struct DataModule
+				{
+					long lessthanMonthDatasize;
+					long storageUtilization;
+					std::string storageClass;
+					std::string region;
+					std::string timeStamp;
+				};
+
+
+				DescribeVodTieringStorageDataResult();
+				explicit DescribeVodTieringStorageDataResult(const std::string &payload);
+				~DescribeVodTieringStorageDataResult();
+				std::vector<DataModule> getStorageData()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<DataModule> storageData_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_DESCRIBEVODTIERINGSTORAGEDATARESULT_H_

+ 57 - 0
vod/include/alibabacloud/vod/model/DescribeVodTieringStorageRetrievalDataRequest.h

@@ -0,0 +1,57 @@
+/*
+ * 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_VOD_MODEL_DESCRIBEVODTIERINGSTORAGERETRIEVALDATAREQUEST_H_
+#define ALIBABACLOUD_VOD_MODEL_DESCRIBEVODTIERINGSTORAGERETRIEVALDATAREQUEST_H_
+
+#include <alibabacloud/vod/VodExport.h>
+#include <alibabacloud/core/RpcServiceRequest.h>
+#include <string>
+#include <vector>
+#include <map>
+
+namespace AlibabaCloud {
+namespace Vod {
+namespace Model {
+class ALIBABACLOUD_VOD_EXPORT DescribeVodTieringStorageRetrievalDataRequest : public RpcServiceRequest {
+public:
+	DescribeVodTieringStorageRetrievalDataRequest();
+	~DescribeVodTieringStorageRetrievalDataRequest();
+	std::string getStartTime() const;
+	void setStartTime(const std::string &startTime);
+	std::string getSplitBy() const;
+	void setSplitBy(const std::string &splitBy);
+	std::string getEndTime() const;
+	void setEndTime(const std::string &endTime);
+	long getOwnerId() const;
+	void setOwnerId(long ownerId);
+	std::string getStorageClass() const;
+	void setStorageClass(const std::string &storageClass);
+	std::string getRegion() const;
+	void setRegion(const std::string &region);
+
+private:
+	std::string startTime_;
+	std::string splitBy_;
+	std::string endTime_;
+	long ownerId_;
+	std::string storageClass_;
+	std::string region_;
+};
+} // namespace Model
+} // namespace Vod
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_VOD_MODEL_DESCRIBEVODTIERINGSTORAGERETRIEVALDATAREQUEST_H_

+ 61 - 0
vod/include/alibabacloud/vod/model/DescribeVodTieringStorageRetrievalDataResult.h

@@ -0,0 +1,61 @@
+/*
+ * 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_VOD_MODEL_DESCRIBEVODTIERINGSTORAGERETRIEVALDATARESULT_H_
+#define ALIBABACLOUD_VOD_MODEL_DESCRIBEVODTIERINGSTORAGERETRIEVALDATARESULT_H_
+
+#include <string>
+#include <vector>
+#include <utility>
+#include <alibabacloud/core/ServiceResult.h>
+#include <alibabacloud/vod/VodExport.h>
+
+namespace AlibabaCloud
+{
+	namespace Vod
+	{
+		namespace Model
+		{
+			class ALIBABACLOUD_VOD_EXPORT DescribeVodTieringStorageRetrievalDataResult : public ServiceResult
+			{
+			public:
+				struct RetrievalDataItem
+				{
+					long cABulkRetrievalData;
+					long cAStdRetrievalData;
+					std::string storageClass;
+					std::string region;
+					long cAHighPriorRetrievalData;
+					long retrievalData;
+					std::string timeStamp;
+				};
+
+
+				DescribeVodTieringStorageRetrievalDataResult();
+				explicit DescribeVodTieringStorageRetrievalDataResult(const std::string &payload);
+				~DescribeVodTieringStorageRetrievalDataResult();
+				std::vector<RetrievalDataItem> getRetrievalData()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<RetrievalDataItem> retrievalData_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_DESCRIBEVODTIERINGSTORAGERETRIEVALDATARESULT_H_

+ 1 - 0
vod/include/alibabacloud/vod/model/GetAppInfosResult.h

@@ -38,6 +38,7 @@ namespace AlibabaCloud
 					std::string type;
 					std::string description;
 					std::string appId;
+					std::string resourceGroupId;
 					std::string creationTime;
 					std::string modificationTime;
 					std::string appName;

+ 3 - 0
vod/include/alibabacloud/vod/model/ListAppInfoRequest.h

@@ -38,6 +38,8 @@ public:
 	void setResourceRealOwnerId(long resourceRealOwnerId);
 	std::string getAccessKeyId() const;
 	void setAccessKeyId(const std::string &accessKeyId);
+	std::string getResourceGroupId() const;
+	void setResourceGroupId(const std::string &resourceGroupId);
 	int getPageSize() const;
 	void setPageSize(int pageSize);
 	Tag getTag() const;
@@ -50,6 +52,7 @@ public:
 private:
 	long resourceRealOwnerId_;
 	std::string accessKeyId_;
+	std::string resourceGroupId_;
 	int pageSize_;
 	Tag tag_;
 	int pageNo_;

+ 1 - 0
vod/include/alibabacloud/vod/model/ListAppInfoResult.h

@@ -43,6 +43,7 @@ namespace AlibabaCloud
 					std::string type;
 					std::string description;
 					std::string appId;
+					std::string resourceGroupId;
 					std::string creationTime;
 					std::string modificationTime;
 					std::string regionId;

+ 12 - 3
vod/include/alibabacloud/vod/model/PreloadVodObjectCachesRequest.h

@@ -32,15 +32,24 @@ public:
 	~PreloadVodObjectCachesRequest();
 	std::string getObjectPath() const;
 	void setObjectPath(const std::string &objectPath);
-	long getOwnerId() const;
-	void setOwnerId(long ownerId);
 	std::string getSecurityToken() const;
 	void setSecurityToken(const std::string &securityToken);
+	bool getL2Preload() const;
+	void setL2Preload(bool l2Preload);
+	std::string getArea() const;
+	void setArea(const std::string &area);
+	std::string getWithHeader() const;
+	void setWithHeader(const std::string &withHeader);
+	long getOwnerId() const;
+	void setOwnerId(long ownerId);
 
 private:
 	std::string objectPath_;
-	long ownerId_;
 	std::string securityToken_;
+	bool l2Preload_;
+	std::string area_;
+	std::string withHeader_;
+	long ownerId_;
 };
 } // namespace Model
 } // namespace Vod

+ 72 - 0
vod/src/VodClient.cc

@@ -2571,6 +2571,78 @@ VodClient::DescribeVodStorageDataOutcomeCallable VodClient::describeVodStorageDa
 	return task->get_future();
 }
 
+VodClient::DescribeVodTieringStorageDataOutcome VodClient::describeVodTieringStorageData(const DescribeVodTieringStorageDataRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeVodTieringStorageDataOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeVodTieringStorageDataOutcome(DescribeVodTieringStorageDataResult(outcome.result()));
+	else
+		return DescribeVodTieringStorageDataOutcome(outcome.error());
+}
+
+void VodClient::describeVodTieringStorageDataAsync(const DescribeVodTieringStorageDataRequest& request, const DescribeVodTieringStorageDataAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeVodTieringStorageData(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+VodClient::DescribeVodTieringStorageDataOutcomeCallable VodClient::describeVodTieringStorageDataCallable(const DescribeVodTieringStorageDataRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeVodTieringStorageDataOutcome()>>(
+			[this, request]()
+			{
+			return this->describeVodTieringStorageData(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
+VodClient::DescribeVodTieringStorageRetrievalDataOutcome VodClient::describeVodTieringStorageRetrievalData(const DescribeVodTieringStorageRetrievalDataRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeVodTieringStorageRetrievalDataOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeVodTieringStorageRetrievalDataOutcome(DescribeVodTieringStorageRetrievalDataResult(outcome.result()));
+	else
+		return DescribeVodTieringStorageRetrievalDataOutcome(outcome.error());
+}
+
+void VodClient::describeVodTieringStorageRetrievalDataAsync(const DescribeVodTieringStorageRetrievalDataRequest& request, const DescribeVodTieringStorageRetrievalDataAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeVodTieringStorageRetrievalData(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+VodClient::DescribeVodTieringStorageRetrievalDataOutcomeCallable VodClient::describeVodTieringStorageRetrievalDataCallable(const DescribeVodTieringStorageRetrievalDataRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeVodTieringStorageRetrievalDataOutcome()>>(
+			[this, request]()
+			{
+			return this->describeVodTieringStorageRetrievalData(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 VodClient::DescribeVodTranscodeDataOutcome VodClient::describeVodTranscodeData(const DescribeVodTranscodeDataRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();

+ 9 - 0
vod/src/model/CreateAppInfoRequest.cc

@@ -52,6 +52,15 @@ void CreateAppInfoRequest::setAccessKeyId(const std::string &accessKeyId) {
   setParameter(std::string("AccessKeyId"), accessKeyId);
 }
 
+std::string CreateAppInfoRequest::getResourceGroupId() const {
+  return resourceGroupId_;
+}
+
+void CreateAppInfoRequest::setResourceGroupId(const std::string &resourceGroupId) {
+  resourceGroupId_ = resourceGroupId;
+  setParameter(std::string("ResourceGroupId"), resourceGroupId);
+}
+
 std::string CreateAppInfoRequest::getAppName() const {
   return appName_;
 }

+ 14 - 0
vod/src/model/DescribeVodCertificateListResult.cc

@@ -58,6 +58,20 @@ void DescribeVodCertificateListResult::parse(const std::string &payload)
 			certObject.certId = std::stol(certificateListModelNodeCertListCert["CertId"].asString());
 		if(!certificateListModelNodeCertListCert["Common"].isNull())
 			certObject.common = certificateListModelNodeCertListCert["Common"].asString();
+		if(!certificateListModelNodeCertListCert["CreateTime"].isNull())
+			certObject.createTime = std::stol(certificateListModelNodeCertListCert["CreateTime"].asString());
+		if(!certificateListModelNodeCertListCert["EndTime"].isNull())
+			certObject.endTime = std::stol(certificateListModelNodeCertListCert["EndTime"].asString());
+		if(!certificateListModelNodeCertListCert["Algorithm"].isNull())
+			certObject.algorithm = certificateListModelNodeCertListCert["Algorithm"].asString();
+		if(!certificateListModelNodeCertListCert["CertIdentifier"].isNull())
+			certObject.certIdentifier = certificateListModelNodeCertListCert["CertIdentifier"].asString();
+		if(!certificateListModelNodeCertListCert["DomainMatchCert"].isNull())
+			certObject.domainMatchCert = certificateListModelNodeCertListCert["DomainMatchCert"].asString() == "true";
+		if(!certificateListModelNodeCertListCert["InstanceId"].isNull())
+			certObject.instanceId = certificateListModelNodeCertListCert["InstanceId"].asString();
+		if(!certificateListModelNodeCertListCert["SignAlgorithm"].isNull())
+			certObject.signAlgorithm = certificateListModelNodeCertListCert["SignAlgorithm"].asString();
 		certificateListModel_.certList.push_back(certObject);
 	}
 

+ 2 - 0
vod/src/model/DescribeVodDomainDetailResult.cc

@@ -76,6 +76,8 @@ void DescribeVodDomainDetailResult::parse(const std::string &payload)
 			sourceObject.content = domainDetailNodeSourcesSource["Content"].asString();
 		if(!domainDetailNodeSourcesSource["Enabled"].isNull())
 			sourceObject.enabled = domainDetailNodeSourcesSource["Enabled"].asString();
+		if(!domainDetailNodeSourcesSource["Weight"].isNull())
+			sourceObject.weight = domainDetailNodeSourcesSource["Weight"].asString();
 		domainDetail_.sources.push_back(sourceObject);
 	}
 

+ 81 - 0
vod/src/model/DescribeVodTieringStorageDataRequest.cc

@@ -0,0 +1,81 @@
+/*
+ * 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/vod/model/DescribeVodTieringStorageDataRequest.h>
+
+using AlibabaCloud::Vod::Model::DescribeVodTieringStorageDataRequest;
+
+DescribeVodTieringStorageDataRequest::DescribeVodTieringStorageDataRequest()
+    : RpcServiceRequest("vod", "2017-03-21", "DescribeVodTieringStorageData") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+DescribeVodTieringStorageDataRequest::~DescribeVodTieringStorageDataRequest() {}
+
+std::string DescribeVodTieringStorageDataRequest::getStartTime() const {
+  return startTime_;
+}
+
+void DescribeVodTieringStorageDataRequest::setStartTime(const std::string &startTime) {
+  startTime_ = startTime;
+  setParameter(std::string("StartTime"), startTime);
+}
+
+std::string DescribeVodTieringStorageDataRequest::getSplitBy() const {
+  return splitBy_;
+}
+
+void DescribeVodTieringStorageDataRequest::setSplitBy(const std::string &splitBy) {
+  splitBy_ = splitBy;
+  setParameter(std::string("SplitBy"), splitBy);
+}
+
+std::string DescribeVodTieringStorageDataRequest::getEndTime() const {
+  return endTime_;
+}
+
+void DescribeVodTieringStorageDataRequest::setEndTime(const std::string &endTime) {
+  endTime_ = endTime;
+  setParameter(std::string("EndTime"), endTime);
+}
+
+long DescribeVodTieringStorageDataRequest::getOwnerId() const {
+  return ownerId_;
+}
+
+void DescribeVodTieringStorageDataRequest::setOwnerId(long ownerId) {
+  ownerId_ = ownerId;
+  setParameter(std::string("OwnerId"), std::to_string(ownerId));
+}
+
+std::string DescribeVodTieringStorageDataRequest::getStorageClass() const {
+  return storageClass_;
+}
+
+void DescribeVodTieringStorageDataRequest::setStorageClass(const std::string &storageClass) {
+  storageClass_ = storageClass;
+  setParameter(std::string("StorageClass"), storageClass);
+}
+
+std::string DescribeVodTieringStorageDataRequest::getRegion() const {
+  return region_;
+}
+
+void DescribeVodTieringStorageDataRequest::setRegion(const std::string &region) {
+  region_ = region;
+  setParameter(std::string("Region"), region);
+}
+

+ 65 - 0
vod/src/model/DescribeVodTieringStorageDataResult.cc

@@ -0,0 +1,65 @@
+/*
+ * 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/vod/model/DescribeVodTieringStorageDataResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Vod;
+using namespace AlibabaCloud::Vod::Model;
+
+DescribeVodTieringStorageDataResult::DescribeVodTieringStorageDataResult() :
+	ServiceResult()
+{}
+
+DescribeVodTieringStorageDataResult::DescribeVodTieringStorageDataResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeVodTieringStorageDataResult::~DescribeVodTieringStorageDataResult()
+{}
+
+void DescribeVodTieringStorageDataResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allStorageDataNode = value["StorageData"]["DataModule"];
+	for (auto valueStorageDataDataModule : allStorageDataNode)
+	{
+		DataModule storageDataObject;
+		if(!valueStorageDataDataModule["TimeStamp"].isNull())
+			storageDataObject.timeStamp = valueStorageDataDataModule["TimeStamp"].asString();
+		if(!valueStorageDataDataModule["Region"].isNull())
+			storageDataObject.region = valueStorageDataDataModule["Region"].asString();
+		if(!valueStorageDataDataModule["StorageClass"].isNull())
+			storageDataObject.storageClass = valueStorageDataDataModule["StorageClass"].asString();
+		if(!valueStorageDataDataModule["StorageUtilization"].isNull())
+			storageDataObject.storageUtilization = std::stol(valueStorageDataDataModule["StorageUtilization"].asString());
+		if(!valueStorageDataDataModule["LessthanMonthDatasize"].isNull())
+			storageDataObject.lessthanMonthDatasize = std::stol(valueStorageDataDataModule["LessthanMonthDatasize"].asString());
+		storageData_.push_back(storageDataObject);
+	}
+
+}
+
+std::vector<DescribeVodTieringStorageDataResult::DataModule> DescribeVodTieringStorageDataResult::getStorageData()const
+{
+	return storageData_;
+}
+

+ 81 - 0
vod/src/model/DescribeVodTieringStorageRetrievalDataRequest.cc

@@ -0,0 +1,81 @@
+/*
+ * 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/vod/model/DescribeVodTieringStorageRetrievalDataRequest.h>
+
+using AlibabaCloud::Vod::Model::DescribeVodTieringStorageRetrievalDataRequest;
+
+DescribeVodTieringStorageRetrievalDataRequest::DescribeVodTieringStorageRetrievalDataRequest()
+    : RpcServiceRequest("vod", "2017-03-21", "DescribeVodTieringStorageRetrievalData") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+DescribeVodTieringStorageRetrievalDataRequest::~DescribeVodTieringStorageRetrievalDataRequest() {}
+
+std::string DescribeVodTieringStorageRetrievalDataRequest::getStartTime() const {
+  return startTime_;
+}
+
+void DescribeVodTieringStorageRetrievalDataRequest::setStartTime(const std::string &startTime) {
+  startTime_ = startTime;
+  setParameter(std::string("StartTime"), startTime);
+}
+
+std::string DescribeVodTieringStorageRetrievalDataRequest::getSplitBy() const {
+  return splitBy_;
+}
+
+void DescribeVodTieringStorageRetrievalDataRequest::setSplitBy(const std::string &splitBy) {
+  splitBy_ = splitBy;
+  setParameter(std::string("SplitBy"), splitBy);
+}
+
+std::string DescribeVodTieringStorageRetrievalDataRequest::getEndTime() const {
+  return endTime_;
+}
+
+void DescribeVodTieringStorageRetrievalDataRequest::setEndTime(const std::string &endTime) {
+  endTime_ = endTime;
+  setParameter(std::string("EndTime"), endTime);
+}
+
+long DescribeVodTieringStorageRetrievalDataRequest::getOwnerId() const {
+  return ownerId_;
+}
+
+void DescribeVodTieringStorageRetrievalDataRequest::setOwnerId(long ownerId) {
+  ownerId_ = ownerId;
+  setParameter(std::string("OwnerId"), std::to_string(ownerId));
+}
+
+std::string DescribeVodTieringStorageRetrievalDataRequest::getStorageClass() const {
+  return storageClass_;
+}
+
+void DescribeVodTieringStorageRetrievalDataRequest::setStorageClass(const std::string &storageClass) {
+  storageClass_ = storageClass;
+  setParameter(std::string("StorageClass"), storageClass);
+}
+
+std::string DescribeVodTieringStorageRetrievalDataRequest::getRegion() const {
+  return region_;
+}
+
+void DescribeVodTieringStorageRetrievalDataRequest::setRegion(const std::string &region) {
+  region_ = region;
+  setParameter(std::string("Region"), region);
+}
+

+ 69 - 0
vod/src/model/DescribeVodTieringStorageRetrievalDataResult.cc

@@ -0,0 +1,69 @@
+/*
+ * 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/vod/model/DescribeVodTieringStorageRetrievalDataResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Vod;
+using namespace AlibabaCloud::Vod::Model;
+
+DescribeVodTieringStorageRetrievalDataResult::DescribeVodTieringStorageRetrievalDataResult() :
+	ServiceResult()
+{}
+
+DescribeVodTieringStorageRetrievalDataResult::DescribeVodTieringStorageRetrievalDataResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeVodTieringStorageRetrievalDataResult::~DescribeVodTieringStorageRetrievalDataResult()
+{}
+
+void DescribeVodTieringStorageRetrievalDataResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allRetrievalDataNode = value["RetrievalData"]["RetrievalDataItem"];
+	for (auto valueRetrievalDataRetrievalDataItem : allRetrievalDataNode)
+	{
+		RetrievalDataItem retrievalDataObject;
+		if(!valueRetrievalDataRetrievalDataItem["TimeStamp"].isNull())
+			retrievalDataObject.timeStamp = valueRetrievalDataRetrievalDataItem["TimeStamp"].asString();
+		if(!valueRetrievalDataRetrievalDataItem["Region"].isNull())
+			retrievalDataObject.region = valueRetrievalDataRetrievalDataItem["Region"].asString();
+		if(!valueRetrievalDataRetrievalDataItem["StorageClass"].isNull())
+			retrievalDataObject.storageClass = valueRetrievalDataRetrievalDataItem["StorageClass"].asString();
+		if(!valueRetrievalDataRetrievalDataItem["RetrievalData"].isNull())
+			retrievalDataObject.retrievalData = std::stol(valueRetrievalDataRetrievalDataItem["RetrievalData"].asString());
+		if(!valueRetrievalDataRetrievalDataItem["CAStdRetrievalData"].isNull())
+			retrievalDataObject.cAStdRetrievalData = std::stol(valueRetrievalDataRetrievalDataItem["CAStdRetrievalData"].asString());
+		if(!valueRetrievalDataRetrievalDataItem["CABulkRetrievalData"].isNull())
+			retrievalDataObject.cABulkRetrievalData = std::stol(valueRetrievalDataRetrievalDataItem["CABulkRetrievalData"].asString());
+		if(!valueRetrievalDataRetrievalDataItem["CAHighPriorRetrievalData"].isNull())
+			retrievalDataObject.cAHighPriorRetrievalData = std::stol(valueRetrievalDataRetrievalDataItem["CAHighPriorRetrievalData"].asString());
+		retrievalData_.push_back(retrievalDataObject);
+	}
+
+}
+
+std::vector<DescribeVodTieringStorageRetrievalDataResult::RetrievalDataItem> DescribeVodTieringStorageRetrievalDataResult::getRetrievalData()const
+{
+	return retrievalData_;
+}
+

+ 2 - 0
vod/src/model/GetAppInfosResult.cc

@@ -57,6 +57,8 @@ void GetAppInfosResult::parse(const std::string &payload)
 			appInfoListObject.appId = valueAppInfoListAppInfo["AppId"].asString();
 		if(!valueAppInfoListAppInfo["ModificationTime"].isNull())
 			appInfoListObject.modificationTime = valueAppInfoListAppInfo["ModificationTime"].asString();
+		if(!valueAppInfoListAppInfo["ResourceGroupId"].isNull())
+			appInfoListObject.resourceGroupId = valueAppInfoListAppInfo["ResourceGroupId"].asString();
 		appInfoList_.push_back(appInfoListObject);
 	}
 	auto allNonExistAppIds = value["NonExistAppIds"]["AppId"];

+ 9 - 0
vod/src/model/ListAppInfoRequest.cc

@@ -43,6 +43,15 @@ void ListAppInfoRequest::setAccessKeyId(const std::string &accessKeyId) {
   setParameter(std::string("AccessKeyId"), accessKeyId);
 }
 
+std::string ListAppInfoRequest::getResourceGroupId() const {
+  return resourceGroupId_;
+}
+
+void ListAppInfoRequest::setResourceGroupId(const std::string &resourceGroupId) {
+  resourceGroupId_ = resourceGroupId;
+  setParameter(std::string("ResourceGroupId"), resourceGroupId);
+}
+
 int ListAppInfoRequest::getPageSize() const {
   return pageSize_;
 }

+ 2 - 0
vod/src/model/ListAppInfoResult.cc

@@ -59,6 +59,8 @@ void ListAppInfoResult::parse(const std::string &payload)
 			appInfoListObject.modificationTime = valueAppInfoListAppInfo["ModificationTime"].asString();
 		if(!valueAppInfoListAppInfo["RegionId"].isNull())
 			appInfoListObject.regionId = valueAppInfoListAppInfo["RegionId"].asString();
+		if(!valueAppInfoListAppInfo["ResourceGroupId"].isNull())
+			appInfoListObject.resourceGroupId = valueAppInfoListAppInfo["ResourceGroupId"].asString();
 		auto allTagsNode = valueAppInfoListAppInfo["Tags"]["tagsItem"];
 		for (auto valueAppInfoListAppInfoTagstagsItem : allTagsNode)
 		{

+ 36 - 9
vod/src/model/PreloadVodObjectCachesRequest.cc

@@ -34,15 +34,6 @@ void PreloadVodObjectCachesRequest::setObjectPath(const std::string &objectPath)
   setParameter(std::string("ObjectPath"), objectPath);
 }
 
-long PreloadVodObjectCachesRequest::getOwnerId() const {
-  return ownerId_;
-}
-
-void PreloadVodObjectCachesRequest::setOwnerId(long ownerId) {
-  ownerId_ = ownerId;
-  setParameter(std::string("OwnerId"), std::to_string(ownerId));
-}
-
 std::string PreloadVodObjectCachesRequest::getSecurityToken() const {
   return securityToken_;
 }
@@ -52,3 +43,39 @@ void PreloadVodObjectCachesRequest::setSecurityToken(const std::string &security
   setParameter(std::string("SecurityToken"), securityToken);
 }
 
+bool PreloadVodObjectCachesRequest::getL2Preload() const {
+  return l2Preload_;
+}
+
+void PreloadVodObjectCachesRequest::setL2Preload(bool l2Preload) {
+  l2Preload_ = l2Preload;
+  setParameter(std::string("L2Preload"), l2Preload ? "true" : "false");
+}
+
+std::string PreloadVodObjectCachesRequest::getArea() const {
+  return area_;
+}
+
+void PreloadVodObjectCachesRequest::setArea(const std::string &area) {
+  area_ = area;
+  setParameter(std::string("Area"), area);
+}
+
+std::string PreloadVodObjectCachesRequest::getWithHeader() const {
+  return withHeader_;
+}
+
+void PreloadVodObjectCachesRequest::setWithHeader(const std::string &withHeader) {
+  withHeader_ = withHeader;
+  setParameter(std::string("WithHeader"), withHeader);
+}
+
+long PreloadVodObjectCachesRequest::getOwnerId() const {
+  return ownerId_;
+}
+
+void PreloadVodObjectCachesRequest::setOwnerId(long ownerId) {
+  ownerId_ = ownerId;
+  setParameter(std::string("OwnerId"), std::to_string(ownerId));
+}
+