Browse Source

GetDailyPlayRegionStatis

sdk-team 1 year ago
parent
commit
338fe94f31

+ 1 - 1
VERSION

@@ -1 +1 @@
-1.36.2049
+1.36.2050

+ 8 - 0
vod/CMakeLists.txt

@@ -159,6 +159,8 @@ set(vod_public_header_model
 	include/alibabacloud/vod/model/DescribeVodDomainTrafficDataResult.h
 	include/alibabacloud/vod/model/DescribeVodDomainUsageDataRequest.h
 	include/alibabacloud/vod/model/DescribeVodDomainUsageDataResult.h
+	include/alibabacloud/vod/model/DescribeVodEditingUsageDataRequest.h
+	include/alibabacloud/vod/model/DescribeVodEditingUsageDataResult.h
 	include/alibabacloud/vod/model/DescribeVodMediaPlayDataRequest.h
 	include/alibabacloud/vod/model/DescribeVodMediaPlayDataResult.h
 	include/alibabacloud/vod/model/DescribeVodRangeDataByLocateAndIspServiceRequest.h
@@ -203,6 +205,8 @@ set(vod_public_header_model
 	include/alibabacloud/vod/model/GetAuditHistoryResult.h
 	include/alibabacloud/vod/model/GetCategoriesRequest.h
 	include/alibabacloud/vod/model/GetCategoriesResult.h
+	include/alibabacloud/vod/model/GetDailyPlayRegionStatisRequest.h
+	include/alibabacloud/vod/model/GetDailyPlayRegionStatisResult.h
 	include/alibabacloud/vod/model/GetDefaultAITemplateRequest.h
 	include/alibabacloud/vod/model/GetDefaultAITemplateResult.h
 	include/alibabacloud/vod/model/GetDigitalWatermarkExtractResultRequest.h
@@ -518,6 +522,8 @@ set(vod_src
 	src/model/DescribeVodDomainTrafficDataResult.cc
 	src/model/DescribeVodDomainUsageDataRequest.cc
 	src/model/DescribeVodDomainUsageDataResult.cc
+	src/model/DescribeVodEditingUsageDataRequest.cc
+	src/model/DescribeVodEditingUsageDataResult.cc
 	src/model/DescribeVodMediaPlayDataRequest.cc
 	src/model/DescribeVodMediaPlayDataResult.cc
 	src/model/DescribeVodRangeDataByLocateAndIspServiceRequest.cc
@@ -562,6 +568,8 @@ set(vod_src
 	src/model/GetAuditHistoryResult.cc
 	src/model/GetCategoriesRequest.cc
 	src/model/GetCategoriesResult.cc
+	src/model/GetDailyPlayRegionStatisRequest.cc
+	src/model/GetDailyPlayRegionStatisResult.cc
 	src/model/GetDefaultAITemplateRequest.cc
 	src/model/GetDefaultAITemplateResult.cc
 	src/model/GetDigitalWatermarkExtractResultRequest.cc

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

@@ -160,6 +160,8 @@
 #include "model/DescribeVodDomainTrafficDataResult.h"
 #include "model/DescribeVodDomainUsageDataRequest.h"
 #include "model/DescribeVodDomainUsageDataResult.h"
+#include "model/DescribeVodEditingUsageDataRequest.h"
+#include "model/DescribeVodEditingUsageDataResult.h"
 #include "model/DescribeVodMediaPlayDataRequest.h"
 #include "model/DescribeVodMediaPlayDataResult.h"
 #include "model/DescribeVodRangeDataByLocateAndIspServiceRequest.h"
@@ -204,6 +206,8 @@
 #include "model/GetAuditHistoryResult.h"
 #include "model/GetCategoriesRequest.h"
 #include "model/GetCategoriesResult.h"
+#include "model/GetDailyPlayRegionStatisRequest.h"
+#include "model/GetDailyPlayRegionStatisResult.h"
 #include "model/GetDefaultAITemplateRequest.h"
 #include "model/GetDefaultAITemplateResult.h"
 #include "model/GetDigitalWatermarkExtractResultRequest.h"
@@ -594,6 +598,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::DescribeVodDomainUsageDataResult> DescribeVodDomainUsageDataOutcome;
 			typedef std::future<DescribeVodDomainUsageDataOutcome> DescribeVodDomainUsageDataOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::DescribeVodDomainUsageDataRequest&, const DescribeVodDomainUsageDataOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeVodDomainUsageDataAsyncHandler;
+			typedef Outcome<Error, Model::DescribeVodEditingUsageDataResult> DescribeVodEditingUsageDataOutcome;
+			typedef std::future<DescribeVodEditingUsageDataOutcome> DescribeVodEditingUsageDataOutcomeCallable;
+			typedef std::function<void(const VodClient*, const Model::DescribeVodEditingUsageDataRequest&, const DescribeVodEditingUsageDataOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeVodEditingUsageDataAsyncHandler;
 			typedef Outcome<Error, Model::DescribeVodMediaPlayDataResult> DescribeVodMediaPlayDataOutcome;
 			typedef std::future<DescribeVodMediaPlayDataOutcome> DescribeVodMediaPlayDataOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::DescribeVodMediaPlayDataRequest&, const DescribeVodMediaPlayDataOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> DescribeVodMediaPlayDataAsyncHandler;
@@ -660,6 +667,9 @@ namespace AlibabaCloud
 			typedef Outcome<Error, Model::GetCategoriesResult> GetCategoriesOutcome;
 			typedef std::future<GetCategoriesOutcome> GetCategoriesOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::GetCategoriesRequest&, const GetCategoriesOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetCategoriesAsyncHandler;
+			typedef Outcome<Error, Model::GetDailyPlayRegionStatisResult> GetDailyPlayRegionStatisOutcome;
+			typedef std::future<GetDailyPlayRegionStatisOutcome> GetDailyPlayRegionStatisOutcomeCallable;
+			typedef std::function<void(const VodClient*, const Model::GetDailyPlayRegionStatisRequest&, const GetDailyPlayRegionStatisOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetDailyPlayRegionStatisAsyncHandler;
 			typedef Outcome<Error, Model::GetDefaultAITemplateResult> GetDefaultAITemplateOutcome;
 			typedef std::future<GetDefaultAITemplateOutcome> GetDefaultAITemplateOutcomeCallable;
 			typedef std::function<void(const VodClient*, const Model::GetDefaultAITemplateRequest&, const GetDefaultAITemplateOutcome&, const std::shared_ptr<const AsyncCallerContext>&)> GetDefaultAITemplateAsyncHandler;
@@ -1133,6 +1143,9 @@ namespace AlibabaCloud
 			DescribeVodDomainUsageDataOutcome describeVodDomainUsageData(const Model::DescribeVodDomainUsageDataRequest &request)const;
 			void describeVodDomainUsageDataAsync(const Model::DescribeVodDomainUsageDataRequest& request, const DescribeVodDomainUsageDataAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DescribeVodDomainUsageDataOutcomeCallable describeVodDomainUsageDataCallable(const Model::DescribeVodDomainUsageDataRequest& request) const;
+			DescribeVodEditingUsageDataOutcome describeVodEditingUsageData(const Model::DescribeVodEditingUsageDataRequest &request)const;
+			void describeVodEditingUsageDataAsync(const Model::DescribeVodEditingUsageDataRequest& request, const DescribeVodEditingUsageDataAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			DescribeVodEditingUsageDataOutcomeCallable describeVodEditingUsageDataCallable(const Model::DescribeVodEditingUsageDataRequest& request) const;
 			DescribeVodMediaPlayDataOutcome describeVodMediaPlayData(const Model::DescribeVodMediaPlayDataRequest &request)const;
 			void describeVodMediaPlayDataAsync(const Model::DescribeVodMediaPlayDataRequest& request, const DescribeVodMediaPlayDataAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			DescribeVodMediaPlayDataOutcomeCallable describeVodMediaPlayDataCallable(const Model::DescribeVodMediaPlayDataRequest& request) const;
@@ -1199,6 +1212,9 @@ namespace AlibabaCloud
 			GetCategoriesOutcome getCategories(const Model::GetCategoriesRequest &request)const;
 			void getCategoriesAsync(const Model::GetCategoriesRequest& request, const GetCategoriesAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			GetCategoriesOutcomeCallable getCategoriesCallable(const Model::GetCategoriesRequest& request) const;
+			GetDailyPlayRegionStatisOutcome getDailyPlayRegionStatis(const Model::GetDailyPlayRegionStatisRequest &request)const;
+			void getDailyPlayRegionStatisAsync(const Model::GetDailyPlayRegionStatisRequest& request, const GetDailyPlayRegionStatisAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
+			GetDailyPlayRegionStatisOutcomeCallable getDailyPlayRegionStatisCallable(const Model::GetDailyPlayRegionStatisRequest& request) const;
 			GetDefaultAITemplateOutcome getDefaultAITemplate(const Model::GetDefaultAITemplateRequest &request)const;
 			void getDefaultAITemplateAsync(const Model::GetDefaultAITemplateRequest& request, const GetDefaultAITemplateAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context = nullptr) const;
 			GetDefaultAITemplateOutcomeCallable getDefaultAITemplateCallable(const Model::GetDefaultAITemplateRequest& request) const;

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

@@ -28,6 +28,10 @@ namespace Vod {
 namespace Model {
 class ALIBABACLOUD_VOD_EXPORT CreateAppInfoRequest : public RpcServiceRequest {
 public:
+	struct Tag {
+		std::string value;
+		std::string key;
+	};
 	CreateAppInfoRequest();
 	~CreateAppInfoRequest();
 	std::string getDescription() const;
@@ -40,6 +44,8 @@ public:
 	void setResourceGroupId(const std::string &resourceGroupId);
 	std::string getAppName() const;
 	void setAppName(const std::string &appName);
+	Tag getTag() const;
+	void setTag(const Tag &tag);
 
 private:
 	std::string description_;
@@ -47,6 +53,7 @@ private:
 	std::string accessKeyId_;
 	std::string resourceGroupId_;
 	std::string appName_;
+	Tag tag_;
 };
 } // namespace Model
 } // namespace Vod

+ 63 - 0
vod/include/alibabacloud/vod/model/DescribeVodEditingUsageDataRequest.h

@@ -0,0 +1,63 @@
+/*
+ * 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_DESCRIBEVODEDITINGUSAGEDATAREQUEST_H_
+#define ALIBABACLOUD_VOD_MODEL_DESCRIBEVODEDITINGUSAGEDATAREQUEST_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 DescribeVodEditingUsageDataRequest : public RpcServiceRequest {
+public:
+	DescribeVodEditingUsageDataRequest();
+	~DescribeVodEditingUsageDataRequest();
+	std::string getStartTime() const;
+	void setStartTime(const std::string &startTime);
+	std::string getSplitBy() const;
+	void setSplitBy(const std::string &splitBy);
+	std::string getProduct() const;
+	void setProduct(const std::string &product);
+	std::string getEndTime() const;
+	void setEndTime(const std::string &endTime);
+	std::string getSpecification() const;
+	void setSpecification(const std::string &specification);
+	long getOwnerId() const;
+	void setOwnerId(long ownerId);
+	std::string getAppId() const;
+	void setAppId(const std::string &appId);
+	std::string getRegion() const;
+	void setRegion(const std::string &region);
+
+private:
+	std::string startTime_;
+	std::string splitBy_;
+	std::string product_;
+	std::string endTime_;
+	std::string specification_;
+	long ownerId_;
+	std::string appId_;
+	std::string region_;
+};
+} // namespace Model
+} // namespace Vod
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_VOD_MODEL_DESCRIBEVODEDITINGUSAGEDATAREQUEST_H_

+ 62 - 0
vod/include/alibabacloud/vod/model/DescribeVodEditingUsageDataResult.h

@@ -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_VOD_MODEL_DESCRIBEVODEDITINGUSAGEDATARESULT_H_
+#define ALIBABACLOUD_VOD_MODEL_DESCRIBEVODEDITINGUSAGEDATARESULT_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 DescribeVodEditingUsageDataResult : public ServiceResult
+			{
+			public:
+				struct DataModule
+				{
+					std::string region;
+					std::string specification;
+					long duration;
+					std::string timeStamp;
+				};
+
+
+				DescribeVodEditingUsageDataResult();
+				explicit DescribeVodEditingUsageDataResult(const std::string &payload);
+				~DescribeVodEditingUsageDataResult();
+				std::string getEndTime()const;
+				std::string getStartTime()const;
+				std::vector<DataModule> getEditingData()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::string endTime_;
+				std::string startTime_;
+				std::vector<DataModule> editingData_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_DESCRIBEVODEDITINGUSAGEDATARESULT_H_

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

@@ -40,6 +40,8 @@ public:
 	void setOwnerId(long ownerId);
 	std::string getStorageClass() const;
 	void setStorageClass(const std::string &storageClass);
+	std::string getAppId() const;
+	void setAppId(const std::string &appId);
 	std::string getRegion() const;
 	void setRegion(const std::string &region);
 
@@ -49,6 +51,7 @@ private:
 	std::string endTime_;
 	long ownerId_;
 	std::string storageClass_;
+	std::string appId_;
 	std::string region_;
 };
 } // namespace Model

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

@@ -40,6 +40,8 @@ public:
 	void setOwnerId(long ownerId);
 	std::string getStorageClass() const;
 	void setStorageClass(const std::string &storageClass);
+	std::string getAppId() const;
+	void setAppId(const std::string &appId);
 	std::string getRegion() const;
 	void setRegion(const std::string &region);
 
@@ -49,6 +51,7 @@ private:
 	std::string endTime_;
 	long ownerId_;
 	std::string storageClass_;
+	std::string appId_;
 	std::string region_;
 };
 } // namespace Model

+ 45 - 0
vod/include/alibabacloud/vod/model/GetDailyPlayRegionStatisRequest.h

@@ -0,0 +1,45 @@
+/*
+ * 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_GETDAILYPLAYREGIONSTATISREQUEST_H_
+#define ALIBABACLOUD_VOD_MODEL_GETDAILYPLAYREGIONSTATISREQUEST_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 GetDailyPlayRegionStatisRequest : public RpcServiceRequest {
+public:
+	GetDailyPlayRegionStatisRequest();
+	~GetDailyPlayRegionStatisRequest();
+	std::string getDate() const;
+	void setDate(const std::string &date);
+	std::string getMediaRegion() const;
+	void setMediaRegion(const std::string &mediaRegion);
+
+private:
+	std::string date_;
+	std::string mediaRegion_;
+};
+} // namespace Model
+} // namespace Vod
+} // namespace AlibabaCloud
+#endif // !ALIBABACLOUD_VOD_MODEL_GETDAILYPLAYREGIONSTATISREQUEST_H_

+ 60 - 0
vod/include/alibabacloud/vod/model/GetDailyPlayRegionStatisResult.h

@@ -0,0 +1,60 @@
+/*
+ * 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_GETDAILYPLAYREGIONSTATISRESULT_H_
+#define ALIBABACLOUD_VOD_MODEL_GETDAILYPLAYREGIONSTATISRESULT_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 GetDailyPlayRegionStatisResult : public ServiceResult
+			{
+			public:
+				struct DailyPlayRegionStatisFileDO
+				{
+					std::string fileUrl;
+					std::string date;
+				};
+
+
+				GetDailyPlayRegionStatisResult();
+				explicit GetDailyPlayRegionStatisResult(const std::string &payload);
+				~GetDailyPlayRegionStatisResult();
+				std::vector<std::string> getEmptyDates()const;
+				std::vector<DailyPlayRegionStatisFileDO> getDailyPlayRegionStatisList()const;
+				std::vector<std::string> getFailDates()const;
+
+			protected:
+				void parse(const std::string &payload);
+			private:
+				std::vector<std::string> emptyDates_;
+				std::vector<DailyPlayRegionStatisFileDO> dailyPlayRegionStatisList_;
+				std::vector<std::string> failDates_;
+
+			};
+		}
+	}
+}
+#endif // !ALIBABACLOUD_VOD_MODEL_GETDAILYPLAYREGIONSTATISRESULT_H_

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

@@ -38,6 +38,7 @@ namespace AlibabaCloud
 					std::string modifyTime;
 					std::string videoId;
 					std::string description;
+					std::string userData;
 					long size;
 					std::string storageClass;
 					std::string createTime;

+ 72 - 0
vod/src/VodClient.cc

@@ -2535,6 +2535,42 @@ VodClient::DescribeVodDomainUsageDataOutcomeCallable VodClient::describeVodDomai
 	return task->get_future();
 }
 
+VodClient::DescribeVodEditingUsageDataOutcome VodClient::describeVodEditingUsageData(const DescribeVodEditingUsageDataRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return DescribeVodEditingUsageDataOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return DescribeVodEditingUsageDataOutcome(DescribeVodEditingUsageDataResult(outcome.result()));
+	else
+		return DescribeVodEditingUsageDataOutcome(outcome.error());
+}
+
+void VodClient::describeVodEditingUsageDataAsync(const DescribeVodEditingUsageDataRequest& request, const DescribeVodEditingUsageDataAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, describeVodEditingUsageData(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+VodClient::DescribeVodEditingUsageDataOutcomeCallable VodClient::describeVodEditingUsageDataCallable(const DescribeVodEditingUsageDataRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<DescribeVodEditingUsageDataOutcome()>>(
+			[this, request]()
+			{
+			return this->describeVodEditingUsageData(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 VodClient::DescribeVodMediaPlayDataOutcome VodClient::describeVodMediaPlayData(const DescribeVodMediaPlayDataRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();
@@ -3327,6 +3363,42 @@ VodClient::GetCategoriesOutcomeCallable VodClient::getCategoriesCallable(const G
 	return task->get_future();
 }
 
+VodClient::GetDailyPlayRegionStatisOutcome VodClient::getDailyPlayRegionStatis(const GetDailyPlayRegionStatisRequest &request) const
+{
+	auto endpointOutcome = endpointProvider_->getEndpoint();
+	if (!endpointOutcome.isSuccess())
+		return GetDailyPlayRegionStatisOutcome(endpointOutcome.error());
+
+	auto outcome = makeRequest(endpointOutcome.result(), request);
+
+	if (outcome.isSuccess())
+		return GetDailyPlayRegionStatisOutcome(GetDailyPlayRegionStatisResult(outcome.result()));
+	else
+		return GetDailyPlayRegionStatisOutcome(outcome.error());
+}
+
+void VodClient::getDailyPlayRegionStatisAsync(const GetDailyPlayRegionStatisRequest& request, const GetDailyPlayRegionStatisAsyncHandler& handler, const std::shared_ptr<const AsyncCallerContext>& context) const
+{
+	auto fn = [this, request, handler, context]()
+	{
+		handler(this, request, getDailyPlayRegionStatis(request), context);
+	};
+
+	asyncExecute(new Runnable(fn));
+}
+
+VodClient::GetDailyPlayRegionStatisOutcomeCallable VodClient::getDailyPlayRegionStatisCallable(const GetDailyPlayRegionStatisRequest &request) const
+{
+	auto task = std::make_shared<std::packaged_task<GetDailyPlayRegionStatisOutcome()>>(
+			[this, request]()
+			{
+			return this->getDailyPlayRegionStatis(request);
+			});
+
+	asyncExecute(new Runnable([task]() { (*task)(); }));
+	return task->get_future();
+}
+
 VodClient::GetDefaultAITemplateOutcome VodClient::getDefaultAITemplate(const GetDefaultAITemplateRequest &request) const
 {
 	auto endpointOutcome = endpointProvider_->getEndpoint();

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

@@ -70,3 +70,13 @@ void CreateAppInfoRequest::setAppName(const std::string &appName) {
   setParameter(std::string("AppName"), appName);
 }
 
+CreateAppInfoRequest::Tag CreateAppInfoRequest::getTag() const {
+  return tag_;
+}
+
+void CreateAppInfoRequest::setTag(const CreateAppInfoRequest::Tag &tag) {
+  tag_ = tag;
+  setParameter(std::string("Tag") + ".Value", tag.value);
+  setParameter(std::string("Tag") + ".Key", tag.key);
+}
+

+ 99 - 0
vod/src/model/DescribeVodEditingUsageDataRequest.cc

@@ -0,0 +1,99 @@
+/*
+ * 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/DescribeVodEditingUsageDataRequest.h>
+
+using AlibabaCloud::Vod::Model::DescribeVodEditingUsageDataRequest;
+
+DescribeVodEditingUsageDataRequest::DescribeVodEditingUsageDataRequest()
+    : RpcServiceRequest("vod", "2017-03-21", "DescribeVodEditingUsageData") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+DescribeVodEditingUsageDataRequest::~DescribeVodEditingUsageDataRequest() {}
+
+std::string DescribeVodEditingUsageDataRequest::getStartTime() const {
+  return startTime_;
+}
+
+void DescribeVodEditingUsageDataRequest::setStartTime(const std::string &startTime) {
+  startTime_ = startTime;
+  setParameter(std::string("StartTime"), startTime);
+}
+
+std::string DescribeVodEditingUsageDataRequest::getSplitBy() const {
+  return splitBy_;
+}
+
+void DescribeVodEditingUsageDataRequest::setSplitBy(const std::string &splitBy) {
+  splitBy_ = splitBy;
+  setParameter(std::string("SplitBy"), splitBy);
+}
+
+std::string DescribeVodEditingUsageDataRequest::getProduct() const {
+  return product_;
+}
+
+void DescribeVodEditingUsageDataRequest::setProduct(const std::string &product) {
+  product_ = product;
+  setParameter(std::string("Product"), product);
+}
+
+std::string DescribeVodEditingUsageDataRequest::getEndTime() const {
+  return endTime_;
+}
+
+void DescribeVodEditingUsageDataRequest::setEndTime(const std::string &endTime) {
+  endTime_ = endTime;
+  setParameter(std::string("EndTime"), endTime);
+}
+
+std::string DescribeVodEditingUsageDataRequest::getSpecification() const {
+  return specification_;
+}
+
+void DescribeVodEditingUsageDataRequest::setSpecification(const std::string &specification) {
+  specification_ = specification;
+  setParameter(std::string("Specification"), specification);
+}
+
+long DescribeVodEditingUsageDataRequest::getOwnerId() const {
+  return ownerId_;
+}
+
+void DescribeVodEditingUsageDataRequest::setOwnerId(long ownerId) {
+  ownerId_ = ownerId;
+  setParameter(std::string("OwnerId"), std::to_string(ownerId));
+}
+
+std::string DescribeVodEditingUsageDataRequest::getAppId() const {
+  return appId_;
+}
+
+void DescribeVodEditingUsageDataRequest::setAppId(const std::string &appId) {
+  appId_ = appId;
+  setParameter(std::string("AppId"), appId);
+}
+
+std::string DescribeVodEditingUsageDataRequest::getRegion() const {
+  return region_;
+}
+
+void DescribeVodEditingUsageDataRequest::setRegion(const std::string &region) {
+  region_ = region;
+  setParameter(std::string("Region"), region);
+}
+

+ 77 - 0
vod/src/model/DescribeVodEditingUsageDataResult.cc

@@ -0,0 +1,77 @@
+/*
+ * 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/DescribeVodEditingUsageDataResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Vod;
+using namespace AlibabaCloud::Vod::Model;
+
+DescribeVodEditingUsageDataResult::DescribeVodEditingUsageDataResult() :
+	ServiceResult()
+{}
+
+DescribeVodEditingUsageDataResult::DescribeVodEditingUsageDataResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+DescribeVodEditingUsageDataResult::~DescribeVodEditingUsageDataResult()
+{}
+
+void DescribeVodEditingUsageDataResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allEditingDataNode = value["EditingData"]["DataModule"];
+	for (auto valueEditingDataDataModule : allEditingDataNode)
+	{
+		DataModule editingDataObject;
+		if(!valueEditingDataDataModule["Specification"].isNull())
+			editingDataObject.specification = valueEditingDataDataModule["Specification"].asString();
+		if(!valueEditingDataDataModule["Region"].isNull())
+			editingDataObject.region = valueEditingDataDataModule["Region"].asString();
+		if(!valueEditingDataDataModule["TimeStamp"].isNull())
+			editingDataObject.timeStamp = valueEditingDataDataModule["TimeStamp"].asString();
+		if(!valueEditingDataDataModule["Duration"].isNull())
+			editingDataObject.duration = std::stol(valueEditingDataDataModule["Duration"].asString());
+		editingData_.push_back(editingDataObject);
+	}
+	if(!value["StartTime"].isNull())
+		startTime_ = value["StartTime"].asString();
+	if(!value["EndTime"].isNull())
+		endTime_ = value["EndTime"].asString();
+
+}
+
+std::string DescribeVodEditingUsageDataResult::getEndTime()const
+{
+	return endTime_;
+}
+
+std::string DescribeVodEditingUsageDataResult::getStartTime()const
+{
+	return startTime_;
+}
+
+std::vector<DescribeVodEditingUsageDataResult::DataModule> DescribeVodEditingUsageDataResult::getEditingData()const
+{
+	return editingData_;
+}
+

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

@@ -70,6 +70,15 @@ void DescribeVodTieringStorageDataRequest::setStorageClass(const std::string &st
   setParameter(std::string("StorageClass"), storageClass);
 }
 
+std::string DescribeVodTieringStorageDataRequest::getAppId() const {
+  return appId_;
+}
+
+void DescribeVodTieringStorageDataRequest::setAppId(const std::string &appId) {
+  appId_ = appId;
+  setParameter(std::string("AppId"), appId);
+}
+
 std::string DescribeVodTieringStorageDataRequest::getRegion() const {
   return region_;
 }

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

@@ -70,6 +70,15 @@ void DescribeVodTieringStorageRetrievalDataRequest::setStorageClass(const std::s
   setParameter(std::string("StorageClass"), storageClass);
 }
 
+std::string DescribeVodTieringStorageRetrievalDataRequest::getAppId() const {
+  return appId_;
+}
+
+void DescribeVodTieringStorageRetrievalDataRequest::setAppId(const std::string &appId) {
+  appId_ = appId;
+  setParameter(std::string("AppId"), appId);
+}
+
 std::string DescribeVodTieringStorageRetrievalDataRequest::getRegion() const {
   return region_;
 }

+ 45 - 0
vod/src/model/GetDailyPlayRegionStatisRequest.cc

@@ -0,0 +1,45 @@
+/*
+ * 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/GetDailyPlayRegionStatisRequest.h>
+
+using AlibabaCloud::Vod::Model::GetDailyPlayRegionStatisRequest;
+
+GetDailyPlayRegionStatisRequest::GetDailyPlayRegionStatisRequest()
+    : RpcServiceRequest("vod", "2017-03-21", "GetDailyPlayRegionStatis") {
+  setMethod(HttpRequest::Method::Post);
+}
+
+GetDailyPlayRegionStatisRequest::~GetDailyPlayRegionStatisRequest() {}
+
+std::string GetDailyPlayRegionStatisRequest::getDate() const {
+  return date_;
+}
+
+void GetDailyPlayRegionStatisRequest::setDate(const std::string &date) {
+  date_ = date;
+  setParameter(std::string("Date"), date);
+}
+
+std::string GetDailyPlayRegionStatisRequest::getMediaRegion() const {
+  return mediaRegion_;
+}
+
+void GetDailyPlayRegionStatisRequest::setMediaRegion(const std::string &mediaRegion) {
+  mediaRegion_ = mediaRegion;
+  setParameter(std::string("MediaRegion"), mediaRegion);
+}
+

+ 75 - 0
vod/src/model/GetDailyPlayRegionStatisResult.cc

@@ -0,0 +1,75 @@
+/*
+ * 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/GetDailyPlayRegionStatisResult.h>
+#include <json/json.h>
+
+using namespace AlibabaCloud::Vod;
+using namespace AlibabaCloud::Vod::Model;
+
+GetDailyPlayRegionStatisResult::GetDailyPlayRegionStatisResult() :
+	ServiceResult()
+{}
+
+GetDailyPlayRegionStatisResult::GetDailyPlayRegionStatisResult(const std::string &payload) :
+	ServiceResult()
+{
+	parse(payload);
+}
+
+GetDailyPlayRegionStatisResult::~GetDailyPlayRegionStatisResult()
+{}
+
+void GetDailyPlayRegionStatisResult::parse(const std::string &payload)
+{
+	Json::Reader reader;
+	Json::Value value;
+	reader.parse(payload, value);
+	setRequestId(value["RequestId"].asString());
+	auto allDailyPlayRegionStatisListNode = value["DailyPlayRegionStatisList"]["DailyPlayRegionStatisFileDO"];
+	for (auto valueDailyPlayRegionStatisListDailyPlayRegionStatisFileDO : allDailyPlayRegionStatisListNode)
+	{
+		DailyPlayRegionStatisFileDO dailyPlayRegionStatisListObject;
+		if(!valueDailyPlayRegionStatisListDailyPlayRegionStatisFileDO["Date"].isNull())
+			dailyPlayRegionStatisListObject.date = valueDailyPlayRegionStatisListDailyPlayRegionStatisFileDO["Date"].asString();
+		if(!valueDailyPlayRegionStatisListDailyPlayRegionStatisFileDO["FileUrl"].isNull())
+			dailyPlayRegionStatisListObject.fileUrl = valueDailyPlayRegionStatisListDailyPlayRegionStatisFileDO["FileUrl"].asString();
+		dailyPlayRegionStatisList_.push_back(dailyPlayRegionStatisListObject);
+	}
+	auto allFailDates = value["FailDates"]["failDate"];
+	for (const auto &item : allFailDates)
+		failDates_.push_back(item.asString());
+	auto allEmptyDates = value["EmptyDates"]["emptyDate"];
+	for (const auto &item : allEmptyDates)
+		emptyDates_.push_back(item.asString());
+
+}
+
+std::vector<std::string> GetDailyPlayRegionStatisResult::getEmptyDates()const
+{
+	return emptyDates_;
+}
+
+std::vector<GetDailyPlayRegionStatisResult::DailyPlayRegionStatisFileDO> GetDailyPlayRegionStatisResult::getDailyPlayRegionStatisList()const
+{
+	return dailyPlayRegionStatisList_;
+}
+
+std::vector<std::string> GetDailyPlayRegionStatisResult::getFailDates()const
+{
+	return failDates_;
+}
+

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

@@ -81,6 +81,8 @@ void GetVideoListResult::parse(const std::string &payload)
 			videoListObject.restoreStatus = valueVideoListVideo["RestoreStatus"].asString();
 		if(!valueVideoListVideo["RestoreExpiration"].isNull())
 			videoListObject.restoreExpiration = valueVideoListVideo["RestoreExpiration"].asString();
+		if(!valueVideoListVideo["UserData"].isNull())
+			videoListObject.userData = valueVideoListVideo["UserData"].asString();
 		auto allSnapshots = value["Snapshots"]["Snapshot"];
 		for (auto value : allSnapshots)
 			videoListObject.snapshots.push_back(value.asString());